Files
tuxcord.nix/nixos/users.nix
T
ErrorNoInternet 9a3da4124c
Check / Nix flake (push) Failing after 38s
Lint / Nix expressions (push) Has been cancelled
nixos: define user limits
2026-04-18 18:39:41 -04:00

53 lines
878 B
Nix

{ lib, ... }:
let
inherit (lib) optionals;
adminGroups = [
"adm"
"named"
"networkmanager"
"nginx"
"tuxcord"
"wheel"
];
mkUser = name: uid: options: {
users.users.${name} = {
isNormalUser = true;
extraGroups = optionals options.admin adminGroups;
inherit uid;
};
systemd.slices."user-${uid}".sliceConfig = {
CPUQuota = "50%";
CPUWeight = "10";
IOAccounting = true;
IOWeight = "10";
MemoryMax = "2G";
MemorySwapMax = "1G";
TasksMax = "100";
};
};
in
map (user: mkUser user.name user.uid user.options) [
{
name = "error";
uid = 1000;
options.admin = true;
}
{
name = "javalsai";
uid = 1001;
options.admin = true;
}
{
name = "deadvey";
uid = 1002;
options.admin = true;
}
{
name = "vectorum";
uid = 1003;
}
]