My Nix Configuration
1{ 2 pkgs, 3 lib, 4 config, 5 ... 6}: 7let 8 cfg = config.py.profiles.gui; 9 inherit (lib) mkEnableOption mkIf mkDefault; 10in 11{ 12 options.py.profiles.gui.enable = mkEnableOption "GUI Profile"; 13 config = mkIf cfg.enable { 14 home.sessionVariables = { 15 XDG_CURRENT_DESKTOP = "sway"; 16 }; 17 py = { 18 gui.enable = true; 19 programs = { 20 chromium.enable = mkDefault true; 21 firefox.enable = mkDefault true; 22 ghostty.enable = mkDefault true; 23 kitty.enable = mkDefault false; 24 obs.enable = mkDefault true; 25 vscodium.enable = mkDefault false; 26 wlogout.enable = mkDefault true; 27 zed-editor.enable = mkDefault true; 28 }; 29 services = { 30 gpg-agent.enable = mkDefault true; 31 kanshi.enable = mkDefault true; 32 kdeconnect.enable = mkDefault true; 33 mako.enable = mkDefault true; 34 swayidle.enable = mkDefault true; 35 syncthing.enable = mkDefault false; 36 }; 37 }; 38 home.packages = with pkgs; [ 39 chatterino2 40 equibop 41 grim 42 krita 43 libappindicator 44 libappindicator-gtk3 45 lutris 46 prismlauncher 47 pwvucontrol 48 py.olympus 49 satty 50 slurp 51 sway-launcher-desktop 52 ueberzug 53 ]; 54 }; 55}