diff options
author | sinanmohd <sinan@sinanmohd.com> | 2024-06-04 14:38:25 +0530 |
---|---|---|
committer | sinanmohd <sinan@sinanmohd.com> | 2024-06-04 18:04:18 +0530 |
commit | 654fa9e430be421df30ee79e7ea5f4e40b39dddc (patch) | |
tree | 37d9bc759e3e1b3323e76d85d706123f3b799d88 /os/pc/modules/sshfs.nix | |
parent | 84073038e22d3201ac0176a94527c040bb153e9e (diff) |
home, os: refactor
Diffstat (limited to 'os/pc/modules/sshfs.nix')
-rw-r--r-- | os/pc/modules/sshfs.nix | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/os/pc/modules/sshfs.nix b/os/pc/modules/sshfs.nix new file mode 100644 index 0000000..2dbccce --- /dev/null +++ b/os/pc/modules/sshfs.nix @@ -0,0 +1,25 @@ +{ config, pkgs, ... }: let + domain = config.global.userdata.domain; + user = config.global.userdata.name; + uid = config.users.users.${user}.uid; + gid = config.users.groups.users.gid; +in { + sops.secrets."misc/sftp".sopsFile = ../secrets.yaml; + system.fsPackages = with pkgs; [ sshfs ]; + + fileSystems."/media/kay" = { + device = "sftp@${domain}:"; + fsType = "sshfs"; + + options = [ + "allow_other" # for non-root access + "uid=${toString uid}" + "gid=${toString gid}" + "_netdev" # this is a network fs + "x-systemd.automount" # mount on demand + "reconnect" # handle connection drops + "ServerAliveInterval=15" # keep connections alive + "IdentityFile=${config.sops.secrets."misc/sftp".path}" + ]; + }; +} |