diff --git a/README.md b/README.md index 3bc2d5c..4521a54 100755 --- a/README.md +++ b/README.md @@ -17,8 +17,7 @@ each host should have these files: ## todo - move common config such as bootloader and networking settings to [`default.nix`](./default.nix) or some other common spot - - multi architecture configuration ([nix-systems](https://github.com/nix-systems/nix-systems)?) + - multi architecture configuration - bitwarden - - sddm cursors no work :( - - setup editorconfig everywhere - - divide steam and gamemode? \ No newline at end of file + - qt themes? + - sddm cursors no work :( \ No newline at end of file diff --git a/config/dunst.conf b/config/dunst.conf index 12d9efc..328b280 100644 --- a/config/dunst.conf +++ b/config/dunst.conf @@ -3,7 +3,7 @@ frame_color = "#89B4FA" separator_color= frame - follow = "mouse" + follow = none width = 300 height = 145 origin = top-right diff --git a/flake.lock b/flake.lock index 6cc536e..377c687 100644 --- a/flake.lock +++ b/flake.lock @@ -34,22 +34,6 @@ "type": "github" } }, - "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, "hardware": { "locked": { "lastModified": 1711352745, @@ -87,10 +71,7 @@ }, "hyprcursor": { "inputs": { - "hyprlang": [ - "hyprland", - "hyprlang" - ], + "hyprlang": "hyprlang_2", "nixpkgs": [ "hyprland", "nixpkgs" @@ -101,11 +82,11 @@ ] }, "locked": { - "lastModified": 1713612213, - "narHash": "sha256-zJboXgWNpNhKyNF8H/3UYzWkx7w00TOCGKi3cwi+tsw=", + "lastModified": 1711466786, + "narHash": "sha256-sArxGyUBiCA1in+q6t0QqT+ZJiZ1PyBp7cNPKLmREM0=", "owner": "hyprwm", "repo": "hyprcursor", - "rev": "cab4746180f210a3c1dd3d53e45c510e309e90e1", + "rev": "d3876f34779cc03ee51e4aafc0d00a4f187c7544", "type": "github" }, "original": { @@ -118,14 +99,14 @@ "inputs": { "hyprlang": "hyprlang", "nixpkgs": "nixpkgs_2", - "systems": "systems_2" + "systems": "systems" }, "locked": { - "lastModified": 1713472482, - "narHash": "sha256-7Ft5WZTMIjXOGgRCf31DZBwK6RK8xkeKlD5vFXz3gII=", + "lastModified": 1710180874, + "narHash": "sha256-ZSn3wXQuRz36Ta/L+UCFKuUVG6QpwK2QmRkPjpQprU4=", "owner": "hyprwm", "repo": "hypridle", - "rev": "7cff4581a3753154fc5b41f39a098fad49b777b1", + "rev": "4395339a2dc410bcf49f3e24f9ed3024fdb25b0a", "type": "github" }, "original": { @@ -138,19 +119,18 @@ "inputs": { "hyprcursor": "hyprcursor", "hyprland-protocols": "hyprland-protocols", - "hyprlang": "hyprlang_2", - "hyprwayland-scanner": "hyprwayland-scanner", + "hyprlang": "hyprlang_3", "nixpkgs": "nixpkgs_3", "systems": "systems_3", "wlroots": "wlroots", "xdph": "xdph" }, "locked": { - "lastModified": 1714084064, - "narHash": "sha256-WUEFYyOzgWOr6pK2/1fCohUUF77wuj1zIeP8jvPL0LU=", + "lastModified": 1711673030, + "narHash": "sha256-atpS9c2LR56DIURlDLmuKHGmVQj9Xky2aETGhdTwMKg=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "1d40af64d352bd5a87c7d53a52707fc5cfc6940e", + "rev": "fcd9d77b642c0cd45cae61cf10ed1924f2e7945b", "type": "github" }, "original": { @@ -205,15 +185,14 @@ "nixpkgs": [ "hypridle", "nixpkgs" - ], - "systems": "systems" + ] }, "locked": { - "lastModified": 1713121246, - "narHash": "sha256-502X0Q0fhN6tJK7iEUA8CghONKSatW/Mqj4Wappd++0=", + "lastModified": 1708212860, + "narHash": "sha256-nW3Zrhh9RJcMTvOcXAaKADnJM/g6tDf3121lJtTHnYo=", "owner": "hyprwm", "repo": "hyprlang", - "rev": "78fcaa27ae9e1d782faa3ff06c8ea55ddce63706", + "rev": "11d5ccda071c153dfdc18ef65338956a51cef96a", "type": "github" }, "original": { @@ -226,19 +205,17 @@ "inputs": { "nixpkgs": [ "hyprland", + "hyprcursor", "nixpkgs" ], - "systems": [ - "hyprland", - "systems" - ] + "systems": "systems_2" }, "locked": { - "lastModified": 1713121246, - "narHash": "sha256-502X0Q0fhN6tJK7iEUA8CghONKSatW/Mqj4Wappd++0=", + "lastModified": 1709914708, + "narHash": "sha256-bR4o3mynoTa1Wi4ZTjbnsZ6iqVcPGriXp56bZh5UFTk=", "owner": "hyprwm", "repo": "hyprlang", - "rev": "78fcaa27ae9e1d782faa3ff06c8ea55ddce63706", + "rev": "a685493fdbeec01ca8ccdf1f3655c044a8ce2fe2", "type": "github" }, "original": { @@ -250,17 +227,20 @@ "hyprlang_3": { "inputs": { "nixpkgs": [ - "hyprlock", + "hyprland", "nixpkgs" ], - "systems": "systems_4" + "systems": [ + "hyprland", + "systems" + ] }, "locked": { - "lastModified": 1713121246, - "narHash": "sha256-502X0Q0fhN6tJK7iEUA8CghONKSatW/Mqj4Wappd++0=", + "lastModified": 1711250455, + "narHash": "sha256-LSq1ZsTpeD7xsqvlsepDEelWRDtAhqwetp6PusHXJRo=", "owner": "hyprwm", "repo": "hyprlang", - "rev": "78fcaa27ae9e1d782faa3ff06c8ea55ddce63706", + "rev": "b3e430f81f3364c5dd1a3cc9995706a4799eb3fa", "type": "github" }, "original": { @@ -270,6 +250,28 @@ } }, "hyprlang_4": { + "inputs": { + "nixpkgs": [ + "hyprlock", + "nixpkgs" + ], + "systems": "systems_4" + }, + "locked": { + "lastModified": 1711250455, + "narHash": "sha256-LSq1ZsTpeD7xsqvlsepDEelWRDtAhqwetp6PusHXJRo=", + "owner": "hyprwm", + "repo": "hyprlang", + "rev": "b3e430f81f3364c5dd1a3cc9995706a4799eb3fa", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprlang", + "type": "github" + } + }, + "hyprlang_5": { "inputs": { "nixpkgs": "nixpkgs_5", "systems": "systems_6" @@ -290,16 +292,16 @@ }, "hyprlock": { "inputs": { - "hyprlang": "hyprlang_3", + "hyprlang": "hyprlang_4", "nixpkgs": "nixpkgs_4", "systems": "systems_5" }, "locked": { - "lastModified": 1713978374, - "narHash": "sha256-jla5Wo0Qt3NEnD0OjNj85BGw0pR4Zlz5uy8AqHH7tuE=", + "lastModified": 1711622429, + "narHash": "sha256-JwHbbmAzX1Kfq1XAs06lKbk2TZL7mH/yLczG4BaiuTs=", "owner": "hyprwm", "repo": "hyprlock", - "rev": "415262065fff0a04b229cd00165f346a86a0a73a", + "rev": "7f8c9b6addce5174af78acaf1eb1d726fc4133b5", "type": "github" }, "original": { @@ -310,16 +312,16 @@ }, "hyprpaper": { "inputs": { - "hyprlang": "hyprlang_4", + "hyprlang": "hyprlang_5", "nixpkgs": "nixpkgs_6", "systems": "systems_7" }, "locked": { - "lastModified": 1712919696, - "narHash": "sha256-93zNQy4LGFP5h/GrQJctd8cPE0VdCDsWigTOx2effrE=", + "lastModified": 1711556036, + "narHash": "sha256-z+ZgMjGC8540k3Z6Z49ZnEvbWyLGXtWPSCagMOrmuXk=", "owner": "hyprwm", "repo": "hyprpaper", - "rev": "02ee7ff3bbd9cba72f26be7b09dde4a89fc31c21", + "rev": "5838c90cd29374935930281f62bc131d8bcf2295", "type": "github" }, "original": { @@ -328,31 +330,6 @@ "type": "github" } }, - "hyprwayland-scanner": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1713989318, - "narHash": "sha256-WSsEQQxZQ+bsAWRhi1iXvP8sxgRyNtY3X1V3CfFdP5Q=", - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "rev": "1cfe2d26a82ce794fd33ec06fa022e68501c5a45", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "type": "github" - } - }, "nix-colors": { "inputs": { "base16-schemes": "base16-schemes", @@ -405,11 +382,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1712963716, - "narHash": "sha256-WKm9CvgCldeIVvRz87iOMi8CFVB1apJlkUT4GGvA0iM=", + "lastModified": 1708475490, + "narHash": "sha256-g1v0TsWBQPX97ziznfJdWhgMyMGtoBFs102xSYO4syU=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "cfd6b5fc90b15709b780a5a1619695a88505a176", + "rev": "0e74ca98a74bc7270d28838369593635a5db3260", "type": "github" }, "original": { @@ -421,11 +398,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1713714899, - "narHash": "sha256-+z/XjO3QJs5rLE5UOf015gdVauVRQd2vZtsFkaXBq2Y=", + "lastModified": 1711523803, + "narHash": "sha256-UKcYiHWHQynzj6CN/vTcix4yd1eCu1uFdsuarupdCQQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6143fc5eeb9c4f00163267708e26191d1e918932", + "rev": "2726f127c15a4cc9810843b96cad73c7eb39e443", "type": "github" }, "original": { @@ -437,11 +414,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1712963716, - "narHash": "sha256-WKm9CvgCldeIVvRz87iOMi8CFVB1apJlkUT4GGvA0iM=", + "lastModified": 1711523803, + "narHash": "sha256-UKcYiHWHQynzj6CN/vTcix4yd1eCu1uFdsuarupdCQQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "cfd6b5fc90b15709b780a5a1619695a88505a176", + "rev": "2726f127c15a4cc9810843b96cad73c7eb39e443", "type": "github" }, "original": { @@ -499,22 +476,6 @@ "type": "github" } }, - "nixpkgs_8": { - "locked": { - "lastModified": 1711163522, - "narHash": "sha256-YN/Ciidm+A0fmJPWlHBGvVkcarYWSC+s3NTPk/P+q3c=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "44d0940ea560dee511026a53f0e2e2cde489b4d4", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, "root": { "inputs": { "catppuccin-vsc": "catppuccin-vsc", @@ -527,7 +488,6 @@ "hyprpaper": "hyprpaper", "nix-colors": "nix-colors", "nixpkgs": "nixpkgs_7", - "waybar": "waybar", "waybar-catppuccin": "waybar-catppuccin" } }, @@ -636,25 +596,6 @@ "type": "github" } }, - "waybar": { - "inputs": { - "flake-compat": "flake-compat", - "nixpkgs": "nixpkgs_8" - }, - "locked": { - "lastModified": 1714680561, - "narHash": "sha256-ov7v4OaiMW6gylMFTjKXXtoxrgAjtOTHa09oFmu3B3s=", - "owner": "Alexays", - "repo": "Waybar", - "rev": "0b6476da32d181ee6b2cabdc5205a46a90521a75", - "type": "github" - }, - "original": { - "owner": "Alexays", - "repo": "Waybar", - "type": "github" - } - }, "waybar-catppuccin": { "flake": false, "locked": { @@ -674,18 +615,20 @@ "wlroots": { "flake": false, "locked": { - "lastModified": 1713731601, - "narHash": "sha256-bdcKdtLkusvv85DNuJsajZLFeq7bXp+x5AGP1Sd4wD8=", - "owner": "hyprwm", - "repo": "wlroots-hyprland", - "rev": "5c1d51c5a2793480f5b6c4341ad0797052aec2ea", - "type": "github" + "host": "gitlab.freedesktop.org", + "lastModified": 1709983277, + "narHash": "sha256-wXWIJLd4F2JZeMaihWVDW/yYXCLEC8OpeNJZg9a9ly8=", + "owner": "wlroots", + "repo": "wlroots", + "rev": "50eae512d9cecbf0b3b1898bb1f0b40fa05fe19b", + "type": "gitlab" }, "original": { - "owner": "hyprwm", - "repo": "wlroots-hyprland", - "rev": "5c1d51c5a2793480f5b6c4341ad0797052aec2ea", - "type": "github" + "host": "gitlab.freedesktop.org", + "owner": "wlroots", + "repo": "wlroots", + "rev": "50eae512d9cecbf0b3b1898bb1f0b40fa05fe19b", + "type": "gitlab" } }, "xdph": { @@ -708,11 +651,11 @@ ] }, "locked": { - "lastModified": 1713724432, - "narHash": "sha256-dtU1y4oj/0Y42oauzm93ucFg1AoqETnQ21bmXTIUng0=", + "lastModified": 1709299639, + "narHash": "sha256-jYqJM5khksLIbqSxCLUUcqEgI+O2LdlSlcMEBs39CAU=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "9ace6f969ce495185df34cc6254fb9d297765478", + "rev": "2d2fb547178ec025da643db57d40a971507b82fe", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 6037fbd..45d9f7d 100644 --- a/flake.nix +++ b/flake.nix @@ -10,8 +10,6 @@ hardware.url = "github:nixos/nixos-hardware"; nix-colors.url = "github:misterio77/nix-colors"; - waybar.url = "github:Alexays/Waybar"; - hyprland.url = "github:hyprwm/Hyprland"; hyprlock.url = "github:hyprwm/hyprlock"; hypridle.url = "github:hyprwm/hypridle"; diff --git a/hosts/goopnet-interface/default.nix b/hosts/goopnet-interface/default.nix index 9cb92c5..66f33f3 100755 --- a/hosts/goopnet-interface/default.nix +++ b/hosts/goopnet-interface/default.nix @@ -19,19 +19,18 @@ # apps firefox mpv qalculate-gtk # misc - bat file which tree prismlauncher yt-dlp ffmpeg gpu-screen-recorder gpu-screen-recorder-gtk + bat file which tree prismlauncher yt-dlp ] ++ (with pkgs.my; [ # none yet ]) ++ (with pkgs.gnome; [ # yay gnomeware!!!!!!!!!!!!!! yum - nautilus gnome-disk-utility pkgs.gnome-text-editor pkgs.baobab file-roller gnome-system-monitor loupe + nautilus gnome-disk-utility pkgs.gnome-text-editor file-roller gnome-system-monitor loupe ]); modules = { security.useDoas = true; hardware = { - bluetooth.enable = true; pipewire.enable = true; }; dev = { @@ -45,7 +44,6 @@ hypridle.enable = true; hyprpaper.enable = true; - polkit-gnome.enable = true; dunst.enable = true; rofi.enable = true; nwg-drawer.enable = true; @@ -66,7 +64,7 @@ dev.git.enable = true; # distractions distractions.discord.enable = true; - distractions.discord.vesktop = true; + distractions.discord.armcord = true; distractions.steam.enable = true; }; }; diff --git a/hosts/goopnet-interface/hardware.nix b/hosts/goopnet-interface/hardware.nix index a48c94c..e55176b 100755 --- a/hosts/goopnet-interface/hardware.nix +++ b/hosts/goopnet-interface/hardware.nix @@ -21,7 +21,8 @@ efi.canTouchEfiVariables = true; }; - # nvidia driver + # nvidia + # !! you should keep this enabled if you use wayland !! services.xserver.videoDrivers = [ "nvidia" ]; hardware.nvidia = { @@ -30,12 +31,10 @@ modesetting.enable = true; powerManagement.enable = true; - }; - boot.kernelParams = [ - # use experimental nvidia supplied framebuffer - "nvidia-drm.fbdev=1" - ]; + # this program is (respectfully) a pile of dogshit and is just bloat if using wayland + nvidiaSettings = false; + }; # VA-API hardware.opengl = { diff --git a/modules/desktop/default.nix b/modules/desktop/default.nix index d595309..84bd37b 100644 --- a/modules/desktop/default.nix +++ b/modules/desktop/default.nix @@ -13,6 +13,12 @@ in { config = mkMerge [ { + qt = { + enable = true; + platformTheme = "gnome"; + style = "adwaita-dark"; + }; + modules.desktop.fonts.enable = true; modules.desktop.fonts.baseFonts = true; } @@ -27,6 +33,8 @@ in { XDG_SESSION_TYPE = "wayland"; SDL_VIDEODRIVER = "wayland"; CLUTTER_BACKEND = "wayland"; + # this fixes cursors on nvidia, maybe move all nvidia stuff to a module? or put this in hardware + WLR_NO_HARDWARE_CURSORS = "1"; }; }) (mkIf (cfg.envProto == "x11") { diff --git a/modules/desktop/fonts.nix b/modules/desktop/fonts.nix index f170546..6fa6fd9 100644 --- a/modules/desktop/fonts.nix +++ b/modules/desktop/fonts.nix @@ -89,6 +89,7 @@ in { }; hm.gtk.enable = true; + # not the best way of writing this (imagine if `name` was named `family`...) hm.gtk.font = with cfg.fonts.sansSerif; { package = package; name = family; diff --git a/modules/desktop/hypridle.nix b/modules/desktop/hypridle.nix index 231dd50..84c7d76 100644 --- a/modules/desktop/hypridle.nix +++ b/modules/desktop/hypridle.nix @@ -14,18 +14,20 @@ in { }; config = mkIf cfg.enable { - hm.services.hypridle = let - hyprctl = "${config.modules.desktop.hyprland.package}/bin/hyprctl"; - in { + hm.services.hypridle = { enable = true; package = cfg.package; - lockCmd = "${pkgs.procps}/bin/pidof hyprlock || ${hyprctl} dispatch exec ${lib.getExe config.modules.desktop.hyprlock.package}"; - unlockCmd = "${pkgs.procps}/bin/pkill -USR1 hyprlock"; + # the `date` command doesn't work if we just call hyprlock. Huh + # workaround is telling hyprctl to dispatch to execute it + # hacky, but i couldn't care less at the moment + # TODO: change this when/if it gets patched + lockCmd = "${config.modules.desktop.hyprland.package}/bin/hyprctl dispatch exec ${lib.getExe config.modules.desktop.hyprlock.package}"; + unlockCmd = "pkill -USR1 hyprlock"; - beforeSleepCmd = "${pkgs.systemd}/bin/loginctl lock-session"; - - listeners = [ + listeners = let + hyprctl = "${config.modules.desktop.hyprland.package}/bin/hyprctl"; + in [ { timeout = 90; # 1.5 min onTimeout = "${hyprctl} dispatch dpms off"; # turn off screen @@ -33,11 +35,11 @@ in { } { timeout = 60 * 2; # 2 min - onTimeout = "${pkgs.systemd}/bin/loginctl lock-session"; # lock computer + onTimeout = "loginctl lock-session"; # lock computer } { - timeout = 60 * 30; # 30 min - onTimeout = "${pkgs.systemd}/bin/systemctl suspend"; # sleep/suspend + timeout = 60 * 30; # 15 min + onTimeout = "systemctl suspend"; # sleep/suspend } ]; }; diff --git a/modules/desktop/hyprland.nix b/modules/desktop/hyprland.nix index f37a1ba..61be900 100644 --- a/modules/desktop/hyprland.nix +++ b/modules/desktop/hyprland.nix @@ -118,27 +118,18 @@ in { windowrulev2 = [ # common popups "float, class:file-roller" - "size 1100 730, class:file-roller" "float, class:org.gnome.Loupe" - "size 1100 730, class:org.gnome.Loupe" "float, initialTitle:^Open Folder$" - "size 1100 730, initialTitle:^Open Folder$" "float, initialTitle:^Open File$" - "size 1100 730, initialTitle:^Open File$" - "float, initialTitle:^Open Files$" - "size 1100 730, initialTitle:^Open Files$" - "float, initialTitle:^Save As$" - "size 1100 730, initialTitle:^Save As$" # fix focus "stayfocused, class:^pinentry-" - "stayfocused, class:^polkit-" "stayfocused, class:^rofi-" # workspace moving "workspace 1, class:^firefox" "workspace 2, class:code-url-handler" - "workspace 4, class:vesktop" + "workspace 4, class:ArmCord" ]; blurls = [ diff --git a/modules/desktop/hyprlock.nix b/modules/desktop/hyprlock.nix index 921aeae..6120357 100644 --- a/modules/desktop/hyprlock.nix +++ b/modules/desktop/hyprlock.nix @@ -1,4 +1,4 @@ -{ lib, config, pkgs, inputs, system, ... }: +{ lib, config, inputs, system, ... }: with lib; let @@ -15,16 +15,17 @@ in { config = mkIf cfg.enable { security.pam.services.hyprlock.text = "auth include login"; + powerManagement.resumeCommands = '' + ${cfg.package} + ''; hm.programs.hyprlock = with config.colorScheme.palette; { enable = true; package = cfg.package; - general = { hide_cursor = false; no_fade_in = true; no_fade_out = true; }; - backgrounds = [ { path = toString ../../assets/lockscreen.png; @@ -32,7 +33,6 @@ in { blur_size = 6; } ]; - labels = [ { text = "cmd[update:1000] echo \"$(date +'%H:%M')\""; @@ -49,7 +49,6 @@ in { position = { x = 0; y = 10; }; } ]; - input-fields = [ { size = { width = 300; height = 28; }; diff --git a/modules/desktop/hyprpaper.nix b/modules/desktop/hyprpaper.nix index 8e00d79..4c79d38 100644 --- a/modules/desktop/hyprpaper.nix +++ b/modules/desktop/hyprpaper.nix @@ -9,7 +9,7 @@ in { package = mkOption { type = types.package; default = inputs.hyprpaper.packages.${system}.hyprpaper; - example = "pkgs.hyprpaper"; + example = "pkgs.hyperpaper"; }; }; diff --git a/modules/desktop/polkit-gnome.nix b/modules/desktop/polkit-gnome.nix deleted file mode 100644 index 818395d..0000000 --- a/modules/desktop/polkit-gnome.nix +++ /dev/null @@ -1,28 +0,0 @@ -{ lib, config, pkgs, ... }: - -with lib; -let - cfg = config.modules.desktop.polkit-gnome; -in { - options.modules.desktop.polkit-gnome = { - enable = mkEnableOption "Enable polkit-gnome, a simple polkit agent"; - }; - - config = mkIf cfg.enable { - systemd.user.services.polkit-gnome-authentication-agent-1 = { - description = "polkit-gnome-authentication-agent-1"; - - wantedBy = [ "graphical-session.target" ]; - wants = [ "graphical-session.target" ]; - after = [ "graphical-session.target" ]; - - serviceConfig = { - Type = "simple"; - ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1"; - Restart = "on-failure"; - RestartSec = 1; - TimeoutStopSec = 10; - }; - }; - }; -} diff --git a/modules/desktop/sddm.nix b/modules/desktop/sddm.nix index 1ab2038..5d7c31a 100644 --- a/modules/desktop/sddm.nix +++ b/modules/desktop/sddm.nix @@ -10,7 +10,6 @@ in { config = mkIf cfg.enable { services.xserver.enable = true; # this is needed, unfortunately! - services.xserver.excludePackages = [ pkgs.xterm ]; # prevents xterm on wayland and x environment.systemPackages = with pkgs; [ config.modules.desktop.themes.sddmTheme.package libsForQt5.qt5.qtsvg diff --git a/modules/desktop/themes/default.nix b/modules/desktop/themes/default.nix index 85f48dc..a4692b3 100644 --- a/modules/desktop/themes/default.nix +++ b/modules/desktop/themes/default.nix @@ -67,19 +67,6 @@ in { theme = cfg.gtkTheme; }; - hm.qt = { - enable = true; - platformTheme = "gtk"; - style.name = "gtk2"; - }; - - hm.home.pointerCursor = { - gtk.enable = true; - x11.enable = true; - name = cfg.cursorTheme.name; - package = cfg.cursorTheme.package; - }; - hm.services.dunst.iconTheme = { name = cfg.iconTheme.name; package = cfg.iconTheme.package; diff --git a/modules/desktop/waybar.nix b/modules/desktop/waybar.nix index e91dd5a..eaba66f 100644 --- a/modules/desktop/waybar.nix +++ b/modules/desktop/waybar.nix @@ -1,23 +1,17 @@ -{ lib, config, pkgs, inputs, system, ... }: +{ lib, config, pkgs, inputs, ... }: with lib; let cfg = config.modules.desktop.waybar; in { options.modules.desktop.waybar = { - enable = mkEnableOption "Enable Waybar, a highly customizable wayland bar for wlroots compositors."; - package = mkOption { - type = types.package; - default = inputs.waybar.packages.${system}.default; - example = "pkgs.waybar"; - }; + enable = mkEnableOption "Enable Waybar, a lightweight desktop environment based on GTK+"; }; config = mkIf cfg.enable { - hm.wayland.windowManager.hyprland.settings.exec-once = [ "${lib.getExe cfg.package}" ]; + hm.wayland.windowManager.hyprland.settings.exec-once = [ "${lib.getExe pkgs.waybar}" ]; hm.programs.waybar = { enable = true; - package = cfg.package; style = builtins.concatStringsSep "\n" [ "@import \"${inputs.waybar-catppuccin}/themes/mocha.css\";" (lib.readFile ../../config/waybar.css) @@ -135,7 +129,8 @@ in { "(\\S+\\.zig\\s.*)" = " $1"; "(\\S+\\.rs\\s.*)" = " $1"; "(\\S+\\.hs\\s.*)" = " $1"; - ".*Discord \\| (.*)" = "$1"; + ".*Discord | (.*) | .*" = "$1 - ArmCord"; + #"(.*) - ArmCord" = "$1"; }; separate-outputs = true; }; diff --git a/modules/hardware/bluetooth.nix b/modules/hardware/bluetooth.nix deleted file mode 100644 index e121d64..0000000 --- a/modules/hardware/bluetooth.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ pkgs, config, lib, ... }: - -with lib; -let - cfg = config.modules.hardware.bluetooth; -in { - options.modules.hardware.bluetooth = { - enable = mkEnableOption "Enable bluetooth, a short-range communication technology"; - }; - - config = mkIf cfg.enable { - hardware.bluetooth.enable = true; - hardware.bluetooth.powerOnBoot = true; - - # frontend - services.blueman.enable = true; - hm.services.blueman-applet.enable = true; - }; -} diff --git a/modules/software/dev/git.nix b/modules/software/dev/git.nix index 0ff90a9..7a218a5 100644 --- a/modules/software/dev/git.nix +++ b/modules/software/dev/git.nix @@ -33,7 +33,16 @@ in { ]; aliases = { - graph = ''log --graph --color --pretty=format:"%C(yellow)%H%C(green)%d%C(reset)%n%x20%cd%n%x20%cn%x20(%ce)%n%x20%s%n"''; + ranked-authors = "!git authors | sort | uniq -c | sort -n"; + emails = '' + !git log --format="%aE" | sort -u + ''; + email-domains = '' + !git log --format="%aE" | awk -F'@' '{print $2}' | sort -u + ''; + graph = '' + log --graph --color --pretty=format:"%C(yellow)%H%C(green)%d%C(reset)%n%x20%cd%n%x20%cn%x20(%ce)%n%x20%s%n" + ''; }; extraConfig = { diff --git a/modules/software/distractions/discord.nix b/modules/software/distractions/discord.nix index 1c1c8d9..8dd2020 100644 --- a/modules/software/distractions/discord.nix +++ b/modules/software/distractions/discord.nix @@ -6,11 +6,11 @@ let in { options.modules.software.distractions.discord = { enable = mkEnableOption "Enable discord, a social messaging app"; - vesktop = mkEnableOption "Use vesktop, an alternative discord client."; + armcord = mkEnableOption "Use armcord, an alternative discord client."; }; config = mkIf cfg.enable (mkMerge [ - (mkIf (!cfg.vesktop) { + (mkIf (!cfg.armcord) { user.packages = let flags = [ @@ -36,8 +36,8 @@ in { }); in [ discord ]; }) - (mkIf cfg.vesktop { - user.packages = with pkgs; [ vesktop ]; + (mkIf cfg.armcord { + user.packages = with pkgs; [ armcord ]; }) ]); } \ No newline at end of file diff --git a/modules/software/distractions/steam.nix b/modules/software/distractions/steam.nix index 237fc5f..7a21932 100644 --- a/modules/software/distractions/steam.nix +++ b/modules/software/distractions/steam.nix @@ -10,21 +10,11 @@ in { config = mkIf cfg.enable { programs.steam.enable = true; - - # optimize linux system performance on demand - # https://github.com/FeralInteractive/gamemode - user.extraGroups = [ "gamemode" ]; programs.gamemode = { enable = true; enableRenice = true; - settings = { - custom = { - start = "${pkgs.libnotify}/bin/notify-send --app-name GameMode 'GameMode started'"; - end = "${pkgs.libnotify}/bin/notify-send --app-name GameMode 'GameMode ended'"; - }; - }; + settings = {}; }; - programs.gamescope = { enable = true; capSysNice = true; @@ -33,7 +23,6 @@ in { enable = true; args = [ "-W 1920" "-H 1080" "-r 60" "--expose-wayland" "-e" ]; }; - user.packages = [ pkgs.protontricks pkgs.steam-run ]; }; } \ No newline at end of file diff --git a/modules/user.nix b/modules/user.nix index 03170be..970ac2d 100644 --- a/modules/user.nix +++ b/modules/user.nix @@ -33,11 +33,5 @@ with lib.my; trusted-users = users; allowed-users = users; }; - - users.users.root = { - packages = [ pkgs.shadow ]; - shell = pkgs.shadow; - hashedPassword = "!"; - }; }; }