Commit Graph
2216 Commits
Author SHA1 Message Date
Jonas Nick 37931e5288 Merge fort-nix/nix-bitcoin#848: lnd: don't pass the admin macaroon in curl argv
df184b6e06 lnd: don't pass the admin macaroon in `curl` argv (Jonas Nick)

Pull request description:

Top commit has no ACKs.

Tree-SHA512: d18fa7176c59f33a38222a2d3d44320769ac83e091104594a9572e44ce38205d341767ea598da1b5500208c1e9f6645ed5c3b9390438d95912e44d1c5f3a4752
2026-08-13 10:44:26 +00:00
Jonas Nick 0d86dcd7da Merge fort-nix/nix-bitcoin#847: update nixpkgs
f51460749a ci: disable the nixos-search test (Jonas Nick)
3b798f5ebf test: increase VM memory to 4 GiB (Jonas Nick)
17f0d98c22 update nixpkgs (Jonas Nick)

Pull request description:

Top commit has no ACKs.

Tree-SHA512: 0e40353d9d7937dd7a80c05416360c30ada7ee231d6263883072d60a707443e765d35f6a393e718ed1ef66f2e2cdbd1deadd6cd720dccb5c5e18711159cda38a
2026-08-13 10:43:37 +00:00
Jonas Nick b579fcc371 Merge fort-nix/nix-bitcoin#846: netns-isolation: fix netns-exec being executable by all normal users
34a18f92ee netns-isolation: fix netns-exec being executable by all normal users (Jonas Nick)

Pull request description:

Top commit has no ACKs.

Tree-SHA512: 3aa359bb61967b76299918b893b85f5d92909029237cba892b367f94c82643268dceaf2928157b47d4973a8af81e5e9ef29651bc45db0e3b149966b16c41bc8b
2026-08-12 18:26:21 +00:00
Jonas Nick f51460749a ci: disable the nixos-search test 2026-08-12 18:23:10 +00:00
Jonas Nick 3b798f5ebf test: increase VM memory to 4 GiB 2026-08-12 18:22:32 +00:00
Jonas Nick df184b6e06 lnd: don't pass the admin macaroon in curl argv
`lnd-create-macaroons` interpolated the hex-encoded admin macaroon into
`curl`'s argv, where any local user could read it from world-readable
`/proc/<pid>/cmdline`. The unit's `ProtectProc=invisible` doesn't apply,
because `nbLib.rootScript`'s `+` prefix disables sandboxing for the
process. Pass the header on a file descriptor instead, so the credential
never enters any argv (`printf` is a bash builtin); the request sent to
lnd is unchanged. Only configurations with a non-empty
`services.lnd.macaroons` were affected, which `services.charge-lnd` and
`services.btcpayserver` with `lightningBackend = "lnd"` set automatically.
2026-08-12 18:02:07 +00:00
Jonas Nick 138af7f592 Merge fort-nix/nix-bitcoin#844: NixOS 25.11 -> 26.05
2feb7934ac run-tests: disable the nixos-search test (Jonas Nick)
8f7dcb6e2a containers: fix for NixOS 26.05 (Jonas Nick)
e8328251af udpate nixos 25.11 -> 26.05 (Jonas Nick)

Pull request description:

Top commit has no ACKs.

Tree-SHA512: 78d3f3ba4dc43a71c5e30b9b663a51ba7ba11c880bf9113a6cb20d22b1df5a8227c8a29a6be23f7bbee2be801c5b81432bc80cd957b4758196e01c3b68ed6707
2026-08-11 09:42:34 +00:00
Jonas Nick 17f0d98c22 update nixpkgs
bitcoin: 31.0 -> 31.1
bitcoind: 31.0 -> 31.1
btcpayserver: 2.3.4 -> 2.4.2
clboss: 0.16.0 -> 0.16.1
2026-08-11 09:41:31 +00:00
Jonas Nick 34a18f92ee netns-isolation: fix netns-exec being executable by all normal users
The `netns-exec` wrapper was created with `group = ""`, which makes the
`security.wrappers` activation run `chown ${allowedUser}:`. GNU chown
resolves the trailing colon to the owner's login group, and because the
operator is defined with `isNormalUser = true`, that group is the shared
group `users`. Together with mode 550, this made the wrapper executable
by every normal user on the host instead of only by `allowedUser`.

