nixpkgs 8b8c811 (2026-08-08) removed services.clightning.enable, causing btcpayserver.nix:124 to throw 'option does not exist' on nixos-rebuild (your error). Sovran uses lnd only, never clightning, but evaluation still throws. - Add modules/vendor/nix-bitcoin/stubs.nix to provide missing options as false stubs: clightning, clightning-rest, liquidd, fulcrum, lightning-loop/pool, joinmarket - Guard btcpayserver/rtl/lnd/mempool clightning/liquidd references with config.services ? X checks - Trim enable-tor.nix onionServices for removed services
55 lines
1.7 KiB
Nix
55 lines
1.7 KiB
Nix
{ lib, config, ... }:
|
|
let
|
|
defaultTrue = lib.mkDefault true;
|
|
defaultEnableTorProxy = {
|
|
tor.proxy = defaultTrue;
|
|
tor.enforce = defaultTrue;
|
|
};
|
|
defaultEnforceTor = {
|
|
tor.enforce = defaultTrue;
|
|
};
|
|
in {
|
|
services.tor = {
|
|
enable = true;
|
|
client.enable = true;
|
|
};
|
|
|
|
services = {
|
|
# Use Tor as a proxy for outgoing connections
|
|
# and restrict all connections to Tor
|
|
#
|
|
bitcoind = defaultEnableTorProxy;
|
|
# clightning = defaultEnableTorProxy; # vendored: not needed (Sovran uses lnd)
|
|
lnd = defaultEnableTorProxy;
|
|
# lightning-loop = defaultEnableTorProxy; # vendored: not used
|
|
# liquidd = defaultEnableTorProxy; # vendored: not used
|
|
# TODO-EXTERNAL:
|
|
# disable Tor enforcement until btcpayserver can fetch rates over Tor
|
|
# btcpayserver = defaultEnableTorProxy;
|
|
# lightning-pool = defaultEnableTorProxy; # vendored: not used
|
|
mempool = defaultEnableTorProxy;
|
|
|
|
# These services don't make outgoing connections
|
|
# (or use Tor by default in case of joinmarket)
|
|
# but we restrict them to Tor just to be safe.
|
|
#
|
|
electrs = defaultEnforceTor;
|
|
# fulcrum = defaultEnforceTor; # vendored: not used
|
|
nbxplorer = defaultEnforceTor;
|
|
rtl = defaultEnforceTor;
|
|
# joinmarket = defaultEnforceTor; # vendored: not used
|
|
# joinmarket-ob-watcher = defaultEnforceTor; # vendored: not used
|
|
# clightning-rest = defaultEnforceTor; # vendored: not used
|
|
};
|
|
|
|
# Add onion services for incoming connections
|
|
nix-bitcoin.onionServices = {
|
|
bitcoind.enable = defaultTrue;
|
|
# liquidd.enable = defaultTrue; # stub
|
|
electrs.enable = defaultTrue;
|
|
# fulcrum.enable = defaultTrue; # stub
|
|
# joinmarket-ob-watcher.enable = defaultTrue; # stub
|
|
rtl.enable = defaultTrue;
|
|
};
|
|
}
|