CrOS/hosts/common/optional/services/monero/node.nix
2025-11-24 22:34:29 -05:00

51 lines
1.1 KiB
Nix

{
config,
lib,
pkgs,
...
}:
{
environment.systemPackages = builtins.attrValues {
inherit (pkgs.unstable)
monero-cli
;
};
users.users.monero = {
isSystemUser = true;
group = "monero";
description = "Monero daemon user";
home = "/var/lib/monero";
createHome = true;
};
users.groups.monero = { };
systemd.services.monero = {
description = "monero daemon";
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
serviceConfig =
let
moneroConfig = pkgs.writeText "monerod_config.conf" ''
log-file=/dev/stdout
data-dir=${config.users.users.monero.home}
add-priority-node=p2pmd.xmrvsbeast.com:18080
add-priority-node=nodes.hashvault.pro:18080
enable-dns-blocklist=1
'';
in
{
User = "monero";
Group = "monero";
ExecStart = "${pkgs.unstable.monero-cli}/bin/monerod --config-file=${moneroConfig} --non-interactive";
Restart = "always";
SuccessExitStatus = [
0
1
];
};
};
}