The wrapper carries `cap_sys_admin=ep` and the NixOS security wrapper
performs no owner check, so any normal user could enter `nb-joinmarket`,
the only netns that `netns-exec` permits. This exposes joinmarketd's
unauthenticated control port on 127.0.0.1 inside that netns and allows
sending packets from the joinmarket netns address. This can only ever become a
problem if there's a second, normal user on the host.

Use mode 500 so that only `allowedUser` can execute the wrapper. Also
set the group to `root`, so that `users` doesn't silently become an
authorized group again if the mode is ever loosened.

The netns-isolation test asserted this property with
`runuser -u clightning -- netns-exec nb-bitcoind ip a`, which fails
regardless of the file mode, because `clightning` is a system user with
its own group and `nb-bitcoind` is not in netns-exec's allowlist.
Replace it with a check that a normal user is denied by the exec
permissions, and assert the reason for each failure instead of only the
exit status.
2026-08-09 19:40:39 +00:00
Jonas Nick 2feb7934ac run-tests: disable the nixos-search test 2026-08-08 06:54:06 +00:00
Jonas Nick 8f7dcb6e2a containers: fix for NixOS 26.05 2026-08-08 06:54:06 +00:00
Jonas Nick e8328251af udpate nixos 25.11 -> 26.05 2026-08-08 06:54:06 +00:00
Jonas Nick 360e30fee5 Merge fort-nix/nix-bitcoin#843: update nixpkgs
5f286763b0 update nixpkgs (Jonas Nick)

Pull request description:

Top commit has no ACKs.

Tree-SHA512: 7bbe7d73ea890c4cd315e1158c0e4e75095a0c16d563f463a892445313c07b547353be957d7899396d7ecc3681f1bbddc720cf62c34668b6b4f3b914f52bfc2f
2026-07-27 18:44:28 +00:00
Jonas Nick 5f286763b0 update nixpkgs
bitcoind-knots: 29.3.knots20260210 -> 29.3.knots20260508
fulcrum: 1.12.0.1 -> 2.1.1
lightning-loop: 0.33.0-beta -> 0.33.2-beta
lnd: 0.20.1-beta -> 0.21.1-beta
2026-07-21 07:18:07 +00:00
Jonas Nick 1496f84247 Merge fort-nix/nix-bitcoin#841: update nixpkgs
d0bd5b2874 update nixpkgs (Jonas Nick)

Pull request description:

Top commit has no ACKs.

Tree-SHA512: f304e064caaf2ba4128fc699bcfa07670ff5f16663f408458f142ae641c7c7606c4fa7b475d884370c4b07bde55d4d4261165c41ee93cfad4de32ef9f7c8d48c
2026-05-20 05:12:02 +00:00
Jonas Nick d0bd5b2874 update nixpkgs 2026-05-18 18:50:29 +00:00
Jonas Nick 407796c767 Merge fort-nix/nix-bitcoin#840: update nixpkgs
955b7d0718 update nbxplorer (Jonas Nick)
f9a0e469d5 update nixpkgs (Jonas Nick)
4c22a3c594 update nixpkgs (Jonas Nick)

Pull request description:

Top commit has no ACKs.

Tree-SHA512: a857687e5c667f29b66e2bcdbd244722ad3cc7e433b18071153ae958006b7646b261fbc0b9331ac8b92f9a9d22562a0705a33a7444f9ffd2ccbc4e9d65e8494f
2026-05-12 16:34:57 +00:00
Jonas Nick 955b7d0718 update nbxplorer
nbxplorer: 2.5.26 -> 2.6.7

