about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAneesh Agrawal <aneeshusa@gmail.com>2017-05-14 23:29:32 -0400
committerAneesh Agrawal <aneeshusa@gmail.com>2018-10-15 19:59:09 -0700
commit37c9915340357226d2c9090425e9566feb7bb159 (patch)
tree4ff2f9644176648512e608a80c7a0c85d21e5950
parentadf826119217c23dc4c52c8da892d30df54b02ad (diff)
downloadnixlib-37c9915340357226d2c9090425e9566feb7bb159.tar
nixlib-37c9915340357226d2c9090425e9566feb7bb159.tar.gz
nixlib-37c9915340357226d2c9090425e9566feb7bb159.tar.bz2
nixlib-37c9915340357226d2c9090425e9566feb7bb159.tar.lz
nixlib-37c9915340357226d2c9090425e9566feb7bb159.tar.xz
nixlib-37c9915340357226d2c9090425e9566feb7bb159.tar.zst
nixlib-37c9915340357226d2c9090425e9566feb7bb159.zip
nixos/salt-minion: Fix salt-call without `-c`
-rw-r--r--nixos/modules/services/admin/salt/minion.nix14
1 files changed, 11 insertions, 3 deletions
diff --git a/nixos/modules/services/admin/salt/minion.nix b/nixos/modules/services/admin/salt/minion.nix
index be2c5e2f83d5..254ff7bb899a 100644
--- a/nixos/modules/services/admin/salt/minion.nix
+++ b/nixos/modules/services/admin/salt/minion.nix
@@ -15,7 +15,6 @@ let
     # Default is in /etc/salt/pki/minion
     pki_dir = "/var/lib/salt/pki/minion";
   } cfg.configuration;
-  configDir = pkgs.writeTextDir "minion" (builtins.toJSON fullConfig);
 
 in
 
@@ -36,7 +35,16 @@ in
   };
 
   config = mkIf cfg.enable {
-    environment.systemPackages = with pkgs; [ salt ];
+    environment = {
+      # Set this up in /etc/salt/minion so `salt-call`, etc. work.
+      # The alternatives are
+      # - passing --config-dir to all salt commands, not just the minion unit,
+      # - setting aglobal environment variable.
+      etc."salt/minion".source = pkgs.writeText "minion" (
+        builtins.toJSON fullConfig
+      );
+      systemPackages = with pkgs; [ salt ];
+    };
     systemd.services.salt-minion = {
       description = "Salt Minion";
       wantedBy = [ "multi-user.target" ];
@@ -45,7 +53,7 @@ in
         utillinux
       ];
       serviceConfig = {
-        ExecStart = "${pkgs.salt}/bin/salt-minion --config-dir=${configDir}";
+        ExecStart = "${pkgs.salt}/bin/salt-minion";
         LimitNOFILE = 8192;
         Type = "notify";
         NotifyAccess = "all";