From be10c5e749a581a14cfc29ff0df413ff1ce19f2d Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Thu, 2 May 2024 17:49:16 -0700 Subject: [PATCH 01/11] thermald --- config/waybar.css | 7 ------- hosts/goopnet-interface/hardware.nix | 3 +++ 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/config/waybar.css b/config/waybar.css index b3bad77..305d5a1 100644 --- a/config/waybar.css +++ b/config/waybar.css @@ -6,11 +6,8 @@ window#waybar { color: @text; - /*background: alpha(@base, 0.6);*/ background: @base; border-radius: 1em; - /*font-family: VictorMono, Iosevka Nerd Font, Noto Sans CJK;*/ - /*font-family: 'Atkinson Hyperlegible', FontAwesome, Noto Sans CJK;*/ font-family: CozetteVector, FontAwesome, Noto Sans CJK; font-size: 13px; font-style: normal; @@ -82,10 +79,6 @@ window#waybar.floating #window { color: @lavender; } -#network { - color: @sapphire; -} - #pulseaudio { color: @pink; } diff --git a/hosts/goopnet-interface/hardware.nix b/hosts/goopnet-interface/hardware.nix index a48c94c..3b2d9b0 100755 --- a/hosts/goopnet-interface/hardware.nix +++ b/hosts/goopnet-interface/hardware.nix @@ -21,6 +21,9 @@ efi.canTouchEfiVariables = true; }; + # thermald proactively prevents overheating on intel CPUs and works well with other tools + services.thermald.enable = true; + # nvidia driver services.xserver.videoDrivers = [ "nvidia" ]; From f674ba4cefb1f5ff3954e0c9fe6d61e63630bbc8 Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Thu, 2 May 2024 17:57:45 -0700 Subject: [PATCH 02/11] update todo --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 3bc2d5c..e210d13 100755 --- a/README.md +++ b/README.md @@ -21,4 +21,5 @@ each host should have these files: - bitwarden - sddm cursors no work :( - setup editorconfig everywhere - - divide steam and gamemode? \ No newline at end of file + - divide steam and gamemode? + - laptop specific configuration (power profiles daemon, battery, etc) \ No newline at end of file From 5da49c7d64b23517f885bf7bd572b17e5803f46f Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Thu, 2 May 2024 18:18:17 -0700 Subject: [PATCH 03/11] moar apps --- hosts/goopnet-interface/default.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/hosts/goopnet-interface/default.nix b/hosts/goopnet-interface/default.nix index 9cb92c5..7565d14 100755 --- a/hosts/goopnet-interface/default.nix +++ b/hosts/goopnet-interface/default.nix @@ -9,7 +9,7 @@ # archives zip xz unzip p7zip zstd # utils - ripgrep jq libqalculate + ffmpeg ripgrep jq libqalculate # nix nix-output-monitor # system @@ -18,8 +18,10 @@ strace ltrace lsof # apps firefox mpv qalculate-gtk + # compatibility + wineWowPackages.waylandFull winetricks # misc - bat file which tree prismlauncher yt-dlp ffmpeg gpu-screen-recorder gpu-screen-recorder-gtk + bat file which tree prismlauncher yt-dlp gpu-screen-recorder gpu-screen-recorder-gtk ] ++ (with pkgs.my; [ # none yet ]) ++ (with pkgs.gnome; [ From b8e06f6c62b32920ab1178fe9d68dd7525f51b63 Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Thu, 2 May 2024 18:24:20 -0700 Subject: [PATCH 04/11] window Rule --- modules/desktop/hyprland.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/modules/desktop/hyprland.nix b/modules/desktop/hyprland.nix index f37a1ba..660b5b5 100644 --- a/modules/desktop/hyprland.nix +++ b/modules/desktop/hyprland.nix @@ -130,6 +130,8 @@ in { "float, initialTitle:^Save As$" "size 1100 730, initialTitle:^Save As$" + "float, class:\.exe$" + # fix focus "stayfocused, class:^pinentry-" "stayfocused, class:^polkit-" From ec581500f9ea8c9d8d27341712b540871ae415b4 Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Thu, 2 May 2024 19:16:22 -0700 Subject: [PATCH 05/11] add krita --- hosts/goopnet-interface/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hosts/goopnet-interface/default.nix b/hosts/goopnet-interface/default.nix index 7565d14..52ed123 100755 --- a/hosts/goopnet-interface/default.nix +++ b/hosts/goopnet-interface/default.nix @@ -17,7 +17,7 @@ # debug strace ltrace lsof # apps - firefox mpv qalculate-gtk + firefox mpv qalculate-gtk krita # compatibility wineWowPackages.waylandFull winetricks # misc From 68024232e20cf48e0753c11d33a407f510733e3c Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Thu, 2 May 2024 20:34:22 -0700 Subject: [PATCH 06/11] enable gvfs --- modules/desktop/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules/desktop/default.nix b/modules/desktop/default.nix index d595309..6a98996 100644 --- a/modules/desktop/default.nix +++ b/modules/desktop/default.nix @@ -15,6 +15,10 @@ in { { modules.desktop.fonts.enable = true; modules.desktop.fonts.baseFonts = true; + + # gnome virtual file system + # required for stuff like network drives and trash in nautilus and thunar + services.gvfs.enable = true; } (mkIf (cfg.envProto == "wayland") { environment.sessionVariables = { From 2b9d3085d074550b8a4d1909dc3911d2bada29f9 Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Thu, 2 May 2024 20:56:03 -0700 Subject: [PATCH 07/11] change a comment --- modules/desktop/default.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/modules/desktop/default.nix b/modules/desktop/default.nix index 6a98996..976c9ca 100644 --- a/modules/desktop/default.nix +++ b/modules/desktop/default.nix @@ -16,8 +16,7 @@ in { modules.desktop.fonts.enable = true; modules.desktop.fonts.baseFonts = true; - # gnome virtual file system - # required for stuff like network drives and trash in nautilus and thunar + # mounting and trash functionality, the recommended solution for most file managers services.gvfs.enable = true; } (mkIf (cfg.envProto == "wayland") { From 34e16f9ccff3d97c963a8baf975cc0799c9938d9 Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Thu, 2 May 2024 22:53:42 -0700 Subject: [PATCH 08/11] vaapi mode activated --- hosts/goopnet-interface/hardware.nix | 2 ++ modules/desktop/default.nix | 1 + 2 files changed, 3 insertions(+) diff --git a/hosts/goopnet-interface/hardware.nix b/hosts/goopnet-interface/hardware.nix index 3b2d9b0..ecca96a 100755 --- a/hosts/goopnet-interface/hardware.nix +++ b/hosts/goopnet-interface/hardware.nix @@ -53,6 +53,8 @@ # TODO: remove this once nvidia gets their shit together # https://forums.developer.nvidia.com/t/cueglstreamproducerconnect-returns-error-801-on-525-53-driver/233610/20 NVD_BACKEND = "direct"; + # VA-API on firefox + MOZ_DISABLE_RDD_SANDBOX = "1"; }; fileSystems."/" = diff --git a/modules/desktop/default.nix b/modules/desktop/default.nix index 976c9ca..c80020d 100644 --- a/modules/desktop/default.nix +++ b/modules/desktop/default.nix @@ -26,6 +26,7 @@ in { _JAVA_AWT_WM_NONEREPARENTING = "1"; GDK_BACKEND = "wayland,x11"; ANKI_WAYLAND = "1"; + MOZ_ENABLE_WAYLAND = "1"; ELECTRON_OZONE_PLATFORM_HINT = "wayland"; XDG_SESSION_TYPE = "wayland"; SDL_VIDEODRIVER = "wayland"; From abc75f79f801a1348cc7cfcd3bfe7f0fe2848758 Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Mon, 6 May 2024 20:21:00 -0700 Subject: [PATCH 09/11] fonts and hyprland --- flake.lock | 70 +++++++++++------------------ flake.nix | 2 +- modules/desktop/fonts.nix | 6 +-- modules/desktop/hyprland.nix | 24 +++++++--- modules/desktop/waybar.nix | 4 +- modules/software/editors/vscode.nix | 4 +- 6 files changed, 51 insertions(+), 59 deletions(-) diff --git a/flake.lock b/flake.lock index 6cc536e..d538ec3 100644 --- a/flake.lock +++ b/flake.lock @@ -137,26 +137,26 @@ "hyprland": { "inputs": { "hyprcursor": "hyprcursor", - "hyprland-protocols": "hyprland-protocols", "hyprlang": "hyprlang_2", "hyprwayland-scanner": "hyprwayland-scanner", "nixpkgs": "nixpkgs_3", "systems": "systems_3", - "wlroots": "wlroots", "xdph": "xdph" }, "locked": { - "lastModified": 1714084064, - "narHash": "sha256-WUEFYyOzgWOr6pK2/1fCohUUF77wuj1zIeP8jvPL0LU=", - "owner": "hyprwm", - "repo": "Hyprland", - "rev": "1d40af64d352bd5a87c7d53a52707fc5cfc6940e", - "type": "github" + "lastModified": 1715027791, + "narHash": "sha256-9wO+A4oOWpf0WtJ/iIzxy1mwXXfWuKHPW+E3wmsCI0k=", + "ref": "refs/heads/main", + "rev": "0c446ec5f4c39599ea97cb703dd3ac7718fb9169", + "revCount": 4621, + "submodules": true, + "type": "git", + "url": "https://github.com/hyprwm/Hyprland" }, "original": { - "owner": "hyprwm", - "repo": "Hyprland", - "type": "github" + "submodules": true, + "type": "git", + "url": "https://github.com/hyprwm/Hyprland" } }, "hyprland-catppuccin": { @@ -179,19 +179,21 @@ "inputs": { "nixpkgs": [ "hyprland", + "xdph", "nixpkgs" ], "systems": [ "hyprland", + "xdph", "systems" ] }, "locked": { - "lastModified": 1691753796, - "narHash": "sha256-zOEwiWoXk3j3+EoF3ySUJmberFewWlagvewDRuWYAso=", + "lastModified": 1714869498, + "narHash": "sha256-vbLVOWvQqo4n1yvkg/Q70VTlPbMmTiCQfNTgcWDCfJM=", "owner": "hyprwm", "repo": "hyprland-protocols", - "rev": "0c2ce70625cb30aef199cb388f99e19a61a6ce03", + "rev": "e06482e0e611130cd1929f75e8c1cf679e57d161", "type": "github" }, "original": { @@ -340,11 +342,11 @@ ] }, "locked": { - "lastModified": 1713989318, - "narHash": "sha256-WSsEQQxZQ+bsAWRhi1iXvP8sxgRyNtY3X1V3CfFdP5Q=", + "lastModified": 1714755542, + "narHash": "sha256-D0pg+ZRwrt4lavZ97Ca8clsgbPA3duLj8iEM7riaIFY=", "owner": "hyprwm", "repo": "hyprwayland-scanner", - "rev": "1cfe2d26a82ce794fd33ec06fa022e68501c5a45", + "rev": "1270ebaa539e56d61b708c24b072b09cbbd3a828", "type": "github" }, "original": { @@ -421,11 +423,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1713714899, - "narHash": "sha256-+z/XjO3QJs5rLE5UOf015gdVauVRQd2vZtsFkaXBq2Y=", + "lastModified": 1714253743, + "narHash": "sha256-mdTQw2XlariysyScCv2tTE45QSU9v/ezLcHJ22f0Nxc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6143fc5eeb9c4f00163267708e26191d1e918932", + "rev": "58a1abdbae3217ca6b702f03d3b35125d88a2994", "type": "github" }, "original": { @@ -671,29 +673,9 @@ "type": "github" } }, - "wlroots": { - "flake": false, - "locked": { - "lastModified": 1713731601, - "narHash": "sha256-bdcKdtLkusvv85DNuJsajZLFeq7bXp+x5AGP1Sd4wD8=", - "owner": "hyprwm", - "repo": "wlroots-hyprland", - "rev": "5c1d51c5a2793480f5b6c4341ad0797052aec2ea", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "wlroots-hyprland", - "rev": "5c1d51c5a2793480f5b6c4341ad0797052aec2ea", - "type": "github" - } - }, "xdph": { "inputs": { - "hyprland-protocols": [ - "hyprland", - "hyprland-protocols" - ], + "hyprland-protocols": "hyprland-protocols", "hyprlang": [ "hyprland", "hyprlang" @@ -708,11 +690,11 @@ ] }, "locked": { - "lastModified": 1713724432, - "narHash": "sha256-dtU1y4oj/0Y42oauzm93ucFg1AoqETnQ21bmXTIUng0=", + "lastModified": 1714060055, + "narHash": "sha256-j43TS9wv9luaAlpxcxw0sjxkbcc2mGANVR2RYgo3RCw=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "9ace6f969ce495185df34cc6254fb9d297765478", + "rev": "0fe840441e43da12cd7865ed9aa8cdc35a8da85a", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 6037fbd..ed965f2 100644 --- a/flake.nix +++ b/flake.nix @@ -12,7 +12,7 @@ waybar.url = "github:Alexays/Waybar"; - hyprland.url = "github:hyprwm/Hyprland"; + hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1"; hyprlock.url = "github:hyprwm/hyprlock"; hypridle.url = "github:hyprwm/hypridle"; hyprpaper.url = "github:hyprwm/hyprpaper"; diff --git a/modules/desktop/fonts.nix b/modules/desktop/fonts.nix index f170546..8bd66f0 100644 --- a/modules/desktop/fonts.nix +++ b/modules/desktop/fonts.nix @@ -45,19 +45,19 @@ in { package = pkgs.cozette; family = "CozetteVector"; - size = 10; + size = 13; }; monospaceBitmap = mkFontOption "bitmap monospace" { package = pkgs.cozette; family = "Cozette"; - size = 10; + size = 13; }; emoji = mkFontOption "emoji" { package = pkgs.twitter-color-emoji; family = "Twitter Color Emoji"; - size = 10; # not applicable, but whatever + size = 13; # not applicable, but whatever }; }; }; diff --git a/modules/desktop/hyprland.nix b/modules/desktop/hyprland.nix index 660b5b5..d5f9c99 100644 --- a/modules/desktop/hyprland.nix +++ b/modules/desktop/hyprland.nix @@ -62,8 +62,14 @@ in { "$mod, Q, killactive, " "$mod, V, togglefloating, " - "$mod, P, pseudo, " - "$mod, J, togglesplit, " + "$mod, P, pseudo, " # dwindle + "$mod, J, togglesplit, " # dwindle + + # move focus with mod + arrow keys + "$mod, left, movefocus, l" + "$mod, right, movefocus, r" + "$mod, up, movefocus, u" + "$mod, down, movefocus, d" # scroll through workspaces with mod + scroll "$mod, mouse_down, workspace, e+1" @@ -89,12 +95,13 @@ in { kb_layout = "us"; follow_mouse = 1; + + sensitivity = 0; # -1.0 - 1.0, 0 means no modification }; monitor= [ "DVI-D-1, 1920x1080@60, 0x0, 1" "DP-2, 1920x1080@60, 1920x0, 1" - # "DP-2, modeline 712.75 3840 4160 4576 5312 2160 2163 2168 2237 -hsync +vsync, 1920x0, 1, bitdepth, 10" ]; exec-once = [ "${lib.getExe pkgs.networkmanagerapplet}" ]; @@ -143,6 +150,10 @@ in { "workspace 4, class:vesktop" ]; + layerrule = [ + "animation slide, notifications" + ]; + blurls = [ "gtk-layer-shell" # nwg-drawer "waybar" @@ -159,8 +170,8 @@ in { }; drop_shadow = false; - #shadow_range = 4; - #shadow_render_power = true; + #shadow_range = 30; + #shadow_render_power = 3; }; animations = { @@ -181,8 +192,7 @@ in { }; dwindle = { - pseudotile = "yes"; - + pseudotile = "yes"; # master swtich for pseudotiling. enabling is mod + P in the keybinds section preserve_split = "yes"; }; diff --git a/modules/desktop/waybar.nix b/modules/desktop/waybar.nix index e91dd5a..0e4df6d 100644 --- a/modules/desktop/waybar.nix +++ b/modules/desktop/waybar.nix @@ -26,7 +26,7 @@ in { mainBar = { layer = "top"; position = "top"; - #spacing = 4; + spacing = 4; height = 30; margin-top = 6; margin-left = 6; @@ -116,7 +116,7 @@ in { rewrite = { "(.*) — Mozilla Firefox" = "$1"; # the dash here is SLIGHTLY different. Wow "(.*) - Visual Studio Code" = "$1"; - #"(.*\\.nix\\s.*)" = ""; + "(.*\\.nix\\s.*)" = " $1"; "(\\S+\\.html\\s.*)" = " $1"; "(\\S+\\.css\\s.*)" = " $1"; "(\\S+\\.js\\s.*)" = " $1"; diff --git a/modules/software/editors/vscode.nix b/modules/software/editors/vscode.nix index b5015ce..51420fc 100644 --- a/modules/software/editors/vscode.nix +++ b/modules/software/editors/vscode.nix @@ -30,10 +30,10 @@ in { enableUpdateCheck = false; userSettings = with config.modules.desktop.fonts.fonts; { "editor.fontFamily" = "'${monospace.family}', monospace"; - "editor.fontSize" = monospace.size + 3; # needed?? + "editor.fontSize" = monospace.size; "terminal.integrated.fontFamily" = "\"${monospace.family}\""; - "terminal.integrated.fontSize" = monospace.size + 3; # needed?? + "terminal.integrated.fontSize" = monospace.size; "telemetry.telemetryLevel" = "off"; From 92421828e667618219b18565a19e4b338cd19fe6 Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Mon, 6 May 2024 20:38:13 -0700 Subject: [PATCH 10/11] add waybar layer rule --- modules/desktop/hyprland.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/desktop/hyprland.nix b/modules/desktop/hyprland.nix index d5f9c99..67e5465 100644 --- a/modules/desktop/hyprland.nix +++ b/modules/desktop/hyprland.nix @@ -152,6 +152,7 @@ in { layerrule = [ "animation slide, notifications" + "animation slide, waybar" ]; blurls = [ From 752bcecb9fc4cc26d969c517fbf43ba8e6268f25 Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Wed, 8 May 2024 21:59:40 -0700 Subject: [PATCH 11/11] editorconfig --- .editorconfig | 1 + README.md | 6 +++--- modules/software/editors/vscode.nix | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.editorconfig b/.editorconfig index e3207ea..94e6600 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,5 +1,6 @@ root = true [*] +end_of_line = lf indent_style = space indent_size = 2 \ No newline at end of file diff --git a/README.md b/README.md index e210d13..216c7ff 100755 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ each host should have these files: - 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)?) - bitwarden - - sddm cursors no work :( - - setup editorconfig everywhere - divide steam and gamemode? - - laptop specific configuration (power profiles daemon, battery, etc) \ No newline at end of file + - laptop specific configuration (power profiles daemon, battery, etc) + - sddm cursors no work :( + - try out the [new sddm options](https://search.nixos.org/options?channel=unstable&from=0&size=50&sort=relevance&type=packages&query=sddm) \ No newline at end of file diff --git a/modules/software/editors/vscode.nix b/modules/software/editors/vscode.nix index 51420fc..f2ade51 100644 --- a/modules/software/editors/vscode.nix +++ b/modules/software/editors/vscode.nix @@ -15,7 +15,7 @@ in { jnoortheen.nix-ide oderwat.indent-rainbow usernamehw.errorlens - vadimcn.vscode-lldb + editorconfig.editorconfig ms-vsliveshare.vsliveshare ] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [ {