diff --git a/pkgs/by-name/ge/gemini-cli-bin/package.nix b/pkgs/by-name/ge/gemini-cli-bin/package.nix index f3e8edabf114..be2df516208d 100644 --- a/pkgs/by-name/ge/gemini-cli-bin/package.nix +++ b/pkgs/by-name/ge/gemini-cli-bin/package.nix @@ -6,6 +6,7 @@ sysctl, writableTmpDirAsHomeHook, nix-update-script, + ripgrep, }: stdenvNoCC.mkDerivation (finalAttrs: { pname = "gemini-cli-bin"; @@ -20,7 +21,10 @@ stdenvNoCC.mkDerivation (finalAttrs: { strictDeps = true; - buildInputs = [ nodejs ]; + buildInputs = [ + nodejs + ripgrep + ]; installPhase = '' runHook preInstall @@ -37,6 +41,12 @@ stdenvNoCC.mkDerivation (finalAttrs: { --replace-fail "settings.merged.general?.disableAutoUpdate ?? false" "settings.merged.general?.disableAutoUpdate ?? true" \ --replace-fail "settings.merged.general?.disableAutoUpdate" "(settings.merged.general?.disableAutoUpdate ?? true)" + # use `ripgrep` from `nixpkgs`, more dependencies but prevent downloading incompatible binary on NixOS + # this workaround can be removed once the following upstream issue is resolved: + # https://github.com/google-gemini/gemini-cli/issues/11438 + substituteInPlace $out/bin/gemini \ + --replace-fail 'const existingPath = await resolveExistingRgPath();' 'const existingPath = "${lib.getExe ripgrep}";' + runHook postInstall '';