treefmt / nix fmt (pull_request) Successful in 4s
build_systems / prebuild-common-x86-64-v3 (pull_request) Successful in 25s
build_systems / build-portal-1 (pull_request) Successful in 16s
build_systems / build-bob (pull_request) Successful in 33s
test ebook search / test-ebook-search (pull_request) Successful in 1m6s
build_systems / build-rhapsody-in-green (pull_request) Successful in 37s
build_systems / build-brain (pull_request) Successful in 41s
build_systems / build-jeeves (pull_request) Successful in 1m16s
treefmt / nix fmt (push) Successful in 2s
build_systems / prebuild-common-x86-64-v3 (push) Successful in 5s
build_systems / build-portal-1 (push) Successful in 16s
build_systems / build-bob (push) Successful in 25s
build_systems / build-brain (push) Successful in 28s
build_systems / build-rhapsody-in-green (push) Successful in 30s
test ebook search / test-ebook-search (push) Successful in 1m4s
build_systems / build-jeeves (push) Successful in 58s
53 lines
1.0 KiB
Nix
53 lines
1.0 KiB
Nix
{
|
|
pkgs,
|
|
config,
|
|
...
|
|
}:
|
|
let
|
|
ifTheyExist = groups: builtins.filter (group: builtins.hasAttr group config.users.groups) groups;
|
|
in
|
|
{
|
|
|
|
sops.secrets.math_password = {
|
|
sopsFile = ../secrets.yaml;
|
|
neededForUsers = true;
|
|
};
|
|
|
|
users = {
|
|
users.math = {
|
|
isNormalUser = true;
|
|
|
|
hashedPasswordFile = "${config.sops.secrets.math_password.path}";
|
|
|
|
shell = pkgs.zsh;
|
|
group = "math";
|
|
openssh.authorizedKeys.keys = [
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJH03VzDbUhzfhvwD+OsYh6GobODYaI9jdNdzWQoqFsp matth@Jove" # cspell:disable-line
|
|
];
|
|
extraGroups = [
|
|
"audio"
|
|
"video"
|
|
"wheel"
|
|
"users"
|
|
]
|
|
++ ifTheyExist [
|
|
"dialout"
|
|
"docker"
|
|
"hass"
|
|
"libvirtd"
|
|
"networkmanager"
|
|
"plugdev"
|
|
"scanner"
|
|
"transmission"
|
|
"uaccess"
|
|
"wireshark"
|
|
];
|
|
uid = 1003;
|
|
};
|
|
|
|
groups.math.gid = 1003;
|
|
};
|
|
|
|
home-manager.users.math = import ./systems/${config.networking.hostName}.nix;
|
|
}
|