Fixes the nbxplorer test failure flagged in the previous commit
(incompatibility with bitcoin 31).
2026-05-11 08:15:55 +00:00
Jonas Nick f9a0e469d5 update nixpkgs
bitcoin: 30.2 -> 31.0
bitcoind: 30.2 -> 31.0
clboss: 0.15.1 -> 0.16.0
clightning: 25.12.1 -> 26.04.1
elementsd: 23.3.2 -> 23.3.3
lightning-loop: 0.31.5-beta -> 0.33.0-beta

lightning-loop 0.31.7+ blocks until lnd's chain notifier is ready
(lightninglabs/loop@bde49d7a), so the workaround sleep added in the
previous commit is no longer needed for lightning-loop. The
lightning-pool workaround stays — pool has no equivalent fix and
isn't actively maintained.

Note: nbxplorer test fails (presumed incompatibility with bitcoin 31).
2026-05-11 08:15:49 +00:00
Jonas Nick 4c22a3c594 update nixpkgs
bitcoin: 30.0 -> 30.2
bitcoind: 30.0 -> 30.2
bitcoind-knots: 29.2.knots20251110 -> 29.3.knots20260210
btcpayserver: 2.2.1 -> 2.3.4
clightning: 25.09.2 -> 25.12.1
elementsd: 23.2.4 -> 23.3.2
lnd: 0.19.3-beta -> 0.20.1-beta

lnd 0.20 makes its chain notifier subsystem ready later in startup
than its RPC server. lightning-loop and lightning-pool both subscribe
to chain notifications right after dialing lnd, which fails before
the notifier is up and crashes the daemon. Add a 5s ExecStartPre
sleep to both services as a temporary workaround.
2026-05-11 08:14:22 +00:00
Jonas Nick c4891858da Merge fort-nix/nix-bitcoin#830: rtl: 0.15.7 -> 0.15.8
d382a84157 rtl: 0.15.7 -> 0.15.8 (Erik Arvstedt)

Pull request description:

ACKs for top commit:
  jonasnick:
    ACK d382a84157

Tree-SHA512: 592efda0b92dc66e3c31c4c1a7e4f2fd98ab4d40f745be6714702e22b08a8b1c7ba51884a31ad04fbbf03be083f8a70164251d47303df9a5e8e00be96feeaf6b
2026-02-12 06:39:46 +00:00
Erik Arvstedt d382a84157 rtl: 0.15.7 -> 0.15.8 2026-02-10 11:54:42 +01:00
Jonas Nick c28fb75345 Merge fort-nix/nix-bitcoin#829: run-vm.sh: fix SSH auth error due to agent keys
f5b2e5eb9f run-vm.sh: fix SSH auth error due to agent keys (Erik Arvstedt)

Pull request description:

ACKs for top commit:
  jonasnick:
    ACK f5b2e5eb9f

Tree-SHA512: 467cc0e574a2be14f0d27cbd75d55a4ab0994b7fc00f6cccf112bf073aa20d7963f829d29b9b14af3d13130a8c5986d54ec6974f73ad75589ec6c7605b32d721
2026-02-09 15:04:00 +00:00
Jonas Nick e8545162ba Merge fort-nix/nix-bitcoin#828: rtl: 0.15.6 -> 0.15.7
74d3f3a58d rtl: 0.15.6 -> 0.15.7 (Erik Arvstedt)

Pull request description:

ACKs for top commit:
  jonasnick:
    ACK 74d3f3a58d

Tree-SHA512: 185aed45b3fdd33da87ad492b6c7b2b5f3639a1e5850f3809513c206af622a746f465daeec34d8418b749432494c4d3b43b0dc81276c938c2066f3b234e4d8f5
2026-02-09 14:21:14 +00:00
Erik Arvstedt f5b2e5eb9f run-vm.sh: fix SSH auth error due to agent keys
Even when an identity file (i.e. a private key) is specified, SSH
tries all keys loaded by the SSH agent first for authentication
(if an agent is running).

When the agent returns many keys this can lead to a "Too Many Failures"
auth error, because none of the agent keys are accepted by the VM SSH
server.

