From 626372954bc1b4d38fc5e4277fb8314cfeea3abe Mon Sep 17 00:00:00 2001 From: pyranota <92104930+pyranota@users.noreply.github.com> Date: Tue, 1 Jul 2025 14:11:30 +0200 Subject: [PATCH] build: add claude-code to nix shell (#6101) Signed-off-by: pyranota --- flake.lock | 16 ++++++++++++++++ flake.nix | 13 +++++++++++-- 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/flake.lock b/flake.lock index 8a6dec28f5..367ec02bf4 100644 --- a/flake.lock +++ b/flake.lock @@ -33,6 +33,21 @@ "type": "indirect" } }, + "nixpkgs-claude": { + "locked": { + "lastModified": 1751271578, + "narHash": "sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU+tt4YY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "3016b4b15d13f3089db8a41ef937b13a9e33a8df", + "type": "github" + }, + "original": { + "id": "nixpkgs", + "ref": "nixos-unstable", + "type": "indirect" + } + }, "nixpkgs_2": { "locked": { "lastModified": 1736320768, @@ -53,6 +68,7 @@ "inputs": { "flake-utils": "flake-utils", "nixpkgs": "nixpkgs", + "nixpkgs-claude": "nixpkgs-claude", "rust-overlay": "rust-overlay" } }, diff --git a/flake.nix b/flake.nix index 8056c201c5..34bad7cef7 100644 --- a/flake.nix +++ b/flake.nix @@ -3,9 +3,11 @@ nixpkgs.url = "nixpkgs/nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; rust-overlay.url = "github:oxalica/rust-overlay"; + # Use separate channel for claude code. It always needs to be latest + nixpkgs-claude.url = "nixpkgs/nixos-unstable"; }; - outputs = { self, nixpkgs, flake-utils, rust-overlay }: + outputs = { self, nixpkgs, nixpkgs-claude, flake-utils, rust-overlay }: flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { @@ -13,6 +15,10 @@ config.allowUnfree = true; overlays = [ (import rust-overlay) ]; }; + claude-code = (import nixpkgs-claude { + inherit system; + config.allowUnfree = true; + }).claude-code; lib = pkgs.lib; stdenv = pkgs.stdenv; rust = pkgs.rust-bin.stable.latest.default.override { @@ -95,7 +101,10 @@ }; devShells.default = pkgs.mkShell { - buildInputs = buildInputs ++ (with pkgs; [ + buildInputs = buildInputs ++ [ + # To update run: `nix flake update nixpkgs-claude` + claude-code + ] ++ (with pkgs; [ # Essentials rust cargo-watch