From e8328251af05a003a0f4bcd39723d541e30c8c40 Mon Sep 17 00:00:00 2001 From: Jonas Nick Date: Mon, 20 Jul 2026 19:11:53 +0000 Subject: [PATCH 1/3] udpate nixos 25.11 -> 26.05 --- dev/README.md | 2 +- examples/configuration.nix | 2 +- examples/container/flake.nix | 2 +- examples/flakes/flake.nix | 2 +- flake.lock | 8 ++++---- flake.nix | 2 +- pkgs/pinned.nix | 8 ++++---- test/lib/make-test.nix | 4 ++-- test/tests.py | 1 + 9 files changed, 16 insertions(+), 15 deletions(-) diff --git a/dev/README.md b/dev/README.md index 23ede16..e17e76b 100644 --- a/dev/README.md +++ b/dev/README.md @@ -97,5 +97,5 @@ It's easiest to use an existing service as a template: Most other services use packages that are already included in nixpkgs. ## Switching to a new NixOS release -- Run command `update-flake.sh 25.11` +- Run command `update-flake.sh 26.05` - Treewide: check if any `TODO-EXTERNAL` comments can be resolved diff --git a/examples/configuration.nix b/examples/configuration.nix index c942de9..2728495 100644 --- a/examples/configuration.nix +++ b/examples/configuration.nix @@ -324,7 +324,7 @@ # this value at the release version of the first install of this system. # Before changing this value read the documentation for this option # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). - system.stateVersion = "25.11"; # Did you read the comment? + system.stateVersion = "26.05"; # Did you read the comment? # The nix-bitcoin release version that your config is compatible with. # When upgrading to a backwards-incompatible release, nix-bitcoin will display an diff --git a/examples/container/flake.nix b/examples/container/flake.nix index 137f2d4..64bac2f 100644 --- a/examples/container/flake.nix +++ b/examples/container/flake.nix @@ -12,7 +12,7 @@ inputs = { nix-bitcoin.url = "github:fort-nix/nix-bitcoin/release"; # You can also use a version branch to track a specific NixOS release - # nix-bitcoin.url = "github:fort-nix/nix-bitcoin/nixos-25.11"; + # nix-bitcoin.url = "github:fort-nix/nix-bitcoin/nixos-26.05"; nixpkgs.follows = "nix-bitcoin/nixpkgs"; nixpkgs-unstable.follows = "nix-bitcoin/nixpkgs-unstable"; diff --git a/examples/flakes/flake.nix b/examples/flakes/flake.nix index 33dbb4b..5a63c1d 100644 --- a/examples/flakes/flake.nix +++ b/examples/flakes/flake.nix @@ -10,7 +10,7 @@ inputs.nix-bitcoin.url = "github:fort-nix/nix-bitcoin/release"; # You can also use a version branch to track a specific NixOS release - # inputs.nix-bitcoin.url = "github:fort-nix/nix-bitcoin/nixos-25.11"; + # inputs.nix-bitcoin.url = "github:fort-nix/nix-bitcoin/nixos-26.05"; inputs.nixpkgs.follows = "nix-bitcoin/nixpkgs"; inputs.nixpkgs-unstable.follows = "nix-bitcoin/nixpkgs-unstable"; diff --git a/flake.lock b/flake.lock index 954abe6..6c4c5b2 100644 --- a/flake.lock +++ b/flake.lock @@ -44,16 +44,16 @@ }, "nixpkgs": { "locked": { - "lastModified": 1782847189, - "narHash": "sha256-twXPFqFsrrY5r28Zh7Homgcp2gUMBgQ6WDS98Q/3xFI=", + "lastModified": 1784432872, + "narHash": "sha256-n3gKTBIV4ZA5VQpUakffBe3KGu4+mhPoA34rrqS0GkA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b6018f87da91d19d0ab4cf979885689b469cdd41", + "rev": "fd1462031fdee08f65fd0b4c6b64e22239a77870", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-25.11", + "ref": "nixos-26.05", "repo": "nixpkgs", "type": "github" } diff --git a/flake.nix b/flake.nix index f43ce7e..bcc53b7 100644 --- a/flake.nix +++ b/flake.nix @@ -5,7 +5,7 @@ ''; inputs = { - nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.11"; + nixpkgs.url = "github:NixOS/nixpkgs/nixos-26.05"; nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; nixpkgs-25_05.url = "github:NixOS/nixpkgs/nixos-25.05"; flake-utils.url = "github:numtide/flake-utils"; diff --git a/pkgs/pinned.nix b/pkgs/pinned.nix index f5760f2..5d334c0 100644 --- a/pkgs/pinned.nix +++ b/pkgs/pinned.nix @@ -4,18 +4,18 @@ pkgs: pkgsUnstable: pkgs-25_05: inherit (pkgs) bitcoin bitcoind + btcpayserver charge-lnd + clboss + clightning electrs + elementsd extra-container lightning-pool lndconnect; inherit (pkgsUnstable) bitcoind-knots - btcpayserver - clboss - clightning - elementsd fulcrum lightning-loop lnd; diff --git a/test/lib/make-test.nix b/test/lib/make-test.nix index e710227..fb878b3 100644 --- a/test/lib/make-test.nix +++ b/test/lib/make-test.nix @@ -22,8 +22,8 @@ let test.shellcheckServices.enable = true; }; - testScript = nodes: let - cfg = nodes.nodes.machine; + testScript = { nodes, ... }: let + cfg = nodes.machine; data = { data = cfg.test.data; tests = cfg.tests; diff --git a/test/tests.py b/test/tests.py index 3509f4b..7261f5b 100644 --- a/test/tests.py +++ b/test/tests.py @@ -1,5 +1,6 @@ from collections import OrderedDict import json +import os import re def succeed(*cmds): From 8f7dcb6e2a08ddf57f09645d6ebc08c3b52785af Mon Sep 17 00:00:00 2001 From: Jonas Nick Date: Sat, 8 Aug 2026 06:47:57 +0000 Subject: [PATCH 2/3] containers: fix for NixOS 26.05 --- dev/dev.sh | 1 + examples/container/flake.nix | 3 +++ examples/deploy-container.sh | 2 ++ test/lib/extra-container-workaround.nix | 24 ++++++++++++++++++++++++ test/lib/make-test.nix | 13 ++++++++++++- test/lib/test-lib.nix | 2 +- test/run-tests.sh | 7 ++++++- 7 files changed, 49 insertions(+), 3 deletions(-) create mode 100644 test/lib/extra-container-workaround.nix diff --git a/dev/dev.sh b/dev/dev.sh index 125561c..2e50447 100644 --- a/dev/dev.sh +++ b/dev/dev.sh @@ -82,6 +82,7 @@ read -rd '' src <<'EOF' || : inherit (nix-bitcoin.inputs) nixpkgs; # legacyInstallDirs = true; config = { + imports = [ ../test/lib/extra-container-workaround.nix ]; containers.nb-adhoc = { # bindMounts."/shared" = { hostPath = "/my/hostpath"; isReadOnly = false; }; extra.addressPrefix = "10.200.255"; diff --git a/examples/container/flake.nix b/examples/container/flake.nix index 64bac2f..e20e4b2 100644 --- a/examples/container/flake.nix +++ b/examples/container/flake.nix @@ -31,6 +31,9 @@ # legacyInstallDirs = true; config = { + # See the file for why this is needed and when it can be removed + imports = [ (nix-bitcoin.outPath + "/test/lib/extra-container-workaround.nix") ]; + containers.mynode = { # Always start container along with the container host autoStart = true; diff --git a/examples/deploy-container.sh b/examples/deploy-container.sh index 9ec0bc1..8a9bb9d 100755 --- a/examples/deploy-container.sh +++ b/examples/deploy-container.sh @@ -75,6 +75,8 @@ fi # read -rd '' src < Date: Sat, 8 Aug 2026 06:51:42 +0000 Subject: [PATCH 3/3] run-tests: disable the nixos-search test --- test/run-tests.sh | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/test/run-tests.sh b/test/run-tests.sh index 3df9ca7..39abf81 100755 --- a/test/run-tests.sh +++ b/test/run-tests.sh @@ -333,9 +333,10 @@ all() { examples flake # FIXME: Re-enable when the nixos-search input is usable again. - # It is currently at a rev whose flake-info resolves nixpkgs via - # `builtins.getFlake` instead of NIX_PATH, which breaks our postPatch and - # both runners. See ../dev/known-issues/nixos-search-flake-migration.md. + # flake-info at the currently locked rev supplies nixpkgs to its inner eval + # via `builtins.getFlake` instead of NIX_PATH. This breaks the postPatch in + # ./nixos-search/flake.nix and both runners in ./nixos-search, which pass + # nix-bitcoin's pinned nixpkgs through NIX_PATH. # Run explicitly with `./run-tests.sh nixosSearch`. # nixosSearch }