diff --git a/pkgs/applications/editors/jetbrains/default.nix b/pkgs/applications/editors/jetbrains/default.nix index ba84e12d14b3..7848d8ee6d12 100644 --- a/pkgs/applications/editors/jetbrains/default.nix +++ b/pkgs/applications/editors/jetbrains/default.nix @@ -431,8 +431,6 @@ rec { ]; }; - plugins = callPackage ./plugins { } // { - __attrsFailEvaluation = true; - }; + plugins = callPackage ./plugins { }; } diff --git a/pkgs/applications/networking/instant-messengers/pidgin/pidgin-plugins/default.nix b/pkgs/applications/networking/instant-messengers/pidgin/pidgin-plugins/default.nix index 05a4272a053f..a2104beae1e3 100644 --- a/pkgs/applications/networking/instant-messengers/pidgin/pidgin-plugins/default.nix +++ b/pkgs/applications/networking/instant-messengers/pidgin/pidgin-plugins/default.nix @@ -18,12 +18,7 @@ lib.makeScope newScope ( plugins = [ ]; }; - # Prevent `pkgs/top-level/release-attrpaths-superset.nix` from recursing here. - pidginPackages = self // { - pidginPackages = self.pidginPackages // { - __attrsFailEvaluation = true; - }; - }; + pidginPackages = self; pidgin-indicator = callPackage ./pidgin-indicator { }; diff --git a/pkgs/desktops/gnome/extensions/default.nix b/pkgs/desktops/gnome/extensions/default.nix index db47ad5da68a..da2a8b5d4c95 100644 --- a/pkgs/desktops/gnome/extensions/default.nix +++ b/pkgs/desktops/gnome/extensions/default.nix @@ -39,7 +39,6 @@ let lib.trivial.pipe extensions [ (map (extension: lib.nameValuePair extension.extensionUuid extension)) builtins.listToAttrs - (attrs: attrs // { __attrsFailEvaluation = true; }) ]; # Map the list of extensions to an attrset based on the pname as key, which is more human readable than the UUID @@ -80,7 +79,6 @@ rec { # Keep the last three versions in here gnomeExtensions = lib.trivial.pipe (gnome46Extensions // gnome47Extensions // gnome48Extensions) [ - (v: builtins.removeAttrs v [ "__attrsFailEvaluation" ]) # Apply some custom patches for automatically packaged extensions (callPackage ./extensionOverrides.nix { }) # Add all manually packaged extensions diff --git a/pkgs/development/compilers/rust/default.nix b/pkgs/development/compilers/rust/default.nix index a0f195dece63..d933d3dedc18 100644 --- a/pkgs/development/compilers/rust/default.nix +++ b/pkgs/development/compilers/rust/default.nix @@ -89,12 +89,7 @@ in in { # Packages suitable for build-time, e.g. `build.rs`-type stuff. - buildRustPackages = (selectRustPackage pkgsBuildHost).packages.stable // { - # Prevent `pkgs/top-level/release-attrpaths-superset.nix` from recursing more than one level here. - buildRustPackages = self.buildRustPackages // { - __attrsFailEvaluation = true; - }; - }; + buildRustPackages = (selectRustPackage pkgsBuildHost).packages.stable; # Analogous to stdenv rustPlatform = makeRustPlatform self.buildRustPackages; rustc-unwrapped = self.callPackage ./rustc.nix ({ diff --git a/pkgs/development/haskell-modules/default.nix b/pkgs/development/haskell-modules/default.nix index 8d34d6f4b2a8..b6936742d710 100644 --- a/pkgs/development/haskell-modules/default.nix +++ b/pkgs/development/haskell-modules/default.nix @@ -31,12 +31,8 @@ let ghc extensible-self all-cabal-hashes + buildHaskellPackages ; - - # Prevent `pkgs/top-level/release-attrpaths-superset.nix` from recursing here. - buildHaskellPackages = buildHaskellPackages // { - __attrsFailEvaluation = true; - }; }; platformConfigurations = diff --git a/pkgs/development/interpreters/lua-5/default.nix b/pkgs/development/interpreters/lua-5/default.nix index 8e6b68f27a60..3b95b8c2a4b7 100644 --- a/pkgs/development/interpreters/lua-5/default.nix +++ b/pkgs/development/interpreters/lua-5/default.nix @@ -90,16 +90,7 @@ let inherit (luaPackages) requiredLuaModules; }; withPackages = import ./with-packages.nix { inherit buildEnv luaPackages; }; - pkgs = - let - lp = luaPackages; - in - lp - // { - luaPackages = lp.luaPackages // { - __attrsFailEvaluation = true; - }; - }; + pkgs = luaPackages; interpreter = "${self}/bin/${executable}"; inherit executable luaversion; luaOnBuild = luaOnBuildForHost.override { diff --git a/pkgs/development/interpreters/python/python-packages-base.nix b/pkgs/development/interpreters/python/python-packages-base.nix index 66a7c823fecc..67600fe972f5 100644 --- a/pkgs/development/interpreters/python/python-packages-base.nix +++ b/pkgs/development/interpreters/python/python-packages-base.nix @@ -147,8 +147,5 @@ in python = toPythonModule python; # Don't take pythonPackages from "global" pkgs scope to avoid mixing python versions. - # Prevent `pkgs/top-level/release-attrpaths-superset.nix` from recursing more than one level here. - pythonPackages = self // { - __attrsFailEvaluation = true; - }; + pythonPackages = self; } diff --git a/pkgs/os-specific/bsd/freebsd/package-set.nix b/pkgs/os-specific/bsd/freebsd/package-set.nix index 7b861be6bd62..2e551c827f8a 100644 --- a/pkgs/os-specific/bsd/freebsd/package-set.nix +++ b/pkgs/os-specific/bsd/freebsd/package-set.nix @@ -21,9 +21,7 @@ lib.packagesFromDirectoryRecursive { inherit sourceData patchesRoot versionData; # Keep the crawled portion of Nixpkgs finite. - buildFreebsd = lib.dontRecurseIntoAttrs buildFreebsd // { - __attrsFailEvaluation = true; - }; + buildFreebsd = lib.dontRecurseIntoAttrs buildFreebsd; ports = fetchgit { url = "https://git.FreeBSD.org/ports.git"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 26699f4cb880..16f74cee91f8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -170,7 +170,6 @@ with pkgs; system = stdenv.hostPlatform.system; callTest = config: config.test.driver; }; - __attrsFailEvaluation = true; }; ### BUILD SUPPORT @@ -10099,15 +10098,11 @@ with pkgs; rstudioServerWrapper = rstudioWrapper.override { rstudio = rstudio-server; }; - rPackages = - (dontRecurseIntoAttrs ( - callPackage ../development/r-modules { - overrides = (config.rPackageOverrides or (_: { })) pkgs; - } - )) - // { - __attrsFailEvaluation = true; - }; + rPackages = dontRecurseIntoAttrs ( + callPackage ../development/r-modules { + overrides = (config.rPackageOverrides or (_: { })) pkgs; + } + ); ### SERVERS diff --git a/pkgs/top-level/beam-packages.nix b/pkgs/top-level/beam-packages.nix index 9851d9ae487f..79dc9d8077cb 100644 --- a/pkgs/top-level/beam-packages.nix +++ b/pkgs/top-level/beam-packages.nix @@ -74,6 +74,4 @@ in erlang_27 = self.packagesWith self.interpreters.erlang_27; erlang_26 = self.packagesWith self.interpreters.erlang_26; }; - - __attrsFailEvaluation = true; } diff --git a/pkgs/top-level/coq-packages.nix b/pkgs/top-level/coq-packages.nix index d8626077751d..5b14584990a0 100644 --- a/pkgs/top-level/coq-packages.nix +++ b/pkgs/top-level/coq-packages.nix @@ -29,7 +29,6 @@ let { inherit coq lib; coqPackages = self // { - __attrsFailEvaluation = true; recurseForDerivations = false; }; diff --git a/pkgs/top-level/cuda-packages.nix b/pkgs/top-level/cuda-packages.nix index c93e02e98ce9..464912d7092a 100644 --- a/pkgs/top-level/cuda-packages.nix +++ b/pkgs/top-level/cuda-packages.nix @@ -70,7 +70,6 @@ let else pkgs.extend ( final: _: { - __attrsFailEvaluation = true; recurseForDerivations = false; # The CUDA package set will be available as cudaPackages_x_y, so we need only update the aliases for the # minor-versioned and unversioned package sets. diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index 0ed6aa66b79e..5d9740110c82 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -36,11 +36,7 @@ with self; { inherit perl; - perlPackages = self // { - perlPackages = self.perlPackages // { - __attrsFailEvaluation = true; - }; - }; + perlPackages = self; # Check whether a derivation provides a perl module. hasPerlModule = drv: drv ? perlModule; diff --git a/pkgs/top-level/release-attrpaths-superset.nix b/pkgs/top-level/release-attrpaths-superset.nix index e339d15e1554..59a719258875 100644 --- a/pkgs/top-level/release-attrpaths-superset.nix +++ b/pkgs/top-level/release-attrpaths-superset.nix @@ -30,31 +30,16 @@ }: let - # __attrsFailEvaluation is a temporary workaround to get top-level - # eval to succeed (under builtins.tryEval) for the entire - # packageset, without deep invasve changes into individual - # packages. - # - # Now that CI has been added, ensuring that top-level eval will - # not be broken by any new commits, you should not add any new - # occurrences of __attrsFailEvaluation, and should remove them - # wherever you are able to (doing so will likely require deep - # adjustments within packages). Once all of the uses of - # __attrsFailEvaluation are removed, it will be deleted from the - # routine below. In the meantime, - # # The intended semantics are that an attrpath rooted at pkgs is - # part of the (unfiltered) release jobset iff all of the following + # part of the (unfiltered) release jobset iff both of the following # are true: # # 1. The attrpath leads to a value for which lib.isDerivation is true # - # 2. No proper prefix of the attrpath has __attrsFailEvaluation=true - # - # 3. Any proper prefix of the attrpath at which lib.isDerivation + # 2. Any proper prefix of the attrpath at which lib.isDerivation # is true also has __recurseIntoDerivationForReleaseJobs=true. # - # The last condition is unfortunately necessary because there are + # The second condition is unfortunately necessary because there are # Hydra release jobnames which have proper prefixes which are # attrnames of derivations (!). We should probably restructure # the job tree so that this is not the case. @@ -81,8 +66,6 @@ let else if !(lib.isAttrs value) then [ ] - else if (value.__attrsFailEvaluation or false) then - [ ] else lib.pipe value [ (builtins.mapAttrs (