Unverified Commit b4a4b9e5 authored by lassulus's avatar lassulus Committed by GitHub
Browse files

Merge pull request #299987 from r-vdp/mycelium-args

nixos/mycelium: allow specifying extra args to mycelium
parents 6d3145bb b9fc0a8f
Loading
Loading
Loading
Loading
+11 −2
Original line number Diff line number Diff line
{ config, pkgs, lib, ... }:
{ config, pkgs, lib, utils, ... }:

let
  cfg = config.services.mycelium;
@@ -46,6 +46,15 @@ in
        Adds the hosted peers from https://github.com/threefoldtech/mycelium#hosted-public-nodes.
      '';
    };
    extraArgs = lib.mkOption {
      type = lib.types.listOf lib.types.str;
      default = [ ];
      description = ''
        Extra command-line arguments to pass to mycelium.

        See `mycelium --help` for all available options.
      '';
    };
  };
  config = lib.mkIf cfg.enable {
    networking.firewall.allowedTCPPorts = lib.optionals cfg.openFirewall [ 9651 ];
@@ -87,6 +96,7 @@ in
          )
          "--tun-name"
          "mycelium"
          "${utils.escapeSystemdExecArgs cfg.extraArgs}"
        ] ++
        (lib.optional (cfg.addHostedPublicNodes || cfg.peers != [ ]) "--peers")
        ++ cfg.peers ++ (lib.optionals cfg.addHostedPublicNodes [
@@ -130,4 +140,3 @@ in
    maintainers = with lib.maintainers; [ flokli lassulus ];
  };
}