Joey Hafner 4e9d6dec6a
Refactor flake:
- Delete homeManagerConfigurations from flake.
- Delete laptop nixosConfiguration.
- Delete `home-manager/` and `nixos/` directories.
- Switch from one general "vars" attrset for variables to using built-for-purpose attrsets for variables, each declared where it makes most sense (e.g. the "sys" attrset will be used for system-specific attributes).
- Create `systems/` directory for root-level system configurations and `modules/` directory for re-usable config files.
- Consolidate most app and system configuration into the `desktop-environment.nix` and `terminal-environment.nix` files.
- Standardize all `.nix` files to nixos config nodes, as opposed to home-manager. May reverse this decision.
- Use `${sys.username}` for the username of the primary user of the system.
- Use `${usr.${sys.username}}` for attributes related to that user (e.g. realname, email).
2025-01-08 12:04:28 -08:00

31 lines
734 B
Nix

{ pkgs, ... }: {
# Enable passwordless sudo
security.sudo = {
enable = true;
extraRules = [{
commands = [
{
command = "ALL";
options = [ "NOPASSWD" ];
}
];
groups = [ "wheel" ];
}];
};
# Configure user
programs.zsh.enable = true;
users.users.joey = {
isNormalUser = true;
shell = pkgs.zsh;
description = "joey";
extraGroups = [ "networkmanager" "wheel" "input" ];
openssh.authorizedKeys.keys = let
authorizedKeys = pkgs.fetchurl {
url = "https://github.com/Jafner.keys";
sha256 = "1i3Vs6mPPl965g3sRmbXGzx6zQBs5geBCgNx2zfpjF4=";
};
in pkgs.lib.splitString "\n" (builtins.readFile authorizedKeys);
};
}