mirror of
https://github.com/Ascyii/nixos.git
synced 2026-01-01 06:44:26 -05:00
47 lines
928 B
Nix
47 lines
928 B
Nix
{ inputs, config, ... }:
|
|
|
|
{
|
|
imports = [
|
|
inputs.sops-nix.nixosModules.sops
|
|
];
|
|
|
|
services.davfs2.enable = true;
|
|
|
|
sops = {
|
|
defaultSopsFile = ./../../secrets.yaml;
|
|
defaultSopsFormat = "yaml";
|
|
age.keyFile = "/home/jonas/.config/sops/age/keys.txt";
|
|
templates = {
|
|
"davtemp" = {
|
|
owner = "root";
|
|
content = ''${config.sops.placeholder.webdav_secret}'';
|
|
mode = "0600";
|
|
path = "/etc/davfs2/secrets";
|
|
};
|
|
};
|
|
secrets = {
|
|
webdav_secret = {
|
|
owner = "jonas";
|
|
};
|
|
};
|
|
};
|
|
|
|
# Ensure the mountpoint directory exists
|
|
systemd.tmpfiles.rules = [
|
|
"d /mnt/webdav 0755 jonas users -"
|
|
];
|
|
|
|
# Just works
|
|
systemd.mounts = [
|
|
{
|
|
description = "Webdav mount point";
|
|
wants = [ "network-online.target" ];
|
|
what = "https://dav.hahn1.one";
|
|
where = "/mnt/webdav";
|
|
type = "davfs";
|
|
options = "uid=1000,gid=1000,file_mode=0664,dir_mode=2775,_netdev";
|
|
mountConfig.TimeoutSec = "5s";
|
|
}
|
|
];
|
|
}
|