Test automount

This commit is contained in:
2025-08-31 16:52:24 +02:00
parent 07ec9fe590
commit 70cea4f7da

View File

@@ -1,9 +1,7 @@
{ inputs, config, ... }: { inputs, config, ... }:
{ {
imports = [ imports = [ inputs.sops-nix.nixosModules.sops ];
inputs.sops-nix.nixosModules.sops
];
services.davfs2.enable = true; services.davfs2.enable = true;
@@ -14,26 +12,19 @@
templates = { templates = {
"davtemp" = { "davtemp" = {
owner = "root"; owner = "root";
content = ''${config.sops.placeholder.webdav_secret}''; content = "${config.sops.placeholder.webdav_secret}";
mode = "0600"; mode = "0600";
path = "/etc/davfs2/secrets"; path = "/etc/davfs2/secrets";
}; };
}; };
secrets = { secrets = { webdav_secret = { owner = "jonas"; }; };
webdav_secret = {
owner = "jonas";
};
};
}; };
# Ensure the mountpoint directory exists # Ensure the mountpoint directory exists
systemd.tmpfiles.rules = [ systemd.tmpfiles.rules = [ "d /mnt/webdav 0755 jonas users -" ];
"d /mnt/webdav 0755 jonas users -"
];
# Just works # Just works
systemd.mounts = [ systemd.mounts = [{
{
description = "Webdav mount point"; description = "Webdav mount point";
wants = [ "network-online.target" ]; wants = [ "network-online.target" ];
what = "https://dav.hahn1.one"; what = "https://dav.hahn1.one";
@@ -41,6 +32,11 @@
type = "davfs"; type = "davfs";
options = "uid=1000,gid=1000,file_mode=0664,dir_mode=2775,_netdev"; options = "uid=1000,gid=1000,file_mode=0664,dir_mode=2775,_netdev";
mountConfig.TimeoutSec = "5s"; mountConfig.TimeoutSec = "5s";
} }];
];
systemd.automounts = [{
where = "/mnt/webdav";
wantedBy = [ "multi-user.target" ];
automountConfig = { TimeoutIdleSec = "20m"; };
}];
} }