about summary refs log tree commit diff
path: root/nixos/modules/services/networking/iscsi/initiator.nix
diff options
context:
space:
mode:
authorLinus Heckemann <git@sphalerite.org>2023-10-28 10:17:15 +0200
committerGitHub <noreply@github.com>2023-10-28 10:17:15 +0200
commit86707945659e730bc7af48969d0898a765ee4c05 (patch)
treeb41cdb205107c50ab64e1148d9383540dcf79f0e /nixos/modules/services/networking/iscsi/initiator.nix
parent0643b928c86e6f8e1786ad2ffb666331a42add51 (diff)
parentd300940637a74421b78d3e94b25daf35f1b9ec9d (diff)
downloadnixlib-86707945659e730bc7af48969d0898a765ee4c05.tar
nixlib-86707945659e730bc7af48969d0898a765ee4c05.tar.gz
nixlib-86707945659e730bc7af48969d0898a765ee4c05.tar.bz2
nixlib-86707945659e730bc7af48969d0898a765ee4c05.tar.lz
nixlib-86707945659e730bc7af48969d0898a765ee4c05.tar.xz
nixlib-86707945659e730bc7af48969d0898a765ee4c05.tar.zst
nixlib-86707945659e730bc7af48969d0898a765ee4c05.zip
Merge pull request #263203 from nikstur/replace-activation
Replace simple activationScripts 
Diffstat (limited to 'nixos/modules/services/networking/iscsi/initiator.nix')
-rw-r--r--nixos/modules/services/networking/iscsi/initiator.nix36
1 files changed, 19 insertions, 17 deletions
diff --git a/nixos/modules/services/networking/iscsi/initiator.nix b/nixos/modules/services/networking/iscsi/initiator.nix
index 9c71a988f29c..6c30f89b7968 100644
--- a/nixos/modules/services/networking/iscsi/initiator.nix
+++ b/nixos/modules/services/networking/iscsi/initiator.nix
@@ -52,25 +52,27 @@ in
     '';
     environment.etc."iscsi/initiatorname.iscsi".text = "InitiatorName=${cfg.name}";
 
-    system.activationScripts.iscsid = let
-      extraCfgDumper = optionalString (cfg.extraConfigFile != null) ''
-        if [ -f "${cfg.extraConfigFile}" ]; then
-          printf "\n# The following is from ${cfg.extraConfigFile}:\n"
-          cat "${cfg.extraConfigFile}"
-        else
-          echo "Warning: services.openiscsi.extraConfigFile ${cfg.extraConfigFile} does not exist!" >&2
-        fi
-      '';
-    in ''
-      (
-        cat ${config.environment.etc."iscsi/iscsid.conf.fragment".source}
-        ${extraCfgDumper}
-      ) > /etc/iscsi/iscsid.conf
-    '';
-
     systemd.packages = [ cfg.package ];
 
-    systemd.services."iscsid".wantedBy = [ "multi-user.target" ];
+    systemd.services."iscsid" = {
+      wantedBy = [ "multi-user.target" ];
+      preStart =
+        let
+          extraCfgDumper = optionalString (cfg.extraConfigFile != null) ''
+            if [ -f "${cfg.extraConfigFile}" ]; then
+              printf "\n# The following is from ${cfg.extraConfigFile}:\n"
+              cat "${cfg.extraConfigFile}"
+            else
+              echo "Warning: services.openiscsi.extraConfigFile ${cfg.extraConfigFile} does not exist!" >&2
+            fi
+          '';
+        in ''
+          (
+            cat ${config.environment.etc."iscsi/iscsid.conf.fragment".source}
+            ${extraCfgDumper}
+          ) > /etc/iscsi/iscsid.conf
+        '';
+    };
     systemd.sockets."iscsid".wantedBy = [ "sockets.target" ];
 
     systemd.services."iscsi" = mkIf cfg.enableAutoLoginOut {