Unverified Commit 14abde4e authored by github-actions[bot]'s avatar github-actions[bot] Committed by GitHub
Browse files

Merge master into staging-next

parents 26128332 2944f24f
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
@@ -4745,6 +4745,12 @@
    githubId = 4956158;
    name = "Robin Stumm";
  };
  DerRockWolf = {
    email = "git@rockwolf.eu";
    github = "DerRockWolf";
    githubId = 50499906;
    name = "DerRockWolf";
  };
  DerTim1 = {
    email = "tim.digel@active-group.de";
    github = "DerTim1";
@@ -7788,6 +7794,12 @@
    matrix = "@chris:netsoj.nl";
    name = "Chris Josten";
  };
  hennk = {
    email = "henning.kiel@gmail.com";
    github = "hennk";
    githubId = 328259;
    name = "Henning Kiel";
  };
  henrikolsson = {
    email = "henrik@fixme.se";
    github = "henrikolsson";
@@ -10329,6 +10341,12 @@
    githubId = 691290;
    name = "Keshav Kini";
  };
  kintrix = {
    email = "kintrix007@proton.me";
    github = "kintrix007";
    githubId = 60898798;
    name = "kintrix";
  };
  kinzoku = {
    email = "kinzokudev4869@gmail.com";
    github = "kinzoku-dev";
+4 −0
Original line number Diff line number Diff line
@@ -449,6 +449,10 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m

- `nextcloud-setup.service` no longer changes the group of each file & directory inside `/var/lib/nextcloud/{config,data,store-apps}` if one of these directories has the wrong owner group. This was part of transitioning the group used for `/var/lib/nextcloud`, but isn't necessary anymore.

- `services.kavita` now uses the freeform option `services.kavita.settings` for the application settings file.
  The options `services.kavita.ipAdresses` and `services.kavita.port` now exist at `services.kavita.settings.IpAddresses`
  and `services.kavita.settings.IpAddresses`.

- The `krb5` module has been rewritten and moved to `security.krb5`, moving all options but `security.krb5.enable` and `security.krb5.package` into `security.krb5.settings`.

- Gitea 1.21 upgrade has several breaking changes, including:
+0 −1
Original line number Diff line number Diff line
@@ -1250,6 +1250,5 @@ class Machine:
            check_return=False,
            check_output=False,
        )
        self.wait_for_console_text(r"systemd\[1\]:.*Switching root\.")
        self.connected = False
        self.connect()
+5 −0
Original line number Diff line number Diff line
@@ -1107,6 +1107,11 @@
  ./services/networking/rpcbind.nix
  ./services/networking/rxe.nix
  ./services/networking/sabnzbd.nix
  ./services/networking/scion/scion.nix
  ./services/networking/scion/scion-control.nix
  ./services/networking/scion/scion-daemon.nix
  ./services/networking/scion/scion-dispatcher.nix
  ./services/networking/scion/scion-router.nix
  ./services/networking/seafile.nix
  ./services/networking/searx.nix
  ./services/networking/shadowsocks.nix
+69 −0
Original line number Diff line number Diff line
{ config, lib, pkgs, ... }:

with lib;

let
  cfg = config.services.scion.scion-control;
  toml = pkgs.formats.toml { };
  defaultConfig = {
    general = {
      id = "cs";
      config_dir = "/etc/scion";
      reconnect_to_dispatcher = true;
    };
    beacon_db = {
      connection = "/var/lib/scion-control/control.beacon.db";
    };
    path_db = {
      connection = "/var/lib/scion-control/control.path.db";
    };
    trust_db = {
      connection = "/var/lib/scion-control/control.trust.db";
    };
    log.console = {
      level = "info";
    };
  };
  configFile = toml.generate "scion-control.toml" (defaultConfig // cfg.settings);
in
{
  options.services.scion.scion-control = {
    enable = mkEnableOption (lib.mdDoc "the scion-control service");
    settings = mkOption {
      default = { };
      type = toml.type;
      example = literalExpression ''
        {
          path_db = {
            connection = "/var/lib/scion-control/control.path.db";
          };
          log.console = {
            level = "info";
          };
        }
      '';
      description = lib.mdDoc ''
        scion-control configuration. Refer to
        <https://docs.scion.org/en/latest/manuals/common.html>
        for details on supported values.
      '';
    };
  };
  config = mkIf cfg.enable {
    systemd.services.scion-control = {
      description = "SCION Control Service";
      after = [ "network-online.target" "scion-dispatcher.service" ];
      wants = [ "network-online.target" "scion-dispatcher.service" ];
      wantedBy = [ "multi-user.target" ];
      serviceConfig = {
        Type = "simple";
        Group = if (config.services.scion.scion-dispatcher.enable == true) then "scion" else null;
        ExecStart = "${pkgs.scion}/bin/scion-control --config ${configFile}";
        DynamicUser = true;
        Restart = "on-failure";
        BindPaths = [ "/dev/shm:/run/shm" ];
        StateDirectory = "scion-control";
      };
    };
  };
}
Loading