aboutsummaryrefslogtreecommitdiff
path: root/modules/monero/default.nix
blob: deb61bb03d911341bbfb3d08795a89f57768ea0e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
{ config, pkgs, ... }:
{
  services = {
    monero = {
      enable = true;
      dataDir = "/var/lib/monero";
      # prune option exists in unstable/25.11+
      # prune = false;

      rpc = {
        address = "127.0.0.1";
        port = 18081;
      };

      extraConfig = ''
        zmq-pub=tcp://127.0.0.1:18083
      '';
    };

    xmrig = {
      enable = true;

      settings = {
        autosave = false;
        maxThreadsHint = 50;
        cpu = {
          rx = {
            enabled = true;
           # threads = 12;
          };
        };

        pools = [
          {
            url = "127.0.0.1:3333";
            user = "4BD1gWVaMxdTqVnQdFW6m4j9wBj8UkoBtXuPdRqdoMypjQAzvvXwTZ8AvkeUbKhspdCJazj3bYyS855cpzj3ZG1FB9DNqqF";
            keepalive = true;
            tls = false;
          }
        ];
      };
    };
  };

  systemd.services.p2pool = {
    description = "P2Pool for XMR";
    wantedBy = [ "multi-user.target" ];
    after = [ "network-online.target" "monero.service" ];
    wants = [ "network-online.target" "monero.service" ];

    serviceConfig = {
      ExecStart = ''
        ${pkgs.p2pool}/bin/p2pool \
          --mini \
          --host 127.0.0.1 \
          --rpc-port 18081 \
          --wallet 4BD1gWVaMxdTqVnQdFW6m4j9wBj8UkoBtXuPdRqdoMypjQAzvvXwTZ8AvkeUbKhspdCJazj3bYyS855cpzj3ZG1FB9DNqqF \
          --stratum 127.0.0.1:3333 \
          --p2p 127.0.0.1:37889 \
      '';
      Restart = "always";
      RestartSec = "5s";
    };
  };
}
Directive (EU) 2019/790, Article 4(3); all rights regarding Text and Data Mining (TDM) are reserved.