{ lib, pkgs, runCommand, claude-code }: let version = "2.1.32"; src = pkgs.fetchzip { url = "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-${version}.tgz"; hash = "sha256-oN+Pl/SpMpI4JiU+x73Z9lNYwaz2mJpYnc4ssAG+oAo="; }; # Create a modified source with our package-lock.json srcWithLock = runCommand "claude-code-src-${version}" {} '' cp -r ${src} $out chmod -R +w $out cp ${./package-lock.json} $out/package-lock.json ''; in (claude-code.override {}).overrideAttrs (oldAttrs: { inherit version; src = srcWithLock; npmDeps = pkgs.fetchNpmDeps { src = srcWithLock; hash = "sha256-PhYhhu6hH1D7TwjHTOxw57V1b07xFWw+e38U9TJ6zYM="; }; # Remove the old postPatch since srcWithLock already includes package-lock.json postPatch = ""; })