diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..6408e27 --- /dev/null +++ b/flake.nix @@ -0,0 +1,39 @@ +{ + description = "claudebox - sandboxed Claude Code"; + + inputs = { + nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; + nix-index-database = { + url = "github:nix-community/nix-index-database"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + }; + + outputs = { self, nixpkgs, nix-index-database, ... }: + let + system = "x86_64-linux"; + pkgs = nixpkgs.legacyPackages.${system}; + comma-with-db = nix-index-database.packages.${system}.comma-with-db; + in { + packages.${system} = { + claudebox = pkgs.writeShellApplication { + name = "claudebox"; + runtimeInputs = [ + pkgs.bubblewrap + pkgs.coreutils + pkgs.git + pkgs.curl + pkgs.jq + pkgs.ripgrep + pkgs.fd + pkgs.nix + comma-with-db + pkgs.bash + pkgs.nodejs + ]; + text = builtins.readFile ./claudebox.sh; + }; + default = self.packages.${system}.claudebox; + }; + }; +}