aboutsummaryrefslogtreecommitdiffstats
path: root/modules/by-name/op
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2025-08-24 15:10:22 +0200
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2025-08-24 15:10:22 +0200
commit0c38364b28e3443ac45b56c08787bb70a2b30b28 (patch)
tree38140123e5283896dea43779ee37e9f3e509a25c /modules/by-name/op
parentmodules/hledger: Remove `hledger-edit` (diff)
downloadnixos-config-0c38364b28e3443ac45b56c08787bb70a2b30b28.zip
modules/: Hard-code user and group ids
This avoids relying on the state in /var/lib/nixos
Diffstat (limited to 'modules/by-name/op')
-rw-r--r--modules/by-name/op/openssh/module.nix42
1 files changed, 30 insertions, 12 deletions
diff --git a/modules/by-name/op/openssh/module.nix b/modules/by-name/op/openssh/module.nix
index 97cf7fd7..f77c357b 100644
--- a/modules/by-name/op/openssh/module.nix
+++ b/modules/by-name/op/openssh/module.nix
@@ -7,18 +7,36 @@
#
# You should have received a copy of the License along with this program.
# If not, see <https://www.gnu.org/licenses/gpl-3.0.txt>.
-{...}: {
- services.openssh = {
- enable = true;
- hostKeys = [
- {
- path = "/srv/sshd/ssh_host_ed25519_key";
- rounds = 1000;
- type = "ed25519";
- }
- ];
- settings = {
- PasswordAuthentication = false;
+{
+ config,
+ lib,
+ libraries,
+ ...
+}: let
+ cfg = config.soispha.services.openssh;
+in {
+ options.soispha.services.openssh = {
+ enable = libraries.base.options.mkEnable "openssh";
+ };
+
+ config = lib.mkIf cfg.enable {
+ services.openssh = {
+ enable = true;
+ hostKeys = [
+ {
+ path = "/srv/sshd/ssh_host_ed25519_key";
+ rounds = 1000;
+ type = "ed25519";
+ }
+ ];
+
+ settings = {
+ PasswordAuthentication = false;
+ };
+ };
+ users = {
+ users.sshd.uid = config.soispha.constants.ids.uids.sshd;
+ groups.sshd.gid = config.soispha.constants.ids.gids.sshd;
};
};
}