From d6d7d2cb4617c571e1ee7c152818f3b7a07a5f81 Mon Sep 17 00:00:00 2001 From: John Ericson Date: Thu, 29 Feb 2024 14:39:29 -0500 Subject: [PATCH] Revert "Merge pull request #9546 from NixOS/nixos-23.11" This reverts commit 587c7dcb2bc4e504159f527c7e776ede231bd0db, reversing changes made to 864fc85fc88ff092725ba99907611b2b8d2205fb. --- Makefile | 1 - flake.lock | 8 ++++---- flake.nix | 26 +++++++++++++++----------- package.nix | 2 +- src/libstore/local-store.cc | 2 +- tests/functional/git-hashing/common.sh | 2 +- tests/functional/impure-env.sh | 2 +- 7 files changed, 23 insertions(+), 20 deletions(-) diff --git a/Makefile b/Makefile index af00e58b2..a33614d26 100644 --- a/Makefile +++ b/Makefile @@ -69,7 +69,6 @@ ifeq ($(OPTIMIZE), 1) GLOBAL_LDFLAGS += $(CXXLTO) else GLOBAL_CXXFLAGS += -O0 -U_FORTIFY_SOURCE - unexport NIX_HARDENING_ENABLE endif include mk/platform.mk diff --git a/flake.lock b/flake.lock index bb2e400c0..f0efb4036 100644 --- a/flake.lock +++ b/flake.lock @@ -34,16 +34,16 @@ }, "nixpkgs": { "locked": { - "lastModified": 1709083642, - "narHash": "sha256-7kkJQd4rZ+vFrzWu8sTRtta5D1kBG0LSRYAfhtmMlSo=", + "lastModified": 1705033721, + "narHash": "sha256-K5eJHmL1/kev6WuqyqqbS1cdNnSidIZ3jeqJ7GbrYnQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b550fe4b4776908ac2a861124307045f8e717c8e", + "rev": "a1982c92d8980a0114372973cbdfe0a307f1bdea", "type": "github" }, "original": { "owner": "NixOS", - "ref": "release-23.11", + "ref": "nixos-23.05-small", "repo": "nixpkgs", "type": "github" } diff --git a/flake.nix b/flake.nix index 42aaace67..0bc70768e 100644 --- a/flake.nix +++ b/flake.nix @@ -1,9 +1,7 @@ { description = "The purely functional package manager"; - # TODO switch to nixos-23.11-small - # https://nixpk.gs/pr-tracker.html?pr=291954 - inputs.nixpkgs.url = "github:NixOS/nixpkgs/release-23.11"; + inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-23.05-small"; inputs.nixpkgs-regression.url = "github:NixOS/nixpkgs/215d4d0fd80ca5163643b03a33fde804a29cc1e2"; inputs.flake-compat = { url = "github:edolstra/flake-compat"; flake = false; }; inputs.libgit2 = { url = "github:libgit2/libgit2"; flake = false; }; @@ -12,10 +10,20 @@ let inherit (nixpkgs) lib; - inherit (lib) fileset; + + # Experimental fileset library: https://github.com/NixOS/nixpkgs/pull/222981 + # Not an "idiomatic" flake input because: + # - Propagation to dependent locks: https://github.com/NixOS/nix/issues/7730 + # - Subflake would download redundant and huge parent flake + # - No git tree hash support: https://github.com/NixOS/nix/issues/6044 + inherit (import (builtins.fetchTarball { url = "https://github.com/NixOS/nix/archive/1bdcd7fc8a6a40b2e805bad759b36e64e911036b.tar.gz"; sha256 = "sha256:14ljlpdsp4x7h1fkhbmc4bd3vsqnx8zdql4h3037wh09ad6a0893"; })) + fileset; officialRelease = false; + # Set to true to build the release notes for the next release. + buildUnreleasedNotes = false; + version = lib.fileContents ./.version + versionSuffix; versionSuffix = if officialRelease @@ -396,11 +404,8 @@ # Make bash completion work. XDG_DATA_DIRS+=:$out/share ''; - nativeBuildInputs = attrs.nativeBuildInputs or [] - # TODO: Remove the darwin check once - # https://github.com/NixOS/nixpkgs/pull/291814 is available - ++ lib.optional (stdenv.cc.isClang && !stdenv.buildPlatform.isDarwin) pkgs.buildPackages.bear + ++ lib.optional stdenv.cc.isClang pkgs.buildPackages.bear ++ lib.optional (stdenv.cc.isClang && stdenv.hostPlatform == stdenv.buildPlatform) pkgs.buildPackages.clang-tools; }); in @@ -412,9 +417,8 @@ (forAllStdenvs (stdenvName: makeShell pkgs pkgs.${stdenvName})); in (makeShells "native" nixpkgsFor.${system}.native) // - (lib.optionalAttrs (!nixpkgsFor.${system}.native.stdenv.isDarwin) - (makeShells "static" nixpkgsFor.${system}.static)) // - (lib.genAttrs shellCrossSystems (crossSystem: let pkgs = nixpkgsFor.${system}.cross.${crossSystem}; in makeShell pkgs pkgs.stdenv)) // + (makeShells "static" nixpkgsFor.${system}.static) // + (lib.genAttrs shellCrossSystems (crossSystem: let pkgs = nixpkgsFor.${system}.cross.${crossSystem}; in makeShell pkgs pkgs.stdenv)) // { default = self.devShells.${system}.native-stdenvPackages; } diff --git a/package.nix b/package.nix index 20796a386..1f895e301 100644 --- a/package.nix +++ b/package.nix @@ -154,7 +154,7 @@ in { in fileset.toSource { root = ./.; - fileset = fileset.intersection baseFiles (fileset.unions ([ + fileset = fileset.intersect baseFiles (fileset.unions ([ # For configure ./.version ./configure.ac diff --git a/src/libstore/local-store.cc b/src/libstore/local-store.cc index a7c34ab4a..0d9faa7c6 100644 --- a/src/libstore/local-store.cc +++ b/src/libstore/local-store.cc @@ -1208,7 +1208,7 @@ StorePath LocalStore::addToStoreFromDump( Path tempDir; AutoCloseFD tempDirFd; - bool methodsMatch = ContentAddressMethod(FileIngestionMethod(dumpMethod)) == hashMethod; + bool methodsMatch = (FileIngestionMethod) dumpMethod == hashMethod; /* If the methods don't match, our streaming hash of the dump is the wrong sort, and we need to rehash. */ diff --git a/tests/functional/git-hashing/common.sh b/tests/functional/git-hashing/common.sh index 572cea438..5de96e74f 100644 --- a/tests/functional/git-hashing/common.sh +++ b/tests/functional/git-hashing/common.sh @@ -4,7 +4,7 @@ clearStore clearCache # Need backend to support git-hashing too -requireDaemonNewerThan "2.19" +requireDaemonNewerThan "2.18.0pre20230908" enableFeatures "git-hashing" diff --git a/tests/functional/impure-env.sh b/tests/functional/impure-env.sh index cfea4cae9..d9e4a34a2 100644 --- a/tests/functional/impure-env.sh +++ b/tests/functional/impure-env.sh @@ -1,7 +1,7 @@ source common.sh # Needs the config option 'impure-env' to work -requireDaemonNewerThan "2.19.0" +requireDaemonNewerThan "2.18.0pre20230816" enableFeatures "configurable-impure-env" restartDaemon