singularity-forge/flake.nix
Mikael Hugo 6cb6de4fd2 perf: parallelize I/O, add runtime cache, extend nix devenv
- unit-context-composer: resolve artifact keys in parallel (Promise.all)
- unit-runtime: add in-memory cache to avoid repeated disk reads per dispatch
- auto-timers: share 15s idle watchdog tick with context-pressure check
- auto-prompts: 1s TTL budget cache to coalesce repeated loadEffectiveSFPreferences calls
- native-git-bridge: extend nativeHasChanges TTL 10s→30s
- auto-dashboard: remove pulsing dot animation (CPU churn, no UX value)
- flake.nix: add nodePackages.typescript to dev shell

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 10:12:32 +02:00

52 lines
1.3 KiB
Nix

{
description = "Development and build environment for singularity-forge";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.11";
flake-utils.url = "github:numtide/flake-utils";
};
outputs = {
self,
nixpkgs,
flake-utils,
}:
flake-utils.lib.eachDefaultSystem (system: let
pkgs = import nixpkgs {
inherit system;
};
in {
devShells.default = pkgs.mkShell {
packages = with pkgs; [
bash
bun
cargo
clippy
git
nodejs_24
nodePackages.typescript
protobuf
rust-analyzer
rustc
rustfmt
uv
];
shellHook = ''
export SF_SOURCE_DIR="${toString ./.}"
export PATH="$SF_SOURCE_DIR/bin:$PATH"
export RUST_BACKTRACE=1
echo "singularity-forge development shell"
echo " bun : $(command -v bun)"
echo " cargo: $(command -v cargo)"
echo " node : $(command -v node)"
echo " protoc: $(command -v protoc)"
echo " rustc: $(command -v rustc)"
echo ""
echo "Build native addon:"
echo " bun run --filter @singularity-forge/native build:native"
'';
};
});
}