From c29ddbdac71a71868c3d87e47798b0f0fbe2a3dd Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Tue, 21 May 2024 20:07:46 -0700 Subject: [PATCH 01/10] add nvidia vaapi driver to extrapackages32 --- hosts/goopnet-interface/hardware.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/hosts/goopnet-interface/hardware.nix b/hosts/goopnet-interface/hardware.nix index 7e06b8d..1a00b93 100755 --- a/hosts/goopnet-interface/hardware.nix +++ b/hosts/goopnet-interface/hardware.nix @@ -52,6 +52,10 @@ extraPackages = with pkgs; [ nvidia-vaapi-driver ]; + + extraPackages32 = with pkgs.pkgsi686Linux; [ + nvidia-vaapi-driver + ]; }; environment.variables = { From da23ac3ba194c72a5ea120d50d905ae6d58855e4 Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Tue, 21 May 2024 20:36:08 -0700 Subject: [PATCH 02/10] install fzf --- modules/software/system/fish.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/software/system/fish.nix b/modules/software/system/fish.nix index d514dcf..f9f3f09 100644 --- a/modules/software/system/fish.nix +++ b/modules/software/system/fish.nix @@ -10,7 +10,7 @@ in { }; config = mkIf cfg.enable { - user.packages = [ pkgs.grc ]; + user.packages = with pkgs; [ bat fd fzf grc ]; environment.systemPackages = with pkgs.fishPlugins; [ fzf-fish tide ]; From af1cb08d2313642af32fde62a1f711168bc88294 Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Tue, 21 May 2024 20:36:08 -0700 Subject: [PATCH 03/10] install fzf --- modules/software/system/fish.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/software/system/fish.nix b/modules/software/system/fish.nix index d514dcf..f9f3f09 100644 --- a/modules/software/system/fish.nix +++ b/modules/software/system/fish.nix @@ -10,7 +10,7 @@ in { }; config = mkIf cfg.enable { - user.packages = [ pkgs.grc ]; + user.packages = with pkgs; [ bat fd fzf grc ]; environment.systemPackages = with pkgs.fishPlugins; [ fzf-fish tide ]; From 45741e6110404f1f6538ba7054c5cada9f16100f Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Wed, 22 May 2024 22:27:59 -0700 Subject: [PATCH 04/10] update inputs --- default.nix | 6 +- flake.lock | 122 ++++++++++++++--------------- modules/desktop/hypridle.nix | 26 +++--- modules/desktop/hyprlock.nix | 22 ++++-- modules/desktop/themes/default.nix | 2 +- 5 files changed, 95 insertions(+), 83 deletions(-) diff --git a/default.nix b/default.nix index d00411f..97a5645 100755 --- a/default.nix +++ b/default.nix @@ -15,8 +15,6 @@ in { ++ (mapModulesRec' (toString ./modules) import); hm.imports = [ - inputs.hyprlock.homeManagerModules.hyprlock - inputs.hypridle.homeManagerModules.hypridle inputs.hyprland.homeManagerModules.default ]; @@ -41,11 +39,13 @@ in { "https://nix-community.cachix.org" "https://nixpkgs-wayland.cachix.org" "https://hyprland.cachix.org" + "https://hydra.soopy.moe" ]; trusted-public-keys = [ "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" "nixpkgs-wayland.cachix.org-1:3lwxaILxMRkVhehr5StQprHdEo4IrE8sRho9R9HOLYA=" "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" + "hydra.soopy.moe:IZ/bZ1XO3IfGtq66g+C85fxU/61tgXLaJ2MlcGGXU8Q=" ]; }; }; @@ -55,7 +55,7 @@ in { hm.home.stateVersion = config.system.stateVersion; boot = { - kernelPackages = pkgs.linuxPackages_latest; + kernelPackages = mkDefault pkgs.linuxPackages_latest; kernelParams = ["pci_aspm.policy=performance"]; }; diff --git a/flake.lock b/flake.lock index 8adaae6..ca37175 100644 --- a/flake.lock +++ b/flake.lock @@ -21,11 +21,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1710544781, - "narHash": "sha256-nkxihb3D85k1nZV1CzlB3seMKtTEeKb688sblIGp/Bs=", + "lastModified": 1716179347, + "narHash": "sha256-DPiP4yLRcPgWgrnCC/tRp5vUk9teZIfsCT2r8jr1V8A=", "owner": "catppuccin", "repo": "vscode", - "rev": "d7b96ccac36fd29929bd97bc9357413cc4e0240c", + "rev": "b7a8806f7532a091b0170f281dbc7f35c3fc7761", "type": "github" }, "original": { @@ -52,11 +52,11 @@ }, "hardware": { "locked": { - "lastModified": 1711352745, - "narHash": "sha256-luvqik+i3HTvCbXQZgB6uggvEcxI9uae0nmrgtXJ17U=", + "lastModified": 1716173274, + "narHash": "sha256-FC21Bn4m6ctajMjiUof30awPBH/7WjD0M5yqrWepZbY=", "owner": "nixos", "repo": "nixos-hardware", - "rev": "9a763a7acc4cfbb8603bb0231fec3eda864f81c0", + "rev": "d9e0b26202fd500cf3e79f73653cce7f7d541191", "type": "github" }, "original": { @@ -72,11 +72,11 @@ ] }, "locked": { - "lastModified": 1711604890, - "narHash": "sha256-vbI/gxRTq/gHW1Q8z6D/7JG/qGNl3JTimUDX+MwnC3A=", + "lastModified": 1715930644, + "narHash": "sha256-W9pyM3/vePxrffHtzlJI6lDS3seANQ+Nqp+i58O46LI=", "owner": "nix-community", "repo": "home-manager", - "rev": "3142bdcc470e1e291e1fbe942fd69e06bd00c5df", + "rev": "e3ad5108f54177e6520535768ddbf1e6af54b59d", "type": "github" }, "original": { @@ -101,11 +101,11 @@ ] }, "locked": { - "lastModified": 1713612213, - "narHash": "sha256-zJboXgWNpNhKyNF8H/3UYzWkx7w00TOCGKi3cwi+tsw=", + "lastModified": 1716327911, + "narHash": "sha256-PI+wygItS/TKzi4gEAROvKTUzTx9GT+PGBttS/IOA/Q=", "owner": "hyprwm", "repo": "hyprcursor", - "rev": "cab4746180f210a3c1dd3d53e45c510e309e90e1", + "rev": "27ca640abeef2d425b5dbecf804f5eb622cef56d", "type": "github" }, "original": { @@ -121,11 +121,11 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1713472482, - "narHash": "sha256-7Ft5WZTMIjXOGgRCf31DZBwK6RK8xkeKlD5vFXz3gII=", + "lastModified": 1716309977, + "narHash": "sha256-4jDQIcMDSFOOMBxVTEiC6Ck1vdc0kAFvv+StxnnE59Q=", "owner": "hyprwm", "repo": "hypridle", - "rev": "7cff4581a3753154fc5b41f39a098fad49b777b1", + "rev": "cb169c4e06cec9b4349e3668427e729d22328a54", "type": "github" }, "original": { @@ -144,11 +144,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1715027791, - "narHash": "sha256-9wO+A4oOWpf0WtJ/iIzxy1mwXXfWuKHPW+E3wmsCI0k=", + "lastModified": 1716417827, + "narHash": "sha256-TYHpA/i9+Ns01+RzknJ5eYskQXL9GTTA7JX9Lo4JKVg=", "ref": "refs/heads/main", - "rev": "0c446ec5f4c39599ea97cb703dd3ac7718fb9169", - "revCount": 4621, + "rev": "7ad9116de8d0b7dac27eaf080bd92998a8fb40e5", + "revCount": 4728, "submodules": true, "type": "git", "url": "https://github.com/hyprwm/Hyprland" @@ -162,11 +162,11 @@ "hyprland-catppuccin": { "flake": false, "locked": { - "lastModified": 1702668781, - "narHash": "sha256-9BhZq9J1LmHfAPBqOr64chiAEzS+YV6zqe9ma95V3no=", + "lastModified": 1712161758, + "narHash": "sha256-XTqpmucOeHUgSpXQ0XzbggBFW+ZloRD/3mFhI+Tq4O8=", "owner": "catppuccin", "repo": "hyprland", - "rev": "fc228737d3d0c12e34a7fa155a0fc3192e5e4017", + "rev": "b57375545f5da1f7790341905d1049b1873a8bb3", "type": "github" }, "original": { @@ -189,11 +189,11 @@ ] }, "locked": { - "lastModified": 1714869498, - "narHash": "sha256-vbLVOWvQqo4n1yvkg/Q70VTlPbMmTiCQfNTgcWDCfJM=", + "lastModified": 1691753796, + "narHash": "sha256-zOEwiWoXk3j3+EoF3ySUJmberFewWlagvewDRuWYAso=", "owner": "hyprwm", "repo": "hyprland-protocols", - "rev": "e06482e0e611130cd1929f75e8c1cf679e57d161", + "rev": "0c2ce70625cb30aef199cb388f99e19a61a6ce03", "type": "github" }, "original": { @@ -236,11 +236,11 @@ ] }, "locked": { - "lastModified": 1713121246, - "narHash": "sha256-502X0Q0fhN6tJK7iEUA8CghONKSatW/Mqj4Wappd++0=", + "lastModified": 1715791527, + "narHash": "sha256-HhQ4zvGHrRjR63ltySSeg+x+0jb0lepiutWdnFhLRoo=", "owner": "hyprwm", "repo": "hyprlang", - "rev": "78fcaa27ae9e1d782faa3ff06c8ea55ddce63706", + "rev": "969cb076e5b76f2e823aeca1937a3e1f159812ee", "type": "github" }, "original": { @@ -277,11 +277,11 @@ "systems": "systems_6" }, "locked": { - "lastModified": 1711250455, - "narHash": "sha256-LSq1ZsTpeD7xsqvlsepDEelWRDtAhqwetp6PusHXJRo=", + "lastModified": 1713121246, + "narHash": "sha256-502X0Q0fhN6tJK7iEUA8CghONKSatW/Mqj4Wappd++0=", "owner": "hyprwm", "repo": "hyprlang", - "rev": "b3e430f81f3364c5dd1a3cc9995706a4799eb3fa", + "rev": "78fcaa27ae9e1d782faa3ff06c8ea55ddce63706", "type": "github" }, "original": { @@ -297,11 +297,11 @@ "systems": "systems_5" }, "locked": { - "lastModified": 1713978374, - "narHash": "sha256-jla5Wo0Qt3NEnD0OjNj85BGw0pR4Zlz5uy8AqHH7tuE=", + "lastModified": 1716309918, + "narHash": "sha256-XWjBbAsWctkpinaoot+5g0VcO1CmiS90IkL+CGz67DQ=", "owner": "hyprwm", "repo": "hyprlock", - "rev": "415262065fff0a04b229cd00165f346a86a0a73a", + "rev": "ba4b08e5f5dacc38af083ef89f8c8c489a900068", "type": "github" }, "original": { @@ -317,11 +317,11 @@ "systems": "systems_7" }, "locked": { - "lastModified": 1712919696, - "narHash": "sha256-93zNQy4LGFP5h/GrQJctd8cPE0VdCDsWigTOx2effrE=", + "lastModified": 1716311836, + "narHash": "sha256-HWsl4uUqEOvrvm8QCNKJWBP2xB3irsy+xMvyvLVHITk=", "owner": "hyprwm", "repo": "hyprpaper", - "rev": "02ee7ff3bbd9cba72f26be7b09dde4a89fc31c21", + "rev": "678d0e8959cf7adbc3825d578595e82305573991", "type": "github" }, "original": { @@ -342,11 +342,11 @@ ] }, "locked": { - "lastModified": 1714755542, - "narHash": "sha256-D0pg+ZRwrt4lavZ97Ca8clsgbPA3duLj8iEM7riaIFY=", + "lastModified": 1716058375, + "narHash": "sha256-CwjWoVnBZE5SBpRx9dgSQGCr4Goxyfcyv3zZbOhVqzk=", "owner": "hyprwm", "repo": "hyprwayland-scanner", - "rev": "1270ebaa539e56d61b708c24b072b09cbbd3a828", + "rev": "3afed4364790aebe0426077631af1e164a9650cc", "type": "github" }, "original": { @@ -376,11 +376,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1707268954, - "narHash": "sha256-2en1kvde3cJVc3ZnTy8QeD2oKcseLFjYPLKhIGDanQ0=", + "lastModified": 1712963716, + "narHash": "sha256-WKm9CvgCldeIVvRz87iOMi8CFVB1apJlkUT4GGvA0iM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "f8e2ebd66d097614d51a56a755450d4ae1632df1", + "rev": "cfd6b5fc90b15709b780a5a1619695a88505a176", "type": "github" }, "original": { @@ -423,11 +423,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1714253743, - "narHash": "sha256-mdTQw2XlariysyScCv2tTE45QSU9v/ezLcHJ22f0Nxc=", + "lastModified": 1716330097, + "narHash": "sha256-8BO3B7e3BiyIDsaKA0tY8O88rClYRTjvAp66y+VBUeU=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "58a1abdbae3217ca6b702f03d3b35125d88a2994", + "rev": "5710852ba686cc1fd0d3b8e22b3117d43ba374c2", "type": "github" }, "original": { @@ -471,11 +471,11 @@ }, "nixpkgs_6": { "locked": { - "lastModified": 1711163522, - "narHash": "sha256-YN/Ciidm+A0fmJPWlHBGvVkcarYWSC+s3NTPk/P+q3c=", + "lastModified": 1712963716, + "narHash": "sha256-WKm9CvgCldeIVvRz87iOMi8CFVB1apJlkUT4GGvA0iM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "44d0940ea560dee511026a53f0e2e2cde489b4d4", + "rev": "cfd6b5fc90b15709b780a5a1619695a88505a176", "type": "github" }, "original": { @@ -487,11 +487,11 @@ }, "nixpkgs_7": { "locked": { - "lastModified": 1715266358, - "narHash": "sha256-doPgfj+7FFe9rfzWo1siAV2mVCasW+Bh8I1cToAXEE4=", + "lastModified": 1716330097, + "narHash": "sha256-8BO3B7e3BiyIDsaKA0tY8O88rClYRTjvAp66y+VBUeU=", "owner": "nixos", "repo": "nixpkgs", - "rev": "f1010e0469db743d14519a1efd37e23f8513d714", + "rev": "5710852ba686cc1fd0d3b8e22b3117d43ba374c2", "type": "github" }, "original": { @@ -644,11 +644,11 @@ "nixpkgs": "nixpkgs_8" }, "locked": { - "lastModified": 1714680561, - "narHash": "sha256-ov7v4OaiMW6gylMFTjKXXtoxrgAjtOTHa09oFmu3B3s=", + "lastModified": 1716362227, + "narHash": "sha256-o+OVh6c6CW6NNidCbRfdp+9JpERyzrAB/2Eaza0Q6r4=", "owner": "Alexays", "repo": "Waybar", - "rev": "0b6476da32d181ee6b2cabdc5205a46a90521a75", + "rev": "35a9ca476dc2595c28fd1d3a34cc26be4f14077a", "type": "github" }, "original": { @@ -660,11 +660,11 @@ "waybar-catppuccin": { "flake": false, "locked": { - "lastModified": 1678438606, - "narHash": "sha256-WLJMA2X20E5PCPg0ZPtSop0bfmu+pLImP9t8A8V4QK8=", + "lastModified": 1711907468, + "narHash": "sha256-9lY+v1CTbpw2lREG/h65mLLw5KuT8OJdEPOb+NNC6Fo=", "owner": "catppuccin", "repo": "waybar", - "rev": "f74ab1eecf2dcaf22569b396eed53b2b2fbe8aff", + "rev": "0830796af6aa64ce8bc7453d42876a628777ac68", "type": "github" }, "original": { @@ -690,11 +690,11 @@ ] }, "locked": { - "lastModified": 1714060055, - "narHash": "sha256-j43TS9wv9luaAlpxcxw0sjxkbcc2mGANVR2RYgo3RCw=", + "lastModified": 1716290197, + "narHash": "sha256-1u9Exrc7yx9qtES2brDh7/DDZ8w8ap1nboIOAtCgeuM=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "0fe840441e43da12cd7865ed9aa8cdc35a8da85a", + "rev": "91e48d6acd8a5a611d26f925e51559ab743bc438", "type": "github" }, "original": { diff --git a/modules/desktop/hypridle.nix b/modules/desktop/hypridle.nix index 1d79489..5cea86e 100644 --- a/modules/desktop/hypridle.nix +++ b/modules/desktop/hypridle.nix @@ -20,32 +20,36 @@ in { enable = true; package = cfg.package; - lockCmd = "${pkgs.procps}/bin/pidof hyprlock || ${lib.getExe config.modules.desktop.hyprlock.package}"; - unlockCmd = "${pkgs.procps}/bin/pkill -USR1 hyprlock"; + settings = { + general = { + lock_cmd = "${pkgs.procps}/bin/pidof hyprlock || ${lib.getExe config.modules.desktop.hyprlock.package}"; + unlock_cmd = "${pkgs.procps}/bin/pkill -USR1 hyprlock"; - beforeSleepCmd = "${pkgs.systemd}/bin/loginctl lock-session"; # lock the screen before sleeping - afterSleepCmd = "${hyprctl} dispatch dpms on"; # turn on the screen to avoid moving mouse/pressing key + before_sleep_cmd = "${pkgs.systemd}/bin/loginctl lock-session"; # lock the screen before sleeping + after_sleep_cmd = "${hyprctl} dispatch dpms on"; # turn on the screen to avoid moving mouse/pressing key + }; - listeners = [ + listener = [ { timeout = 60 * 1; - onTimeout = "${lib.getExe pkgs.brightnessctl} -c backlight -s set 20"; # dim screen, save brightness state - onResume = "${lib.getExe pkgs.brightnessctl} -c backlight -r"; # restore previous screen brightness state + on-timeout = "${lib.getExe pkgs.brightnessctl} -c backlight -s set 1%"; # dim screen, save brightness state + on-resume = "${lib.getExe pkgs.brightnessctl} -c backlight -r"; # restore previous screen brightness state } { timeout = 90; # 1.5 min - onTimeout = "${hyprctl} dispatch dpms off"; # turn off screen - onResume = "${hyprctl} dispatch dpms on"; # turn it back on + on-timeout = "${hyprctl} dispatch dpms off"; # turn off screen + on-resume = "${hyprctl} dispatch dpms on"; # turn it back on } { timeout = 60 * 2; # 2 min - onTimeout = "${pkgs.systemd}/bin/loginctl lock-session"; # lock computer + on-timeout = "${pkgs.systemd}/bin/loginctl lock-session"; # lock computer } { timeout = 60 * 15; # 15 min - onTimeout = "${pkgs.systemd}/bin/systemctl suspend"; # sleep/suspend + on-timeout = "${pkgs.systemd}/bin/systemctl suspend"; # sleep/suspend } ]; + }; }; }; } diff --git a/modules/desktop/hyprlock.nix b/modules/desktop/hyprlock.nix index 921aeae..6d1d670 100644 --- a/modules/desktop/hyprlock.nix +++ b/modules/desktop/hyprlock.nix @@ -19,13 +19,14 @@ in { enable = true; package = cfg.package; + settings = { general = { hide_cursor = false; no_fade_in = true; no_fade_out = true; }; - backgrounds = [ + background = [ { path = toString ../../assets/lockscreen.png; blur_passes = 3; @@ -33,26 +34,30 @@ in { } ]; - labels = [ + label = [ { text = "cmd[update:1000] echo \"$(date +'%H:%M')\""; font_size = 58; color = "rgb(${base05})"; font_family = config.modules.desktop.fonts.fonts.sansSerif.family; - position = { x = 0; y = 30; }; + position = "0, 30"; + halign = "center"; + valign = "center"; } { text = "cmd[update:1000] echo \"$(date +'%A %B %e')\""; font_size = 14; color = "rgb(${base05})"; font_family = config.modules.desktop.fonts.fonts.sansSerif.family; - position = { x = 0; y = 10; }; + position = "0, 10"; + halign = "center"; + valign = "center"; } ]; - input-fields = [ + input-field = [ { - size = { width = 300; height = 28; }; + size = "300, 28"; outline_thickness = 2; dots_size = 0.2; fade_on_empty = false; @@ -65,9 +70,12 @@ in { fail_color = "rgb(${base08})"; capslock_color = "rgb(${base09})"; - position = { x = 0; y = -30; }; + position = "0, -30"; + halign = "center"; + valign = "center"; } ]; + }; }; }; } diff --git a/modules/desktop/themes/default.nix b/modules/desktop/themes/default.nix index 85f48dc..7671167 100644 --- a/modules/desktop/themes/default.nix +++ b/modules/desktop/themes/default.nix @@ -69,7 +69,7 @@ in { hm.qt = { enable = true; - platformTheme = "gtk"; + platformTheme.name = "gtk"; style.name = "gtk2"; }; From f2ee496f477c0b6a73174365cac731d48e59ebd0 Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Wed, 22 May 2024 23:33:30 -0700 Subject: [PATCH 05/10] laptop mode --- hosts/goopnet-interface/hardware.nix | 63 ++++++++++++++++------------ modules/desktop/hyprland.nix | 10 +++-- packages/apple-firmware/default.nix | 25 +++++++++++ 3 files changed, 68 insertions(+), 30 deletions(-) create mode 100644 packages/apple-firmware/default.nix diff --git a/hosts/goopnet-interface/hardware.nix b/hosts/goopnet-interface/hardware.nix index 7e06b8d..b9dfe29 100755 --- a/hosts/goopnet-interface/hardware.nix +++ b/hosts/goopnet-interface/hardware.nix @@ -3,8 +3,13 @@ { imports = [ - inputs.hardware.nixosModules.common-cpu-intel-cpu-only - inputs.hardware.nixosModules.common-gpu-nvidia-nonprime + inputs.hardware.nixosModules.common-cpu-intel + inputs.hardware.nixosModules.common-pc-laptop-ssd + inputs.hardware.nixosModules.common-pc-laptop + # this will override your kernel!!! + # use this on macs with t2 chips to get screen, keyboard, trackpad, + # camera, touchbar, and experimental suspend and audio + inputs.hardware.nixosModules.apple-t2 (modulesPath + "/installer/scan/not-detected.nix") ]; @@ -24,58 +29,64 @@ # support power features such as suspend to ram powerManagement.enable = true; # tune power saving options on boot - # todo: fix usb mice and keyboards from suspending - #powerManagement.powertop.enable = true; + powerManagement.powertop.enable = true; # thermald proactively prevents overheating on intel CPUs and works well with other tools services.thermald.enable = true; # power-profile-daemon for power management services.power-profiles-daemon.enable = true; + # manage fans for macbook devices + services.mbpfan.enable = true; - # nvidia driver - services.xserver.videoDrivers = [ "nvidia" ]; + # better performance than the actual intel driver + services.xserver.videoDrivers = [ "modesetting" ]; - hardware.nvidia = { - package = config.boot.kernelPackages.nvidiaPackages.beta; - - modesetting.enable = true; - - powerManagement.enable = true; - }; - - boot.kernelParams = [ - # use experimental nvidia supplied framebuffer - "nvidia-drm.fbdev=1" + # needed for our broadcom/brcm 4377b chip to work + hardware.firmware = with pkgs; [ + my.apple-firmware ]; # VA-API hardware.opengl = { extraPackages = with pkgs; [ - nvidia-vaapi-driver + intel-media-driver + intel-vaapi-driver + libvdpau-va-gl + ]; + + extraPackages32 = with pkgs.pkgsi686Linux; [ + intel-media-driver + intel-vaapi-driver + libvdpau-va-gl ]; }; environment.variables = { - LIBVA_DRIVER_NAME= "nvidia"; - VDPAU_DRIVER = "nvidia"; - # 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"; + LIBVA_DRIVER_NAME= "iHD"; + VDPAU_DRIVER = "va_gl"; # VA-API on firefox MOZ_DISABLE_RDD_SANDBOX = "1"; }; + boot.kernelParams = [ + # enable the i915 sandybridge framebuffer compression (475mw savings) + "i915.i915_enable_fbc=1" + "i915.fastboot=1" + "enable_gvt=1" + ]; + fileSystems."/" = - { device = "/dev/disk/by-uuid/08cfbb11-5943-4627-a2fc-fd41ce578027"; + { device = "/dev/disk/by-uuid/0f09afdc-88e4-4764-818b-77828931278f"; fsType = "ext4"; }; fileSystems."/boot" = - { device = "/dev/disk/by-uuid/C321-2746"; + { device = "/dev/disk/by-uuid/5659-4909"; fsType = "vfat"; + options = [ "fmask=0022" "dmask=0022" ]; }; swapDevices = - [ { device = "/dev/disk/by-uuid/04eddb76-4925-4192-a472-1c2c7e4ac9f7"; } + [ { device = "/dev/disk/by-uuid/f54a2257-f498-4ca0-82af-58f31705cce7"; } ]; # Enables DHCP on each ethernet and wireless interface. In case of scripted networking diff --git a/modules/desktop/hyprland.nix b/modules/desktop/hyprland.nix index 43af1d1..978aad5 100644 --- a/modules/desktop/hyprland.nix +++ b/modules/desktop/hyprland.nix @@ -104,15 +104,17 @@ in { input = { kb_layout = "us"; + touchpad = { + disable_while_typing = false; + natural_scroll = true; + }; + 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" - ]; + monitor=",highrr,auto,auto"; exec-once = [ "${lib.getExe pkgs.networkmanagerapplet}" ]; diff --git a/packages/apple-firmware/default.nix b/packages/apple-firmware/default.nix new file mode 100644 index 0000000..5365249 --- /dev/null +++ b/packages/apple-firmware/default.nix @@ -0,0 +1,25 @@ +{ lib, stdenvNoCC, fetchFromGitHub }: + +stdenvNoCC.mkDerivation { + pname = "apple-firmware"; + version = "unstable"; + + src = fetchFromGitHub { + owner = "AdityaGarg8"; + repo = "Apple-Firmware"; + rev = "c3ba2bce7b5b7d08a478763c678d71ddded60403"; + hash = "sha256-p91pyOYKHnJvaBZ7nxrBqFU63UQhMPWhm2GxabfncY4="; + }; + + installPhase = '' + mkdir -p "$out/lib/firmware/brcm" + cp -r lib/firmware/brcm/. "$out/lib/firmware/brcm/" + ''; + + meta = with lib; { + description = "Various apple broadcom drivers, ripped from a runner image"; + # homepage = "https://jacobxperez.github.io/atkinson-hyperlegible-pro/"; + # license = licenses.ofl; + platforms = platforms.all; + }; +} From 964a2bc60d74317148306b09419977160be9951e Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Wed, 22 May 2024 23:42:53 -0700 Subject: [PATCH 06/10] window rules... --- modules/desktop/hyprland.nix | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/modules/desktop/hyprland.nix b/modules/desktop/hyprland.nix index 978aad5..30f87f5 100644 --- a/modules/desktop/hyprland.nix +++ b/modules/desktop/hyprland.nix @@ -138,25 +138,28 @@ in { # common popups "float, class:org.gnome.FileRoller" "center, class:org.gnome.FileRoller" - "size 1100 730, class:org.gnome.FileRoller" + "size 1100 650, class:org.gnome.FileRoller" "float, class:org.gnome.Loupe" "center, class:org.gnome.Loupe" - "size 1100 730, class:org.gnome.Loupe" + "size 1100 650, class:org.gnome.Loupe" "float, initialTitle:^Open Folder$" "center, initialTitle:^Open Folder$" - "size 1100 730, initialTitle:^Open Folder$" + "size 1100 650, initialTitle:^Open Folder$" "float, initialTitle:^Open File$" "center, initialTitle:^Open File$" - "size 1100 730, initialTitle:^Open File$" + "size 1100 650, initialTitle:^Open File$" "float, initialTitle:^Open Files$" "center, initialTitle:^Open Files$" - "size 1100 730, initialTitle:^Open Files$" + "size 1100 650, initialTitle:^Open Files$" "float, initialTitle:^Save As$" "center, initialTitle:^Save As$" - "size 1100 730, initialTitle:^Save As$" + "size 1100 650, initialTitle:^Save As$" "float, initialTitle:^Select a file to open$" "center, initialTitle:^Select a file to open$" - "size 1100 730, initialTitle:^Select a file to open$" + "size 1100 650, initialTitle:^Select a file to open$" + # unsure why this is required, scaling? + "center, class:^pinentry-" + "center, class:^polkit-" "float, class:\.exe$" From f45fcd49d9a1faa140ec47c069c2e609779c41f1 Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Wed, 22 May 2024 23:48:39 -0700 Subject: [PATCH 07/10] hyprland workspace swipe gesture --- modules/desktop/hyprland.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules/desktop/hyprland.nix b/modules/desktop/hyprland.nix index 30f87f5..52006c3 100644 --- a/modules/desktop/hyprland.nix +++ b/modules/desktop/hyprland.nix @@ -225,6 +225,10 @@ in { new_is_master = true; }; + gestures = { + workspace_swipe = true; + }; + misc = { force_default_wallpaper = 0; disable_splash_rendering = true; From 4d32b93753d1b52765e36ff58819195f4bb28a37 Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Wed, 22 May 2024 23:52:34 -0700 Subject: [PATCH 08/10] update package metadata --- packages/apple-firmware/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/apple-firmware/default.nix b/packages/apple-firmware/default.nix index 5365249..183855a 100644 --- a/packages/apple-firmware/default.nix +++ b/packages/apple-firmware/default.nix @@ -18,8 +18,9 @@ stdenvNoCC.mkDerivation { meta = with lib; { description = "Various apple broadcom drivers, ripped from a runner image"; - # homepage = "https://jacobxperez.github.io/atkinson-hyperlegible-pro/"; - # license = licenses.ofl; + homepage = "https://github.com/adityagarg8/apple-firmware"; + # not sure about the licenses on these + # license = licenses.unfree; platforms = platforms.all; }; } From ba2384e67ec3e4c42e41e612b40f0a96e504e7d0 Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Thu, 23 May 2024 07:41:29 -0700 Subject: [PATCH 09/10] disable waybar blur, we aren't using it --- modules/desktop/hyprland.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/desktop/hyprland.nix b/modules/desktop/hyprland.nix index 52006c3..64642fc 100644 --- a/modules/desktop/hyprland.nix +++ b/modules/desktop/hyprland.nix @@ -181,7 +181,7 @@ in { blurls = [ "gtk-layer-shell" # nwg-drawer - "waybar" + #"waybar" ]; decoration = { From ae0689bd24bd76f2edad55876d28c3ffe17f38b9 Mon Sep 17 00:00:00 2001 From: "Reid \"reidlab" Date: Thu, 23 May 2024 16:01:05 -0700 Subject: [PATCH 10/10] temp remove some broken pkgs --- flake.nix | 5 ++++- modules/desktop/themes/catppuccin/default.nix | 19 ++++++++++--------- modules/desktop/waybar.nix | 3 ++- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/flake.nix b/flake.nix index ed965f2..485bae5 100644 --- a/flake.nix +++ b/flake.nix @@ -37,7 +37,10 @@ config.allowAliases = false; overlays = extraOverlays ++ (lib.attrValues self.overlays); }; - pkgs = mkPkgs nixpkgs [ self.overlays.default inputs.catppuccin-vsc.overlays.default ]; + pkgs = mkPkgs nixpkgs [ + self.overlays.default + #inputs.catppuccin-vsc.overlays.default + ]; lib = nixpkgs.lib.extend (final: prev: { my = import ./lib { diff --git a/modules/desktop/themes/catppuccin/default.nix b/modules/desktop/themes/catppuccin/default.nix index 519c31b..d7258de 100644 --- a/modules/desktop/themes/catppuccin/default.nix +++ b/modules/desktop/themes/catppuccin/default.nix @@ -46,15 +46,16 @@ in { vscode = { colorTheme = { name = "Catppuccin Mocha"; - extension = (pkgs.vscode-extensions.catppuccin.catppuccin-vsc.override { - accent = accent; - boldKeywords = false; - italicComments = false; - italicKeywords = false; - extraBordersEnabled = false; - workbenchMode = "flat"; - bracketMode = "rainbow"; - }); + extension = pkgs.vscode-extensions.catppuccin.catppuccin-vsc; + #extension = (pkgs.vscode-extensions.catppuccin.catppuccin-vsc.override { + # accent = accent; + # boldKeywords = false; + # italicComments = false; + # italicKeywords = false; + # extraBordersEnabled = false; + # workbenchMode = "flat"; + # bracketMode = "rainbow"; + #}); }; iconTheme = { name = "material-icon-theme"; diff --git a/modules/desktop/waybar.nix b/modules/desktop/waybar.nix index 0c91d10..896dfe0 100644 --- a/modules/desktop/waybar.nix +++ b/modules/desktop/waybar.nix @@ -8,7 +8,8 @@ in { enable = mkEnableOption "Enable Waybar, a highly customizable wayland bar for wlroots compositors."; package = mkOption { type = types.package; - default = inputs.waybar.packages.${system}.default; + #default = inputs.waybar.packages.${system}.default; + default = pkgs.waybar; example = "pkgs.waybar"; }; };