diff --git a/modules/bitcoin/btcpayserver.nix b/modules/bitcoin/btcpayserver.nix index a07a667..4bad53b 100644 --- a/modules/bitcoin/btcpayserver.nix +++ b/modules/bitcoin/btcpayserver.nix @@ -196,6 +196,7 @@ in { users.users.${cfg.nbxplorer.user} = { isSystemUser = true; group = cfg.nbxplorer.group; + home = cfg.nbxplorer.dataDir; }; users.groups.${cfg.nbxplorer.group} = {}; }) @@ -295,6 +296,7 @@ in { users.users.${cfg.btcpayserver.user} = { isSystemUser = true; group = cfg.btcpayserver.group; + home = cfg.btcpayserver.dataDir; extraGroups = optional (cfg.btcpayserver.lightningBackend == "lnd") config.services.lnd.group; }; users.groups.${cfg.btcpayserver.group} = {}; diff --git a/tests/bitcoin-btcpay-hardening.nix b/tests/bitcoin-btcpay-hardening.nix index 818786f..1d8815b 100644 --- a/tests/bitcoin-btcpay-hardening.nix +++ b/tests/bitcoin-btcpay-hardening.nix @@ -57,6 +57,12 @@ let nbxplorerConfig = builtins.readFile nbxplorerConfigPath; btcpayConfig = builtins.readFile btcpayConfigPath; in +assert lib.assertMsg + (config.users.users.${config.services.btcpayserver.user}.home == config.services.btcpayserver.dataDir) + "btcpayserver user home must match btcpayserver dataDir"; +assert lib.assertMsg + (config.users.users.${config.services.nbxplorer.user}.home == config.services.nbxplorer.dataDir) + "nbxplorer user home must match nbxplorer dataDir"; assert lib.assertMsg (config.nix-bitcoin.secrets.bitcoin-HMAC-btcpayserver.user == config.services.bitcoind.user) "bitcoin-HMAC-btcpayserver must be owned by bitcoind";