about summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
authorWilliam A. Kennington III <william@wkennington.com>2014-09-11 21:43:58 -0700
committerWilliam A. Kennington III <william@wkennington.com>2014-09-11 22:07:39 -0700
commitbab5efd237477307a9f41a54798bd602443124dc (patch)
tree42c9b5cf01a000ff43e68fc559a1225c11072a85 /nixos
parent686a139f29b7368e3f150d488ae7f965b2d0ff5d (diff)
downloadnixlib-bab5efd237477307a9f41a54798bd602443124dc.tar
nixlib-bab5efd237477307a9f41a54798bd602443124dc.tar.gz
nixlib-bab5efd237477307a9f41a54798bd602443124dc.tar.bz2
nixlib-bab5efd237477307a9f41a54798bd602443124dc.tar.lz
nixlib-bab5efd237477307a9f41a54798bd602443124dc.tar.xz
nixlib-bab5efd237477307a9f41a54798bd602443124dc.tar.zst
nixlib-bab5efd237477307a9f41a54798bd602443124dc.zip
nixos/ssh: Allow user to configure the package that provides ssh/sshd
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/programs/ssh.nix9
-rw-r--r--nixos/modules/services/networking/ssh/sshd.nix8
2 files changed, 12 insertions, 5 deletions
diff --git a/nixos/modules/programs/ssh.nix b/nixos/modules/programs/ssh.nix
index fdb9dfd4b8c2..ee9cb81a027f 100644
--- a/nixos/modules/programs/ssh.nix
+++ b/nixos/modules/programs/ssh.nix
@@ -59,6 +59,13 @@ in
         '';
       };
 
+      package = mkOption {
+        default = pkgs.openssh;
+        description = ''
+          The package used for the openssh client and daemon.
+        '';
+      };
+
     };
 
   };
@@ -92,7 +99,7 @@ in
         wantedBy = [ "default.target" ];
         serviceConfig =
           { ExecStartPre = "${pkgs.coreutils}/bin/rm -f %t/ssh-agent";
-            ExecStart = "${pkgs.openssh}/bin/ssh-agent -a %t/ssh-agent";
+            ExecStart = "${cfg.package}/bin/ssh-agent -a %t/ssh-agent";
             StandardOutput = "null";
             Type = "forking";
             Restart = "on-failure";
diff --git a/nixos/modules/services/networking/ssh/sshd.nix b/nixos/modules/services/networking/ssh/sshd.nix
index 379dec2e92c1..fee1bace0460 100644
--- a/nixos/modules/services/networking/ssh/sshd.nix
+++ b/nixos/modules/services/networking/ssh/sshd.nix
@@ -291,7 +291,7 @@ in
       };
 
     environment.etc = authKeysFiles ++ [
-      { source = "${pkgs.openssh}/etc/ssh/moduli";
+      { source = "${cfgc.package}/etc/ssh/moduli";
         target = "ssh/moduli";
       }
       { source = knownHostsFile;
@@ -308,7 +308,7 @@ in
 
             stopIfChanged = false;
 
-            path = [ pkgs.openssh pkgs.gawk ];
+            path = [ cfgc.package pkgs.gawk ];
 
             environment.LD_LIBRARY_PATH = nssModulesPath;
 
@@ -325,7 +325,7 @@ in
 
             serviceConfig =
               { ExecStart =
-                  "${pkgs.openssh}/sbin/sshd " + (optionalString cfg.startWhenNeeded "-i ") +
+                  "${cfgc.package}/sbin/sshd " + (optionalString cfg.startWhenNeeded "-i ") +
                   "-f ${pkgs.writeText "sshd_config" cfg.extraConfig}";
                 KillMode = "process";
               } // (if cfg.startWhenNeeded then {
@@ -394,7 +394,7 @@ in
         ''}
 
         ${optionalString cfg.allowSFTP ''
-          Subsystem sftp ${pkgs.openssh}/libexec/sftp-server
+          Subsystem sftp ${cfgc.package}/libexec/sftp-server
         ''}
 
         PermitRootLogin ${cfg.permitRootLogin}