diff --git a/modules/default.nix b/modules/default.nix index 1c47ee4..2ca12ec 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -8,22 +8,14 @@ ]; config = { - base = { - enable = lib.mkDefault true; - services.enable = lib.mkDefault true; - programs.enable = lib.mkDefault true; - }; - - home.enable = lib.mkDefault true; - hypr.enable = lib.mkDefault true; - i3.enable = lib.mkDefault true; - packages = { enable = lib.mkDefault true; - programming.enable = lib.mkDefault true; - mudding.enable = lib.mkDefault true; - gaming.enable = lib.mkDefault true; + core.enable = lib.mkDefault true; gui.enable = lib.mkDefault true; + programming.enable = lib.mkDefault true; + hacking.enable = lib.mkDefault false; + mudding.enable = lib.mkDefault false; + gaming.enable = lib.mkDefault false; }; }; } diff --git a/modules/programs.nix b/modules/programs.nix index 3bcf384..e5ac218 100644 --- a/modules/programs.nix +++ b/modules/programs.nix @@ -1,16 +1,97 @@ -{ - environment.systemPackages = with pkgs; [ - neovim - wget - git - screen - curl - firefox - fish - ]; - - programs.sway = { - enable = true; - wrapperFeatures.gtk = true; - }; +{ inputs, pkgs, lib, config, ...}: { + + environment.systemPackages = with pkgs; + ( + # Core packages + if config.packages.core.enable + then [ + vim + wget + git + screen + curl + foot + tmux + ] else [] + ) + ++ ( + if config.packages.gui.enable + then [ + # Note taking + logseq + + # Communication + mattermost-desktop + slack + zoom-us + vesktop + signal-desktop + teamspeak_client + + # Browsing + firefox + tor-browser + + # Music + spotify + strawberry-qt6 + + # Utilities + grim + hyfetch + wofi + waybar + swaynotificationcenter + udiskie + swayidle + hyprlock + pulseaudio + gimp + ] else [] + ) + ++ ( + if config.packages.programming.enable + then [ + neovim + lua + libgcc + php + python3 + serverless + jwt-cli + jq + ddev + cloc + ansible + ] else [] + ) + ++ ( + if config.packages.hacking.enable + then [ + metasploit + exploitdb + ghidra + wireshark + nmap + hashcat + dirstalk + ] else [] + + ++ ( + if config.packages.mudding.enable + then [ + mudlet + ] else [] + ) + ++ ( + if config.packages.gaming.enable + then [ + steam + protonup-qt + prismlauncher + mudlet + widelands + wesnoth + ] else [] + ); } diff --git a/modules/users/crow.nix b/modules/users/crow.nix index 37e9778..655681e 100644 --- a/modules/users/crow.nix +++ b/modules/users/crow.nix @@ -1,15 +1,7 @@ { lib, config, pkgs, ...}: { users.users.crow = { isNormalUser = true; + initialPassword = "changeme"; extraGroups = [ "wheel" "networkmanager" ]; }; - - home-manager.users.crow = { - home.username = "crow"; - home.homeDirectory = "/home/crow"; - - home.stateVersion = "24.05"; - - programs.home-manager.enable = true; - }; }