nixos-config/users/erwin/default.nix

40 lines
1.1 KiB
Nix

{ pkgs, config, lib, ... }:
with lib;
let
cfg = config.eboskma.users.erwin;
in
{
options.eboskma.users.erwin = {
enable = mkEnableOption "user account for Erwin";
home = mkEnableOption "home profile";
work = mkEnableOption "work profile";
server = mkEnableOption "server profile";
terminal = mkOption {
type = types.str;
default = "foot";
description = "Terminal emulator to use. Specify the .desktop filename, e.g. 'foot' or 'Alacritty'";
};
};
imports = [ ./home.nix ./server.nix ./work.nix ];
config = mkIf cfg.enable {
users.users.erwin = {
isNormalUser = true;
home = "/home/erwin";
extraGroups = [ "wheel" "adm" "audio" "video" "dialout" "input" ]
++ (optional config.hardware.i2c.enable config.hardware.i2c.group);
shell = config.home-manager.users.erwin.programs.nushell.package;
openssh.authorizedKeys.keyFiles = [
(pkgs.fetchurl {
url = "https://github.com/eboskma.keys";
sha256 = "uwK4FSLSHiwCJU9U7RBFHIoCmr7uUQLM0JM1u0bi4xo=";
})
];
};
nix.settings.allowed-users = [ "erwin" ];
};
}