Unverified Commit 9da6c733 authored by Arne Keller's avatar Arne Keller Committed by GitHub
Browse files

nixos/bees: sync service configuration with upstream (#348054)

parents 1fe17de2 71204983
Loading
Loading
Loading
Loading
+19 −32
Original line number Diff line number Diff line
@@ -97,14 +97,14 @@ in
      '';
    };
  };
  config = {
  config = lib.mkIf (cfg.filesystems != { }) {
    systemd.packages = [ pkgs.bees ];
    systemd.services = lib.mapAttrs' (
      name: fs:
      lib.nameValuePair "beesd@${name}" {
        description = "Block-level BTRFS deduplication for %i";
        after = [ "sysinit.target" ];

        serviceConfig =
        overrideStrategy = "asDropin";
        serviceConfig = {
          ExecStart =
            let
              configOpts = [
                fs.spec
@@ -114,23 +114,10 @@ in
              ];
              configOptsStr = lib.escapeShellArgs configOpts;
            in
          {
            # Values from https://github.com/Zygo/bees/blob/v0.6.5/scripts/beesd@.service.in
            ExecStart = "${pkgs.bees}/bin/bees-service-wrapper run ${configOptsStr} -- --no-timestamps ${lib.escapeShellArgs fs.extraOptions}";
            ExecStopPost = "${pkgs.bees}/bin/bees-service-wrapper cleanup ${configOptsStr}";
            CPUAccounting = true;
            CPUSchedulingPolicy = "batch";
            CPUWeight = 12;
            IOSchedulingClass = "idle";
            IOSchedulingPriority = 7;
            IOWeight = 10;
            KillMode = "control-group";
            KillSignal = "SIGTERM";
            MemoryAccounting = true;
            Nice = 19;
            Restart = "on-abnormal";
            StartupCPUWeight = 25;
            StartupIOWeight = 25;
            [
              ""
              "${pkgs.bees}/bin/bees-service-wrapper run ${configOptsStr} -- --no-timestamps ${lib.escapeShellArgs fs.extraOptions}"
            ];
          SyslogIdentifier = "beesd"; # would otherwise be "bees-service-wrapper"
        };
        unitConfig.RequiresMountsFor = lib.mkIf (lib.hasPrefix "/" fs.spec) fs.spec;