Fix this by only using the provided key.
2026-02-06 20:07:28 +01:00
Erik Arvstedt 74d3f3a58d rtl: 0.15.6 -> 0.15.7 2026-02-06 15:11:14 +01:00
Jonas Nick 5b532698ce Merge fort-nix/nix-bitcoin#826: update nixpkgs
d7e27c44c9 update nixpkgs (Jonas Nick)

Pull request description:

ACKs for top commit:
  erikarvstedt:
    ACK d7e27c44c9

Tree-SHA512: d9825e26137713d41c917b1dcfa3a28f5c1bc589a4866ce44aa576aab88d2c8868ed96f94a40af64b9914422320c38d3c7312596b77cb19c711f423018b61dc5
2026-01-06 17:39:59 +00:00
Jonas Nick d7e27c44c9 update nixpkgs 2026-01-05 08:12:04 +00:00
Jonas Nick 9e12c06fd5 Merge fort-nix/nix-bitcoin#824: Update to NixOS 25.11
72e220d998 containers: use native systemd FUSE support (Erik Arvstedt)
53104f55f9 btcpayserver: update postgresql setup to NixOS 25.11 (Erik Arvstedt)
7b215e6ca1 extra-container: 0.13 -> 0.14 (Erik Arvstedt)
3b9406a4d2 joinmarket: fix for NixOS 25.11 (Erik Arvstedt)
4ba311c425 trezor: fix for NixOS 25.11 (Erik Arvstedt)
9eca5294bb pyln-proto: fix for NixOS 25.11 (Erik Arvstedt)
974f29b516 python-packages: minor fixes for NixOS 25.11 (Erik Arvstedt)
54651163ba treewide: fix eval warnings for NixOS 25.11 (Erik Arvstedt)
4303550ce3 update to NixOS 25.11 (Erik Arvstedt)
2a59766cb1 flake-info: fix patch after upstream reformatting (Jonas Nick)
bde29b84f7 Update nixpkgs (Jonas Nick)

Pull request description:

ACKs for top commit:
  jonasnick:
    ACK 72e220d998

Tree-SHA512: a6a291c42c14e7c7b7d66365100ee03f53e969a826f13fe75374392b8ec638ca0b6460a7b96ebbc7c0902b578a2c7b783a6170f342a4fb0e1cd6a9f7fc2e3664
2026-01-04 20:09:14 +00:00
Erik Arvstedt 72e220d998 containers: use native systemd FUSE support
Since version 257 (NixOS 25.05), systemd-nspawn automatically creates a
/dev/fuse node in the container when the host's FUSE node is accessible
to the nspawn process:
https://github.com/systemd/systemd/pull/34067
2025-12-27 12:40:53 +01:00
Erik Arvstedt 53104f55f9 btcpayserver: update postgresql setup to NixOS 25.11 2025-12-27 12:40:53 +01:00
Erik Arvstedt 7b215e6ca1 extra-container: 0.13 -> 0.14
Adds support for NixOS 25.11
2025-12-24 08:34:27 +01:00
Erik Arvstedt 3b9406a4d2 joinmarket: fix for NixOS 25.11
Temporarily add nixpkgs-25.05 for joinmarket (see code comment).
2025-12-24 08:33:48 +01:00
Erik Arvstedt 4ba311c425 trezor: fix for NixOS 25.11 2025-12-23 10:45:43 +01:00
Erik Arvstedt 9eca5294bb pyln-proto: fix for NixOS 25.11
coincurve 21 has no breaking changes:
https://github.com/ofek/coincurve/releases/tag/v21.0.0
2025-12-23 10:45:43 +01:00
Erik Arvstedt 974f29b516 python-packages: minor fixes for NixOS 25.11 2025-12-23 10:45:43 +01:00
Erik Arvstedt 54651163ba treewide: fix eval warnings for NixOS 25.11 2025-12-23 10:45:43 +01:00
Erik Arvstedt 4303550ce3 update to NixOS 25.11 2025-12-23 10:45:43 +01:00
Jonas Nick 2a59766cb1 flake-info: fix patch after upstream reformatting
`add_arg_pair` call was changed to multi-line format.
2025-12-23 10:45:43 +01:00
Jonas Nick bde29b84f7 Update nixpkgs
electrs: 0.10.10 -> 0.11.0
2025-12-18 08:38:21 +00:00
Jonas Nick f1ebb5d2cd Merge fort-nix/nix-bitcoin#819: Update nixpkgs
e6e3a13dbb work around CVE-2024-23342 for pkgs `hwi`, `trezor` (Erik Arvstedt)
c4cd252753 update nixpkgs (Erik Arvstedt)

