diff --git a/homes/aarch64-darwin/evanreichard@mac-va-mbp-personal/README.md b/homes/aarch64-darwin/evanreichard@mac-va-mbp-personal/README.md deleted file mode 100755 index 2e30493..0000000 --- a/homes/aarch64-darwin/evanreichard@mac-va-mbp-personal/README.md +++ /dev/null @@ -1,40 +0,0 @@ -# Nix Home Manager Configuration - -## Upgrade - -```bash -# Update System Channels -sudo nix-channel --add https://nixos.org/channels/nixpkgs-24.11-darwin nixpkgs -sudo nix-channel --update - -# Update Home Manager -nix-channel --add https://github.com/nix-community/home-manager/archive/release-24.11.tar.gz home-manager -nix-channel --update - -# Link Repo -ln -s /Users/evanreichard/Development/git/personal/nix/home-manager ~/.config/home-manager - -# Build Home Manager -home-manager switch -``` - -## Clean Garbage - -NOTE: This will remove previous generations - -```bash -sudo nix-collect-garbage --delete-old -nix-collect-garbage --delete-old -``` - -## OS Update - -`/etc/bashrc` may get overridden. To properly load Nix, prepend the following: - -```bash -# Nix -if [ -e '/nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh' ]; then - . '/nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh' -fi -# End Nix -``` diff --git a/homes/aarch64-linux/evanreichard@lin-va-mbp-personal/README.md b/homes/aarch64-linux/evanreichard@lin-va-mbp-personal/README.md deleted file mode 100755 index 2e30493..0000000 --- a/homes/aarch64-linux/evanreichard@lin-va-mbp-personal/README.md +++ /dev/null @@ -1,40 +0,0 @@ -# Nix Home Manager Configuration - -## Upgrade - -```bash -# Update System Channels -sudo nix-channel --add https://nixos.org/channels/nixpkgs-24.11-darwin nixpkgs -sudo nix-channel --update - -# Update Home Manager -nix-channel --add https://github.com/nix-community/home-manager/archive/release-24.11.tar.gz home-manager -nix-channel --update - -# Link Repo -ln -s /Users/evanreichard/Development/git/personal/nix/home-manager ~/.config/home-manager - -# Build Home Manager -home-manager switch -``` - -## Clean Garbage - -NOTE: This will remove previous generations - -```bash -sudo nix-collect-garbage --delete-old -nix-collect-garbage --delete-old -``` - -## OS Update - -`/etc/bashrc` may get overridden. To properly load Nix, prepend the following: - -```bash -# Nix -if [ -e '/nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh' ]; then - . '/nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh' -fi -# End Nix -``` diff --git a/homes/x86_64-linux/evanreichard@lin-va-utility/default.nix b/homes/x86_64-linux/evanreichard@lin-va-utility/default.nix new file mode 100755 index 0000000..ad5d6d3 --- /dev/null +++ b/homes/x86_64-linux/evanreichard@lin-va-utility/default.nix @@ -0,0 +1,99 @@ +{ pkgs, lib, config, namespace, osConfig, ... }: +let + inherit (lib.${namespace}) enabled; +in +{ + home.stateVersion = "24.11"; + + reichard = { + user = { + enable = true; + inherit (config.snowfallorg.user) name; + }; + + services = { + ssh-agent = enabled; + fusuma = enabled; + swww = enabled; + sops = { + enable = true; + defaultSopsFile = lib.snowfall.fs.get-file "secrets/default.yaml"; + sshKeyPaths = [ "${config.home.homeDirectory}/.ssh/id_ed25519" ]; + }; + }; + + programs = { + graphical = { + wms.hyprland = enabled; + ghostty = enabled; + ghidra = enabled; + browsers.firefox = { + enable = true; + gpuAcceleration = true; + hardwareDecoding = true; + }; + }; + + terminal = { + btop = enabled; + direnv = enabled; + git = enabled; + k9s = enabled; + nvim = enabled; + }; + }; + }; + + # home.packages = with pkgs; [ + # catppuccin-gtk + # ]; + + dconf = { + settings = { + "org/gnome/desktop/interface" = { + color-scheme = "prefer-dark"; + cursor-theme = "catppuccin-macchiato-mauve-cursors"; + cursor-size = 24; + # enable-hot-corners = false; + # font-name = osConfig.${namespace}.system.fonts.default; + # gtk-theme = cfg.theme.name; + # icon-theme = cfg.icon.name; + }; + }; + }; + + + home.pointerCursor = { + # x11.enable = true; + gtk.enable = true; + name = "catppuccin-macchiato-mauve-cursors"; + package = pkgs.catppuccin-cursors.macchiatoMauve; + size = 24; + }; + + # Kubernetes Secrets + sops.secrets = lib.mkIf osConfig.${namespace}.security.sops.enable { + rke2_kubeconfig = { + path = "${config.home.homeDirectory}/.kube/rke2"; + }; + }; + + # Global Packages + # programs.jq = enabled; + # programs.pandoc = enabled; + # home.packages = with pkgs; [ + # android-tools + # imagemagick + # mosh + # python311 + # texliveSmall # Pandoc PDF Dep + # google-cloud-sdk + # tldr + # ]; + + # SQLite Configuration + home.file.".sqliterc".text = '' + .headers on + .mode column + ''; +} diff --git a/systems/x86_64-linux/lin-va-utility/default.nix b/systems/x86_64-linux/lin-va-utility/default.nix index 5da1119..1a0fdb7 100755 --- a/systems/x86_64-linux/lin-va-utility/default.nix +++ b/systems/x86_64-linux/lin-va-utility/default.nix @@ -1,57 +1,43 @@ -{ pkgs, ... }: - +{ namespace, lib, ... }: let - home-manager = builtins.fetchTarball { - url = "https://github.com/nix-community/home-manager/archive/release-24.11.tar.gz"; - sha256 = "156hc11bb6xiypj65q6gzkhw1gw31dwv6dfh6rnv20hgig1sbfld"; - }; + inherit (lib.${namespace}) enabled; in { - imports = [ - "${home-manager}/nixos" - ]; + system.stateVersion = "24.11"; + time.timeZone = "America/New_York"; - # Enable Graphics - hardware.graphics = { - enable = true; - enable32Bit = true; - extraPackages = with pkgs; [ vaapiIntel intel-media-driver ]; + reichard = { + nix = enabled; + + system = { + boot = { + enable = true; + silentBoot = true; + }; + networking = enabled; + }; + + hardware = { + opengl = { + enable = true; + enable32Bit = true; # Necessary? + enableIntel = true; + }; + }; + + services = { + avahi = enabled; + ydotool = enabled; + }; + + virtualisation = { + podman = enabled; + }; + + programs = { + graphical = { + wms.hyprland = enabled; + }; + }; }; - - # User Configuration - users.users.evanreichard = { - isNormalUser = true; - home = "/home/evanreichard"; - group = "evanreichard"; - extraGroups = [ "wheel" "networkmanager" "video" ]; - shell = pkgs.bash; - }; - users.groups.evanreichard = { }; - - # Home Manager - home-manager = { - useGlobalPkgs = true; - useUserPackages = true; - users.evanreichard = import ../home-manager/home.nix; - }; - - # Enable HyprLand - programs.hyprland = { - enable = true; - withUWSM = true; - }; - - # Networking Configuration - networking.firewall = { - enable = true; - }; - - # System Packages - environment.systemPackages = with pkgs; [ - ghostty - htop - tmux - vim - wget - ]; }