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