diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..7ab2afc --- /dev/null +++ b/flake.lock @@ -0,0 +1,50 @@ +{ + "nodes": { + "nix-devenv": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "dir": "shells/typescript", + "lastModified": 1779661353, + "narHash": "sha256-w+690PS7JkPUvCCdW45H/bBhPWaTiSUUJVUvBFLhiq8=", + "owner": "JacobPEvans", + "repo": "nix-devenv", + "rev": "c39a025e3924c47f701ad673456912020807f8b4", + "type": "github" + }, + "original": { + "dir": "shells/typescript", + "owner": "JacobPEvans", + "repo": "nix-devenv", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1779495359, + "narHash": "sha256-KZ/9A3gvlKboDm2Kbv4A6KnfA9wMSfebyoEU91HeBn8=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "2b76bb8a3c79707f0d0903e486da6d9851654c3c", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixpkgs-25.11-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "nix-devenv": "nix-devenv", + "nixpkgs": "nixpkgs" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix index 8b4287b..27881e0 100644 --- a/flake.nix +++ b/flake.nix @@ -1,9 +1,19 @@ { - description = "Dev shell for dryvist Cribl pack template — delegates to nix-devenv's typescript shell."; + description = "Dev shell for dryvist Cribl pack template — delegates to nix-devenv's typescript subflake."; + # Pin to the typescript SUBFLAKE (?dir=shells/typescript), not the root + # nix-devenv flake. The root flake imports cachix/devenv to support its + # Python/AI shells (ai-dev, orchestrator, mlx-server), which drags in a + # huge transitive tree (cachix x3, gitignore x5, nixpkgs x5, etc.). The + # typescript subflake has exactly one input — nixpkgs — and the lock file + # stays tiny. The `follows` declaration ensures even that one input shares + # our root nixpkgs rather than pulling its own copy. inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-25.11-darwin"; - nix-devenv.url = "github:JacobPEvans/nix-devenv"; + nix-devenv = { + url = "github:JacobPEvans/nix-devenv?dir=shells/typescript"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; outputs = @@ -22,8 +32,9 @@ forAllSystems = nixpkgs.lib.genAttrs systems; in { + # The subflake exposes its sole shell as `default`. devShells = forAllSystems (system: { - default = nix-devenv.devShells.${system}.typescript; + default = nix-devenv.devShells.${system}.default; }); }; }