2024-05-23 19:02:20 +00:00
|
|
|
{ config, desktop, lib, pkgs, sshMatrix, ... }:
|
2023-09-25 18:05:07 +00:00
|
|
|
let
|
2024-05-23 19:02:20 +00:00
|
|
|
ifExists = groups: builtins.filter (group: builtins.hasAttr group config.users.groups) groups;
|
2023-09-25 18:05:07 +00:00
|
|
|
in
|
|
|
|
{
|
2024-05-23 19:02:20 +00:00
|
|
|
# Only include desktop components if one is supplied.
|
|
|
|
imports = lib.optional (builtins.isString desktop) ./desktop.nix;
|
2023-09-25 18:05:07 +00:00
|
|
|
|
|
|
|
environment.systemPackages = with pkgs; [
|
2024-05-23 19:02:20 +00:00
|
|
|
yadm # Terminal dot file manager
|
|
|
|
neovim
|
2023-09-25 18:05:07 +00:00
|
|
|
];
|
|
|
|
|
|
|
|
users.users.gburd = {
|
2024-05-23 19:02:20 +00:00
|
|
|
description = "Greg Burd";
|
2023-09-25 18:05:07 +00:00
|
|
|
extraGroups = [
|
|
|
|
"audio"
|
|
|
|
"input"
|
|
|
|
"networkmanager"
|
|
|
|
"users"
|
|
|
|
"video"
|
|
|
|
"wheel"
|
2024-05-23 19:02:20 +00:00
|
|
|
]
|
|
|
|
++ ifExists [
|
2023-09-25 18:05:07 +00:00
|
|
|
"docker"
|
|
|
|
"podman"
|
2024-08-15 05:29:41 +00:00
|
|
|
config.services.kubo.group
|
2023-09-25 18:05:07 +00:00
|
|
|
];
|
|
|
|
|
2024-05-23 19:02:20 +00:00
|
|
|
# mkpasswd -m sha-512
|
|
|
|
# TODO: hashedPasswordFile = config.sops.secrets.gburd-password.path;
|
|
|
|
hashedPassword = "$6$RDOZHdTwt.BuOR4C$fYDkyb3yppbgX0ewPbsKabS2u9W.wyrRJONQPtugrO/gBJCzsWkfVIVYOAj07Qar1yqeYJBlBkYSFAgGe5ssw.";
|
2023-09-25 18:05:07 +00:00
|
|
|
homeMode = "0755";
|
|
|
|
isNormalUser = true;
|
2024-05-23 19:02:20 +00:00
|
|
|
openssh.authorizedKeys.keys = sshMatrix.groups.privileged_users;
|
2023-09-25 18:05:07 +00:00
|
|
|
packages = [ pkgs.home-manager ];
|
|
|
|
shell = pkgs.fish;
|
|
|
|
};
|
|
|
|
|
|
|
|
sops.secrets.gburd-password = {
|
|
|
|
sopsFile = ../../secrets.yaml;
|
|
|
|
neededForUsers = true;
|
|
|
|
};
|
|
|
|
|
2024-08-15 05:29:41 +00:00
|
|
|
# https://github.com/Mic92/envfs
|
|
|
|
services.envfs.enable = true;
|
|
|
|
# https://wiki.nixos.org/wiki/IPFS
|
|
|
|
#kubo.enable = true;
|
|
|
|
# a location service `where-am-i`
|
2023-09-25 18:05:07 +00:00
|
|
|
services.geoclue2.enable = true;
|
|
|
|
}
|