mirror of
https://git.pvv.ntnu.no/Drift/pvv-nixos-config.git
synced 2026-02-20 08:57:53 +01:00
52 lines
1.1 KiB
Nix
52 lines
1.1 KiB
Nix
{ lib, ... }:
|
|
let
|
|
# See microbel:/etc/exports
|
|
letters = [ "a" "b" "c" "d" "h" "i" "j" "k" "l" "m" "z" ];
|
|
in
|
|
{
|
|
systemd.mounts = map (l: {
|
|
description = "PVV Homedirs Partition ${l}";
|
|
|
|
before = [ "remote-fs.target" ];
|
|
wantedBy = [ "multi-user.target" ];
|
|
|
|
type = "nfs";
|
|
what = "homepvv${l}.pvv.ntnu.no:/export/home/pvv/${l}";
|
|
where = "/run/pvv-home-mounts/${l}";
|
|
|
|
options = lib.concatStringsSep "," [
|
|
"nfsvers=3"
|
|
"proto=tcp"
|
|
"auto"
|
|
"async"
|
|
|
|
# We don't want to update access time constantly
|
|
"noatime"
|
|
|
|
# No SUID/SGID, no special devices
|
|
"nosuid"
|
|
"nodev"
|
|
|
|
# TODO: are there cgi scripts that modify stuff in peoples homedirs?
|
|
# "ro"
|
|
"rw"
|
|
|
|
# TODO: can we enable this and still run cgi stuff?
|
|
# "noexec"
|
|
];
|
|
}) letters;
|
|
|
|
systemd.automounts = map (l: {
|
|
description = "PVV Homedirs Partition ${l}";
|
|
|
|
wantedBy = [ "multi-user.target" ];
|
|
|
|
where = "/run/pvv-home-mounts/${l}";
|
|
|
|
automountConfig = {
|
|
# Unmount if not accessed in 5 mins
|
|
TimeoutIdleSec = "5min";
|
|
};
|
|
}) letters;
|
|
}
|