Initial dendritic rewrite
This commit is contained in:
40
modules/fileSystems/factory.nix
Normal file
40
modules/fileSystems/factory.nix
Normal file
@@ -0,0 +1,40 @@
|
||||
{
|
||||
flake.factory.nixos.cifs =
|
||||
{
|
||||
destination,
|
||||
host,
|
||||
resource,
|
||||
credentialsPath,
|
||||
uid,
|
||||
gid ? null,
|
||||
}:
|
||||
{
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
{
|
||||
fileSystems."${destination}" = {
|
||||
device = "//${host}/${resource}";
|
||||
fsType = "cifs";
|
||||
options =
|
||||
let
|
||||
automount-opts = [
|
||||
"x-systemd.automount"
|
||||
"x-systemd.idle-timeout=60"
|
||||
"x-systemd.device-timeout=5s"
|
||||
"x-systemd.mount-timeout=5s"
|
||||
"noauto"
|
||||
"nofail"
|
||||
"soft"
|
||||
];
|
||||
mount-opts = [
|
||||
"rw"
|
||||
"iocharset=utf8"
|
||||
];
|
||||
user = [ "uid=${toString uid}" ] ++ (lib.optionals (gid != null) [ "gid=${toString gid}" ]);
|
||||
credentials = [ "credentials=${credentialsPath}" ];
|
||||
in
|
||||
automount-opts ++ mount-opts ++ user ++ credentials;
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user