flake.nix: upgrade to nixos-23.11

This also bypasses the Objective-C fork safety during tests.

Change-Id: I92bf9f911e8a1fbd32eae13255f9a9dabde40b21
This commit is contained in:
puck 2024-03-08 19:51:26 +00:00
parent a3eba9d717
commit 80b79d0137
3 changed files with 18 additions and 17 deletions

View file

@ -18,16 +18,16 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1704018918, "lastModified": 1709884566,
"narHash": "sha256-erjg/HrpC9liEfm7oLqb8GXCqsxaFwIIPqCsknW5aFY=", "narHash": "sha256-NSYJg2sfdO/XS3L8XN/59Zhzn0dqWm7XtVnKI2mHq3w=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "2c9c58e98243930f8cb70387934daa4bc8b00373", "rev": "2be119add7b37dc535da2dd4cba68e2cf8d1517e",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixos-23.05-small", "ref": "nixos-23.11-small",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }

View file

@ -1,7 +1,7 @@
{ {
description = "The purely functional package manager"; description = "The purely functional package manager";
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-23.05-small"; inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-23.11-small";
inputs.nixpkgs-regression.url = "github:NixOS/nixpkgs/215d4d0fd80ca5163643b03a33fde804a29cc1e2"; inputs.nixpkgs-regression.url = "github:NixOS/nixpkgs/215d4d0fd80ca5163643b03a33fde804a29cc1e2";
inputs.flake-compat = { url = "github:edolstra/flake-compat"; flake = false; }; inputs.flake-compat = { url = "github:edolstra/flake-compat"; flake = false; };
@ -9,6 +9,7 @@
let let
inherit (nixpkgs) lib; inherit (nixpkgs) lib;
inherit (lib) fileset;
officialRelease = true; officialRelease = true;
@ -47,14 +48,6 @@
}) })
stdenvs); stdenvs);
# 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;
baseFiles = baseFiles =
# .gitignore has already been processed, so any changes in it are irrelevant # .gitignore has already been processed, so any changes in it are irrelevant
# at this point. It is not represented verbatim for test purposes because # at this point. It is not represented verbatim for test purposes because
@ -84,7 +77,7 @@
nixSrc = fileset.toSource { nixSrc = fileset.toSource {
root = ./.; root = ./.;
fileset = fileset.intersect baseFiles (fileset.unions [ fileset = fileset.intersection baseFiles (fileset.unions [
configureFiles configureFiles
topLevelBuildFiles topLevelBuildFiles
./boehmgc-coroutine-sp-fallback.diff ./boehmgc-coroutine-sp-fallback.diff
@ -114,6 +107,8 @@
overlays = [ overlays = [
(overlayFor (p: p.${stdenv})) (overlayFor (p: p.${stdenv}))
]; ];
config.permittedInsecurePackages = [ "nix-2.13.6" ];
}; };
stdenvs = forAllStdenvs (make-pkgs null); stdenvs = forAllStdenvs (make-pkgs null);
native = stdenvs.stdenvPackages; native = stdenvs.stdenvPackages;
@ -284,7 +279,7 @@
src = fileset.toSource { src = fileset.toSource {
root = ./.; root = ./.;
fileset = fileset.intersect baseFiles (fileset.unions [ fileset = fileset.intersection baseFiles (fileset.unions [
configureFiles configureFiles
topLevelBuildFiles topLevelBuildFiles
functionalTestFiles functionalTestFiles
@ -309,7 +304,9 @@
mkdir -p $out mkdir -p $out
''; '';
installCheckPhase = '' installCheckPhase = (optionalString pkgs.stdenv.hostPlatform.isDarwin ''
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
'') + ''
mkdir -p src/nix-channel mkdir -p src/nix-channel
make installcheck -j$NIX_BUILD_CORES -l$NIX_BUILD_CORES make installcheck -j$NIX_BUILD_CORES -l$NIX_BUILD_CORES
''; '';
@ -476,6 +473,10 @@
installCheckFlags = "sysconfdir=$(out)/etc"; installCheckFlags = "sysconfdir=$(out)/etc";
installCheckTarget = "installcheck"; # work around buggy detection in stdenv installCheckTarget = "installcheck"; # work around buggy detection in stdenv
preInstallCheck = lib.optionalString stdenv.hostPlatform.isDarwin ''
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
'';
separateDebugInfo = !currentStdenv.hostPlatform.isStatic; separateDebugInfo = !currentStdenv.hostPlatform.isStatic;
strictDeps = true; strictDeps = true;

View file

@ -58,7 +58,7 @@ in
imports = [ ./remote-builds.nix ]; imports = [ ./remote-builds.nix ];
builders.config = { lib, pkgs, ... }: { builders.config = { lib, pkgs, ... }: {
imports = [ checkOverrideNixVersion ]; imports = [ checkOverrideNixVersion ];
nix.package = lib.mkForce pkgs.nixVersions.nix_2_3; nix.package = lib.mkForce pkgs.nixVersions.nix_2_13;
}; };
}); });