Agent-Logs-Url: https://github.com/naturallaw777/staging_alpha/sessions/96b8f8fe-5a1d-42e5-8b2d-5dd5aee96044 Co-authored-by: naturallaw777 <99053422+naturallaw777@users.noreply.github.com>
96 lines
2.3 KiB
Nix
Executable File
96 lines
2.3 KiB
Nix
Executable File
{ config, pkgs, lib, ... }:
|
|
|
|
lib.mkIf config.sovran_systemsOS.services.bitcoin {
|
|
|
|
services.bitcoind = {
|
|
enable = true;
|
|
package = config.nix-bitcoin.pkgs.bitcoind-knots;
|
|
dataDir = "/run/media/Second_Drive/BTCEcoandBackup/Bitcoin_Node";
|
|
txindex = true;
|
|
tor.proxy = true;
|
|
tor.enforce = true;
|
|
disablewallet = true;
|
|
extraConfig = ''
|
|
peerbloomfilters=1
|
|
server=1
|
|
'';
|
|
};
|
|
|
|
nix-bitcoin.onionServices.bitcoind.enable = true;
|
|
nix-bitcoin.onionServices.electrs.enable = true;
|
|
nix-bitcoin.onionServices.rtl.enable = true;
|
|
|
|
services.electrs = {
|
|
enable = true;
|
|
tor.enforce = true;
|
|
dataDir = "/run/media/Second_Drive/BTCEcoandBackup/Electrs_Data";
|
|
};
|
|
|
|
services.lnd = {
|
|
enable = true;
|
|
tor.enforce = true;
|
|
tor.proxy = true;
|
|
extraConfig = ''
|
|
protocol.option-scid-alias=true
|
|
'';
|
|
};
|
|
|
|
nix-bitcoin.onionServices.lnd.public = true;
|
|
|
|
services.lnd.lndconnect = {
|
|
enable = true;
|
|
onion = true;
|
|
};
|
|
|
|
services.rtl = {
|
|
enable = true;
|
|
tor.enforce = true;
|
|
port = 3050;
|
|
nightTheme = true;
|
|
nodes = {
|
|
lnd = {
|
|
enable = true;
|
|
};
|
|
};
|
|
};
|
|
|
|
services.btcpayserver = {
|
|
enable = true;
|
|
};
|
|
|
|
services.btcpayserver.lightningBackend = "lnd";
|
|
|
|
nix-bitcoin.generateSecrets = true;
|
|
nix-bitcoin.nodeinfo.enable = true;
|
|
|
|
nix-bitcoin.operator = {
|
|
enable = true;
|
|
name = "free";
|
|
};
|
|
|
|
nix-bitcoin.useVersionLockedPkgs = false;
|
|
|
|
systemd.services.sovran-btc-permissions = {
|
|
description = "Fix Bitcoin/Electrs data directory ownership on second drive";
|
|
wantedBy = [ "multi-user.target" ];
|
|
after = [ "run-media-Second_Drive.mount" ];
|
|
before = [ "bitcoind.service" "electrs.service" ];
|
|
serviceConfig = {
|
|
Type = "oneshot";
|
|
RemainAfterExit = true;
|
|
};
|
|
script = ''
|
|
if [ -d /run/media/Second_Drive/BTCEcoandBackup/Bitcoin_Node ]; then
|
|
chown -R bitcoin:bitcoin /run/media/Second_Drive/BTCEcoandBackup/Bitcoin_Node
|
|
fi
|
|
if [ -d /run/media/Second_Drive/BTCEcoandBackup/Electrs_Data ]; then
|
|
chown -R electrs:electrs /run/media/Second_Drive/BTCEcoandBackup/Electrs_Data
|
|
fi
|
|
'';
|
|
};
|
|
|
|
sovran_systemsOS.domainRequirements = [
|
|
{ name = "btcpayserver"; label = "BTCPay Server"; example = "pay.yourdomain.com"; }
|
|
];
|
|
}
|