diff options
author | William A. Kennington III <william@wkennington.com> | 2014-09-11 21:43:58 -0700 |
---|---|---|
committer | William A. Kennington III <william@wkennington.com> | 2014-09-11 22:07:39 -0700 |
commit | bab5efd237477307a9f41a54798bd602443124dc (patch) | |
tree | 42c9b5cf01a000ff43e68fc559a1225c11072a85 /nixos/modules | |
parent | 686a139f29b7368e3f150d488ae7f965b2d0ff5d (diff) | |
download | nixlib-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/modules')
-rw-r--r-- | nixos/modules/programs/ssh.nix | 9 | ||||
-rw-r--r-- | nixos/modules/services/networking/ssh/sshd.nix | 8 |
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} |