Loading pkgs/tools/package-management/nix-serve/default.nix +11 −2 Original line number Diff line number Diff line Loading @@ -6,11 +6,12 @@ , perl , makeWrapper , nixosTests , fetchpatch }: let rev = "e4675e38ab54942e351c7686e40fabec822120b9"; sha256 = "1wm24p6pkxl1d7hrvf4ph6mwzawvqi22c60z9xzndn5xfyr4v0yr"; rev = "77ffa33d83d2c7c6551c5e420e938e92d72fec24"; sha256 = "sha256-MJRdVO2pt7wjOu5Hk0eVeNbk5bK5+Uo/Gh9XfO4OlMY="; in stdenv.mkDerivation { Loading @@ -23,6 +24,14 @@ stdenv.mkDerivation { inherit rev sha256; }; patches = [ # Part of https://github.com/edolstra/nix-serve/pull/61 (fetchpatch { url = "https://github.com/edolstra/nix-serve/commit/9e434fff4486afeb3cc3f631f6dc56492b204704.patch"; sha256 = "sha256-TxQ6q6UApTKsYIMdr/RyrkKSA3k47stV63bTbxchNTU="; }) ]; nativeBuildInputs = [ makeWrapper ]; dontBuild = true; Loading pkgs/tools/package-management/nix-serve/nix-command.patch 0 → 100644 +40 −0 Original line number Diff line number Diff line From 9e434fff4486afeb3cc3f631f6dc56492b204704 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io> Date: Wed, 31 Jul 2024 23:53:31 +0200 Subject: [PATCH] add extra-experimental-features for nix-command fixes https://github.com/NixOS/nixpkgs/pull/331230 --- nix-serve.psgi | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/nix-serve.psgi b/nix-serve.psgi index 928fa3b..65a8680 100644 --- a/nix-serve.psgi +++ b/nix-serve.psgi @@ -64,7 +64,7 @@ my $app = sub { return [404, ['Content-Type' => 'text/plain'], ["Incorrect NAR hash. Maybe the path has been recreated.\n"]] unless $narHash eq "sha256:$expectedNarHash"; my $fh = new IO::Handle; - open $fh, "-|", "nix", "dump-path", "--", $storePath; + open $fh, "-|", "nix", "--extra-experimental-features", "nix-command", "dump-path", "--", $storePath; return [200, ['Content-Type' => 'text/plain', 'Content-Length' => $narSize], $fh]; } @@ -75,14 +75,14 @@ my $app = sub { return [404, ['Content-Type' => 'text/plain'], ["No such path.\n"]] unless $storePath; my ($deriver, $narHash, $time, $narSize, $refs) = $store->queryPathInfo($storePath, 1) or die; my $fh = new IO::Handle; - open $fh, "-|", "nix", "dump-path", "--", $storePath; + open $fh, "-|", "nix", "--extra-experimental-features", "nix-command", "dump-path", "--", $storePath; return [200, ['Content-Type' => 'text/plain', 'Content-Length' => $narSize], $fh]; } elsif ($path =~ /^\/log\/([0-9a-z]+-[0-9a-zA-Z\+\-\.\_\?\=]+)/) { my $storePath = "$Nix::Config::storeDir/$1"; my $fh = new IO::Handle; - open $fh, "-|", "nix", "log", $storePath; + open $fh, "-|", "nix", "--extra-experimental-features", "nix-command", "log", $storePath; return [200, ['Content-Type' => 'text/plain' ], $fh]; } pkgs/top-level/all-packages.nix +1 −3 Original line number Diff line number Diff line Loading @@ -38002,9 +38002,7 @@ with pkgs; nixpkgs-review = callPackage ../tools/package-management/nixpkgs-review { }; nix-serve = callPackage ../tools/package-management/nix-serve { nix = nixVersions.nix_2_18; }; nix-serve = callPackage ../tools/package-management/nix-serve { }; nix-serve-ng = haskell.lib.compose.justStaticExecutables haskellPackages.nix-serve-ng; Loading
pkgs/tools/package-management/nix-serve/default.nix +11 −2 Original line number Diff line number Diff line Loading @@ -6,11 +6,12 @@ , perl , makeWrapper , nixosTests , fetchpatch }: let rev = "e4675e38ab54942e351c7686e40fabec822120b9"; sha256 = "1wm24p6pkxl1d7hrvf4ph6mwzawvqi22c60z9xzndn5xfyr4v0yr"; rev = "77ffa33d83d2c7c6551c5e420e938e92d72fec24"; sha256 = "sha256-MJRdVO2pt7wjOu5Hk0eVeNbk5bK5+Uo/Gh9XfO4OlMY="; in stdenv.mkDerivation { Loading @@ -23,6 +24,14 @@ stdenv.mkDerivation { inherit rev sha256; }; patches = [ # Part of https://github.com/edolstra/nix-serve/pull/61 (fetchpatch { url = "https://github.com/edolstra/nix-serve/commit/9e434fff4486afeb3cc3f631f6dc56492b204704.patch"; sha256 = "sha256-TxQ6q6UApTKsYIMdr/RyrkKSA3k47stV63bTbxchNTU="; }) ]; nativeBuildInputs = [ makeWrapper ]; dontBuild = true; Loading
pkgs/tools/package-management/nix-serve/nix-command.patch 0 → 100644 +40 −0 Original line number Diff line number Diff line From 9e434fff4486afeb3cc3f631f6dc56492b204704 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io> Date: Wed, 31 Jul 2024 23:53:31 +0200 Subject: [PATCH] add extra-experimental-features for nix-command fixes https://github.com/NixOS/nixpkgs/pull/331230 --- nix-serve.psgi | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/nix-serve.psgi b/nix-serve.psgi index 928fa3b..65a8680 100644 --- a/nix-serve.psgi +++ b/nix-serve.psgi @@ -64,7 +64,7 @@ my $app = sub { return [404, ['Content-Type' => 'text/plain'], ["Incorrect NAR hash. Maybe the path has been recreated.\n"]] unless $narHash eq "sha256:$expectedNarHash"; my $fh = new IO::Handle; - open $fh, "-|", "nix", "dump-path", "--", $storePath; + open $fh, "-|", "nix", "--extra-experimental-features", "nix-command", "dump-path", "--", $storePath; return [200, ['Content-Type' => 'text/plain', 'Content-Length' => $narSize], $fh]; } @@ -75,14 +75,14 @@ my $app = sub { return [404, ['Content-Type' => 'text/plain'], ["No such path.\n"]] unless $storePath; my ($deriver, $narHash, $time, $narSize, $refs) = $store->queryPathInfo($storePath, 1) or die; my $fh = new IO::Handle; - open $fh, "-|", "nix", "dump-path", "--", $storePath; + open $fh, "-|", "nix", "--extra-experimental-features", "nix-command", "dump-path", "--", $storePath; return [200, ['Content-Type' => 'text/plain', 'Content-Length' => $narSize], $fh]; } elsif ($path =~ /^\/log\/([0-9a-z]+-[0-9a-zA-Z\+\-\.\_\?\=]+)/) { my $storePath = "$Nix::Config::storeDir/$1"; my $fh = new IO::Handle; - open $fh, "-|", "nix", "log", $storePath; + open $fh, "-|", "nix", "--extra-experimental-features", "nix-command", "log", $storePath; return [200, ['Content-Type' => 'text/plain' ], $fh]; }
pkgs/top-level/all-packages.nix +1 −3 Original line number Diff line number Diff line Loading @@ -38002,9 +38002,7 @@ with pkgs; nixpkgs-review = callPackage ../tools/package-management/nixpkgs-review { }; nix-serve = callPackage ../tools/package-management/nix-serve { nix = nixVersions.nix_2_18; }; nix-serve = callPackage ../tools/package-management/nix-serve { }; nix-serve-ng = haskell.lib.compose.justStaticExecutables haskellPackages.nix-serve-ng;