Pull request description:

ACKs for top commit:
  jonasnick:
    ACK e6e3a13dbb

Tree-SHA512: f0f5bcbe0ea28f5870aed7bd983904fe3d57aedad45955835ace1fb151f48f169977f453d41a071b60e0e27af6fc92572c629627dfc8d81012c0bb4241a7f459
2025-11-24 12:50:28 +00:00
Erik Arvstedt e6e3a13dbb work around CVE-2024-23342 for pkgs hwi, trezor 2025-11-22 15:21:32 +01:00
Erik Arvstedt c4cd252753 update nixpkgs
bitcoind-knots: 29.2.knots20251010 -> 29.2.knots20251110
clightning: 25.09 -> 25.09.2
lightning-loop: 0.31.2-beta -> 0.31.5-beta
2025-11-22 15:21:32 +01:00
Jonas Nick b217b6019c Merge fort-nix/nix-bitcoin#818: Add bitcoind 29.2
4442e87ff2 bitcoind: 29.1 -> 29.2 (Erik Arvstedt)
944bd8ed9b bitcoind: init at 29.1 (Erik Arvstedt)

Pull request description:

ACKs for top commit:
  jonasnick:
    ACK 4442e87ff2

Tree-SHA512: 0af97a7c95c6fd9536a8ce724a13291a920476cb6145a9db4ff883e378465524f9e57c5b2122d19e7286f0bdb14834d1fc76e8cd8185dad73dfa893535833f2f
2025-10-27 10:14:10 +00:00
Erik Arvstedt 4442e87ff2 bitcoind: 29.1 -> 29.2 2025-10-27 10:31:29 +01:00
Erik Arvstedt 944bd8ed9b bitcoind: init at 29.1
bitcoind 29.x is required for joinmarket.
nixos-25.05 is at 29.0, which is a regression from 29.1.
nixos-unstable is at 30.0, which is incompatible.

Adapted from nixpkgs `96ff46705a694219cefa5155ba52203d9d32e65e`, with
minor modifications to make it compatible with nixos 25.05.
2025-10-27 10:31:27 +01:00
Jonas Nick 38dd352991 Merge fort-nix/nix-bitcoin#812: Update nixpkgs
bba75b0a7f support running joinmarket with bitcoind 29 (Erik Arvstedt)
1c786d67c6 update nixpkgs (Erik Arvstedt)
3a13b5f77c ci/test-info.nix: read scenarios from github workflow file (Erik Arvstedt)

Pull request description:

ACKs for top commit:
  jonasnick:
    ACK bba75b0a7f

Tree-SHA512: 420be622af97a7879eb4f8b0705726185994398ad89b8483eef1821b7a586b70da6200f8a562b434ca5d87fff56be39f56b606e107e5dff49278dd8b0524f52d
2025-10-23 14:55:03 +00:00
Erik Arvstedt bba75b0a7f support running joinmarket with bitcoind 29 2025-10-23 08:15:34 +02:00
Erik Arvstedt 1c786d67c6 update nixpkgs
bitcoin: 29.1 -> 30.0
bitcoind: 29.1 -> 30.0
bitcoind-knots: 29.1.knots20250903 -> 29.2.knots20251010
clboss: 0.14.1 -> 0.15.1
2025-10-23 08:15:34 +02:00
Erik Arvstedt 3a13b5f77c ci/test-info.nix: read scenarios from github workflow file
Simplifies maintenance, both files no longer need to be kept in sync.
2025-10-21 07:10:47 +02:00