diff --git a/common/pc/mount-samba.nix b/common/pc/mount-samba.nix index db7f2ba..937ba00 100644 --- a/common/pc/mount-samba.nix +++ b/common/pc/mount-samba.nix @@ -5,14 +5,15 @@ let cfg = config.services.mount-samba; - # prevents hanging on network split - network_opts = "x-systemd.automount,noauto,x-systemd.idle-timeout=60,x-systemd.device-timeout=5s,x-systemd.mount-timeout=5s,nostrictsync,cache=loose,handlecache,handletimeout=30000,rwpidforward,mapposix,soft,resilienthandles,echo_interval=10,noblocksend"; + # prevents hanging on network split and other similar niceties to ensure a stable connection + network_opts = "nostrictsync,cache=strict,handlecache,handletimeout=30000,rwpidforward,mapposix,soft,resilienthandles,echo_interval=10,noblocksend,fsc"; + systemd_opts = "x-systemd.automount,noauto,x-systemd.idle-timeout=60,x-systemd.device-timeout=5s,x-systemd.mount-timeout=5s"; user_opts = "uid=${toString config.users.users.googlebot.uid},file_mode=0660,dir_mode=0770,user"; - auth_opts = "credentials=/run/agenix/smb-secrets"; - version_opts = "vers=2.1"; + auth_opts = "sec=ntlmv2i,credentials=/run/agenix/smb-secrets"; + version_opts = "vers=3.1.1"; - opts = "${network_opts},${user_opts},${version_opts},${auth_opts}"; + opts = "${systemd_opts},${network_opts},${user_opts},${version_opts},${auth_opts}"; in { options.services.mount-samba = { enable = lib.mkEnableOption "enable mounting samba shares"; @@ -33,8 +34,12 @@ in { age.secrets.smb-secrets.file = ../../secrets/smb-secrets.age; - # Encrypted Vault environment.shellAliases = { + # remount storage + remount_public = "sudo systemctl restart mnt-public.mount"; + remount_private = "sudo systemctl restart mnt-private.mount"; + + # Encrypted Vault vault_unlock = "${pkgs.gocryptfs}/bin/gocryptfs /mnt/private/.vault/ /mnt/vault/"; vault_lock = "umount /mnt/vault/"; };