diff --git a/flake.lock b/flake.lock index 5588c2af..0174d9f9 100644 --- a/flake.lock +++ b/flake.lock @@ -80,11 +80,11 @@ ] }, "locked": { - "lastModified": 1749155310, - "narHash": "sha256-t0HfHg/1+TbSra5s6nNM0o4tnb3uqWedShSpZXsUMYY=", + "lastModified": 1750372185, + "narHash": "sha256-lVBKxd9dsZOH1fA6kSE5WNnt8e+09fN+NL/Q3BjTWHY=", "owner": "hyprwm", "repo": "aquamarine", - "rev": "94981cf75a9f11da0b6dd6a1abbd7c50a36ab2d3", + "rev": "7cef49d261cbbe537e8cb662485e76d29ac4cbca", "type": "github" }, "original": { @@ -123,11 +123,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1750327187, - "narHash": "sha256-16+LlTyw9wmINhxXB8BxGnSvngwm4nfrQ7GDKi7Cbdw=", + "lastModified": 1750590097, + "narHash": "sha256-t4kfCp4x9D3MuboVa9/GSOYoWd6qeexxrdW/ismcuBY=", "owner": "chaotic-cx", "repo": "nyx", - "rev": "1055783472d16df6bc14819cbcfe78f7c9829ffa", + "rev": "2ec05989abec9857735ea87803bdffcb40f4c910", "type": "github" }, "original": { @@ -182,11 +182,11 @@ "rust-analyzer-src": "rust-analyzer-src" }, "locked": { - "lastModified": 1750401514, - "narHash": "sha256-q1xXOopSQMJK0Wp/t9keh9u4SjFCjrx2cVMMF976GlQ=", + "lastModified": 1750574187, + "narHash": "sha256-A2v6EQCnGk67cZstf5nxfH4ZUr9DpUovAvSrLaAfhUM=", "owner": "nix-community", "repo": "fenix", - "rev": "b217fe5e1c7d5e19da71e9d344eb4c0945ad2e0b", + "rev": "263d9d394e9b9606a82c73941c4145052007799a", "type": "github" }, "original": { @@ -438,11 +438,11 @@ "zon2nix": "zon2nix" }, "locked": { - "lastModified": 1750261123, - "narHash": "sha256-DQXRonmHaOshX4WyWvdWSvrOQf7+syTo6W3WMd4lHdw=", + "lastModified": 1750564801, + "narHash": "sha256-A/zncbdhx0lBESpvVZEjVgosBpR76F3loYQKS8iCg9c=", "owner": "ghostty-org", "repo": "ghostty", - "rev": "d0e145292e35994bf86908ac27864ff267ce0e4c", + "rev": "5bfdb1b9cfc58eee9c0eca38a1e2ce8e3e38e0fc", "type": "github" }, "original": { @@ -497,11 +497,11 @@ }, "hardware": { "locked": { - "lastModified": 1750083401, - "narHash": "sha256-ynqbgIYrg7P1fAKYqe8I/PMiLABBcNDYG9YaAP/d/C4=", + "lastModified": 1750431636, + "narHash": "sha256-vnzzBDbCGvInmfn2ijC4HsIY/3W1CWbwS/YQoFgdgPg=", "owner": "nixos", "repo": "nixos-hardware", - "rev": "61837d2a33ccc1582c5fabb7bf9130d39fee59ad", + "rev": "1552a9f4513f3f0ceedcf90320e48d3d47165712", "type": "github" }, "original": { @@ -533,11 +533,11 @@ "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1750344736, - "narHash": "sha256-pPktfkA5r1zhza2Gw+u7K4g/s9EfpXXMh7m/IQ3mIbs=", + "lastModified": 1750531852, + "narHash": "sha256-ps4Fa8cq+q13Kb2nj9uxXjIGvsSRBUfcxW5CgquxiQI=", "owner": "helix-editor", "repo": "helix", - "rev": "036729211a94d058b835f5ee212ab15de83bc037", + "rev": "171dfc60e5cda8f9fb6c4f662872f35bbe864a53", "type": "github" }, "original": { @@ -595,11 +595,11 @@ ] }, "locked": { - "lastModified": 1750275572, - "narHash": "sha256-upC/GIlsIgtdtWRGd1obzdXWYQptNkfzZeyAFWgsgf0=", + "lastModified": 1750304462, + "narHash": "sha256-Mj5t4yX05/rXnRqJkpoLZTWqgStB88Mr/fegTRqyiWc=", "owner": "nix-community", "repo": "home-manager", - "rev": "0f355844e54e4c70906b1ef5cc35a0047d666c04", + "rev": "863842639722dd12ae9e37ca83bcb61a63b36f6c", "type": "github" }, "original": { @@ -653,11 +653,11 @@ ] }, "locked": { - "lastModified": 1749238452, - "narHash": "sha256-8qiKEWcxUrjpUpK+WyFNg/72C8rp70LUuyTD23T+SdQ=", + "lastModified": 1750371717, + "narHash": "sha256-cNP+bVq8m5x2Rl6MTjwfQLCdwbVmKvTH7yqVc1SpiJM=", "owner": "hyprwm", "repo": "hyprgraphics", - "rev": "c7225d73755a6c4c7c72f4d4f3925ea426e325a8", + "rev": "15c6f8f3a567fec9a0f732cd310a7ff456deef88", "type": "github" }, "original": { @@ -717,11 +717,11 @@ ] }, "locked": { - "lastModified": 1750371888, - "narHash": "sha256-+8f8R1PdcmmuOES6GtwgdtXKClvXr6kYPa76AHRoLCs=", + "lastModified": 1750503503, + "narHash": "sha256-UWxbL6a81GWBg990pcct1dzm4HuWIEd1Q6mpV7bHrnM=", "owner": "hyprwm", "repo": "hypridle", - "rev": "cff17e8b52c129dab5b9ca4a6fe214e616e36ab8", + "rev": "25578b71370d1ba7bf08127ca4b0959452df4d04", "type": "github" }, "original": { @@ -746,11 +746,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1750373382, - "narHash": "sha256-HsBt7sl2ODSHv1LxKxA47j7klCqY4k3fE4SQGnEO0Ac=", + "lastModified": 1750589353, + "narHash": "sha256-+3W7HI8ZzVqhjaws8++TFaUX8JP2eq9Uzn/KHA/qr0U=", "owner": "hyprwm", "repo": "hyprland", - "rev": "8ebff1948ff665ff6a1b49fb715b7de0797fae04", + "rev": "dd33128c2f127f39c30cca72addb1970b8936d07", "type": "github" }, "original": { @@ -885,11 +885,11 @@ ] }, "locked": { - "lastModified": 1749155776, - "narHash": "sha256-t1PM0wxQLQwv2F2AW23uA7pm5giwmcgYEWbNIRct9r4=", + "lastModified": 1750371812, + "narHash": "sha256-D868K1dVEACw17elVxRgXC6hOxY+54wIEjURztDWLk8=", "owner": "hyprwm", "repo": "hyprland-qtutils", - "rev": "396e8aa1c06274835b69da7f9a015fff9a9b7522", + "rev": "b13c7481e37856f322177010bdf75fccacd1adc8", "type": "github" }, "original": { @@ -914,11 +914,11 @@ ] }, "locked": { - "lastModified": 1749145882, - "narHash": "sha256-qr0KXeczF8Sma3Ae7+dR2NHhvG7YeLBJv19W4oMu6ZE=", + "lastModified": 1750371198, + "narHash": "sha256-/iuJ1paQOBoSLqHflRNNGyroqfF/yvPNurxzcCT0cAE=", "owner": "hyprwm", "repo": "hyprlang", - "rev": "1bfb84f54d50c7ae6558c794d3cfd5f6a7e6e676", + "rev": "cee01452bca58d6cadb3224e21e370de8bc20f0b", "type": "github" }, "original": { @@ -949,11 +949,11 @@ ] }, "locked": { - "lastModified": 1750371918, - "narHash": "sha256-kUA/ZLAE6zqZ13oNZv7f24o9OBp5G3Yf12kuMQNe1E4=", + "lastModified": 1750577079, + "narHash": "sha256-KX7nCVTBEMy75mTqZG/GadOSP717HhVv2aSc1sGPTx8=", "owner": "hyprwm", "repo": "hyprlock", - "rev": "e67036e8ccc02af62aa8e885ad7620aa1c2291c7", + "rev": "a9638986c31ab74fd95e83057f7cdd5187747ec7", "type": "github" }, "original": { @@ -1012,11 +1012,11 @@ ] }, "locked": { - "lastModified": 1749819919, - "narHash": "sha256-7F/KG8dwSH9JXdlpOVrEEArS+PJSn0iEnx5eVCk89/I=", + "lastModified": 1750371096, + "narHash": "sha256-JB1IeJ41y7kWc/dPGV6RMcCUM0Xj2NEK26A2Ap7EM9c=", "owner": "hyprwm", "repo": "hyprutils", - "rev": "57ab2a867d8b554ad89f29060c15efd11631db91", + "rev": "38f3a211657ce82a1123bf19402199b67a410f08", "type": "github" }, "original": { @@ -1062,11 +1062,11 @@ ] }, "locked": { - "lastModified": 1749145760, - "narHash": "sha256-IHaGWpGrv7seFWdw/1A+wHtTsPlOGIKMrk1TUIYJEFI=", + "lastModified": 1750371869, + "narHash": "sha256-lGk4gLjgZQ/rndUkzmPYcgbHr8gKU5u71vyrjnwfpB4=", "owner": "hyprwm", "repo": "hyprwayland-scanner", - "rev": "817918315ea016cc2d94004bfb3223b5fd9dfcc6", + "rev": "aa38edd6e3e277ae6a97ea83a69261a5c3aab9fd", "type": "github" }, "original": { @@ -1134,11 +1134,11 @@ ] }, "locked": { - "lastModified": 1750230721, - "narHash": "sha256-rg/lnazeno/f4VNSv+t2Zwio/OyCYKx5zV9/8hfhfgA=", + "lastModified": 1750403547, + "narHash": "sha256-XDDINMbHTtKQeSRpX5mwq20z23Wg/I/G4JUinA3V8Xg=", "owner": "Jovian-Experiments", "repo": "Jovian-NixOS", - "rev": "6c88df8c85ad3f80a5832edc50534a5add255b47", + "rev": "52b86b86d925ec00c836ecc6d36f9c947bb15736", "type": "github" }, "original": { @@ -1192,11 +1192,11 @@ "nixpkgs": "nixpkgs_9" }, "locked": { - "lastModified": 1746179441, - "narHash": "sha256-WGr2qqxcbh7hotqPj8ZQbSB3E4qG5U2LEmqXx/aEc18=", + "lastModified": 1750551105, + "narHash": "sha256-F3yRJrOzBzSDLadVTZqOPMaqF+3NSzedi222EawqVWQ=", "owner": "NotAShelf", "repo": "microfetch", - "rev": "f7d7c7307308b49175a342a7c63dc0a5044f0fb5", + "rev": "bc03fd73a0010c46f379e5d3b510b415bc4273b4", "type": "github" }, "original": { @@ -1251,11 +1251,11 @@ ] }, "locked": { - "lastModified": 1750384700, - "narHash": "sha256-/WSASAJl2N786HXrZKWnqsIbUh/ti9VCl8y5Z3FgcvA=", + "lastModified": 1750557776, + "narHash": "sha256-+BgqY5UK1moaknyb+yi6NOqx63e0lT7V6d2h6lhFQoQ=", "owner": "fufexan", "repo": "nix-gaming", - "rev": "72ef3e7ea3eb1a4e47e68119c268d2cbe8c83e7c", + "rev": "6bdd014132028f025d53059a40ce9489c070ca27", "type": "github" }, "original": { @@ -1384,11 +1384,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1750134718, - "narHash": "sha256-v263g4GbxXv87hMXMCpjkIxd/viIF7p3JpJrwgKdNiI=", + "lastModified": 1750365781, + "narHash": "sha256-XE/lFNhz5lsriMm/yjXkvSZz5DfvKJLUjsS6pP8EC50=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "9e83b64f727c88a7711a2c463a7b16eedb69a84c", + "rev": "08f22084e6085d19bcfb4be30d1ca76ecb96fe54", "type": "github" }, "original": { @@ -1429,11 +1429,11 @@ }, "nixpkgs_7": { "locked": { - "lastModified": 1749794982, - "narHash": "sha256-Kh9K4taXbVuaLC0IL+9HcfvxsSUx8dPB5s5weJcc9pc=", + "lastModified": 1750365781, + "narHash": "sha256-XE/lFNhz5lsriMm/yjXkvSZz5DfvKJLUjsS6pP8EC50=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ee930f9755f58096ac6e8ca94a1887e0534e2d81", + "rev": "08f22084e6085d19bcfb4be30d1ca76ecb96fe54", "type": "github" }, "original": { @@ -1484,11 +1484,11 @@ "systems": "systems_6" }, "locked": { - "lastModified": 1750426612, - "narHash": "sha256-n9nRba1rdgy1C1J+jJ4br36QLlxNHyhirKr0DFpIDVQ=", + "lastModified": 1750441488, + "narHash": "sha256-JuFBp2xM4JD/XGb69dTSDOdGbUD0fVHlgY9X9GHGTFE=", "owner": "notashelf", "repo": "nvf", - "rev": "76becd77e0fddc0b0371381946478bd2b558baf8", + "rev": "18c17b7b8dbf6e0f10e3eb5f1fa5341a9175a3b1", "type": "github" }, "original": { @@ -1577,11 +1577,11 @@ "rust-analyzer-src": { "flake": false, "locked": { - "lastModified": 1750378317, - "narHash": "sha256-4TsZVenbtAR/FgWvxgj0KPiWCuf8kGNBzmbs2xNJ7W4=", + "lastModified": 1750538096, + "narHash": "sha256-8/KtURbFw0cd15WcqKJOMeF3JoxBbmjk2AWJ8Ud80WY=", "owner": "rust-lang", "repo": "rust-analyzer", - "rev": "dc2e14d5f38a0a640e4a993d25eb79ce9d828fb8", + "rev": "0ddaf2cd7b5c020addb5c35b09dc5ef409701522", "type": "github" }, "original": { @@ -1599,11 +1599,11 @@ ] }, "locked": { - "lastModified": 1750214276, - "narHash": "sha256-1kniuhH70q4TAC/xIvjFYH46aHiLrbIlcr6fdrRwO1A=", + "lastModified": 1750473400, + "narHash": "sha256-wiW2j63MyGQyyijRF25hf7Ab7vx4G8pCiGjUe3OGV4c=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "f9b2b2b1327ff6beab4662b8ea41689e0a57b8d4", + "rev": "3d7d4c4e284f26d6dc4840491c66884912be0062", "type": "github" }, "original": { @@ -1846,11 +1846,11 @@ }, "locked": { "dir": "nix", - "lastModified": 1750014871, - "narHash": "sha256-2P4YKeMy9LXy0totnWIWzgW3A0UwB7HY0CfdCt8OOBU=", + "lastModified": 1750571237, + "narHash": "sha256-sc6D/HSaArKwdzyDvMbirPQlJPHI2PoqUUh1haVOw5Q=", "owner": "wez", "repo": "wezterm", - "rev": "d6c178f961d3de351ad72b8176f5d05e8ad8e8c6", + "rev": "2b656cb5b931fc32e79421d38a141d1de2f2aeec", "type": "github" }, "original": { @@ -1889,11 +1889,11 @@ ] }, "locked": { - "lastModified": 1749490041, - "narHash": "sha256-R9Dn9IyUdPaJHD2Oqd7XJnnxpka6M6UYw4Ld0iA46HM=", + "lastModified": 1750372504, + "narHash": "sha256-VBeZb1oqZM1cqCAZnFz/WyYhO8aF/ImagI7WWg/Z3Og=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "3cf35e178bc192ee51e3fddfd69e531e2c106a30", + "rev": "400308fc4f9d12e0a93e483c2e7a649e12af1a92", "type": "github" }, "original": { diff --git a/hosts/cnixtop/hardware-configuration.nix b/hosts/cnixtop/hardware-configuration.nix index 70b9af80..f76de750 100644 --- a/hosts/cnixtop/hardware-configuration.nix +++ b/hosts/cnixtop/hardware-configuration.nix @@ -12,6 +12,19 @@ (modulesPath + "/installer/scan/not-detected.nix") ]; + # Use system-wide overlays to override linux-firmware + nixpkgs.overlays = [ + (final: prev: { + linux-firmware = prev.linux-firmware.overrideAttrs (old: rec { + version = "20250509"; + src = prev.fetchzip { + url = "https://cdn.kernel.org/pub/linux/kernel/firmware/linux-firmware-${version}.tar.xz"; + hash = "sha256-0FrhgJQyCeRCa3s0vu8UOoN0ZgVCahTQsSH0o6G6hhY="; + }; + }); + }) + ]; + boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod"]; boot.initrd.kernelModules = []; boot.kernelModules = ["kvm-amd"]; diff --git a/modules/default.nix b/modules/default.nix index 71177031..a733b31e 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -4,7 +4,6 @@ imports = [ ./home/programs/aerc ./home/programs/alacritty - # ./home/programs/anyrun ./home/programs/bash ./home/programs/chromium ./home/programs/discord @@ -16,7 +15,6 @@ ./home/programs/fuzzel ./home/programs/ghostty ./home/programs/helix - ./home/programs/hyprland ./home/programs/hyprlock ./home/programs/jujutsu ./home/programs/kitty diff --git a/modules/home/programs/hyprland/appearance.nix b/modules/home/programs/hyprland/appearance.nix deleted file mode 100644 index 7550902b..00000000 --- a/modules/home/programs/hyprland/appearance.nix +++ /dev/null @@ -1,63 +0,0 @@ -{ - lib, - config, - ... -}: let - inherit (lib) mkIf mkEnableOption; - cfg = config.home.programs.hyprland; -in { - options = { - home.programs.hyprland.appearance.enable = mkEnableOption "Enables appearance settings in Hyprland"; - }; - config = mkIf cfg.appearance.enable { - wayland.windowManager.hyprland.settings = { - general = { - gaps_in = 2; - gaps_out = "4, 4, 4, 4"; - border_size = 3; - #col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg - #col.inactive_border = rgba(595959aa) - "col.active_border" = "rgb(4c7a5d)"; # rgba(b16286ee) 45deg - "col.inactive_border" = "rgb(504945)"; - layout = "dwindle"; - resize_on_border = true; - }; - decoration = { - rounding = 0; - blur = { - enabled = true; - brightness = 1.0; - contrast = 1.0; - noise = 0.01; - vibrancy = 0.15; - vibrancy_darkness = 0.5; - passes = 1; - size = 3; - popups = true; - popups_ignorealpha = 0.2; - }; - shadow = { - enabled = false; - color = "rgba(00000025)"; - ignore_window = true; - offset = "0 5"; - range = 45; - render_power = 2; - scale = 0.95; - }; - }; - animations.enabled = true; - animation = [ - "border, 1, 2, default" - "fade, 1, 4, default" - "windows, 1, 3, default, popin 80%" - "workspaces, 1, 2, default, slide" - ]; - dwindle = { - # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more - pseudotile = true; # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below - preserve_split = true; # you probably want this - }; - }; - }; -} diff --git a/modules/home/programs/hyprland/default.nix b/modules/home/programs/hyprland/default.nix deleted file mode 100644 index c6f33414..00000000 --- a/modules/home/programs/hyprland/default.nix +++ /dev/null @@ -1,48 +0,0 @@ -{ - config, - lib, - pkgs, - inputs, - ... -}: let - inherit (lib) mkIf mkEnableOption mkDefault; - cfg = config.home.programs.hyprland; - hyprlandPkg = inputs.hyprland.packages.${pkgs.system}.default; -in { - imports = [ - ./appearance.nix - ./inputs.nix - ./keybinds.nix - ./rules.nix - ./startup.nix - ]; - - options = { - home.programs.hyprland = { - enable = mkEnableOption "Enable Hyprland"; - }; - }; - - config = mkIf cfg.enable { - home.programs.hyprland = { - appearance.enable = mkDefault true; - inputs.enable = mkDefault true; - keybinds.enable = mkDefault true; - rules.enable = mkDefault true; - startup.enable = mkDefault true; - }; - - wayland.windowManager.hyprland = { - enable = true; - package = hyprlandPkg; - systemd = { - enable = false; - variables = ["--all"]; - extraCommands = [ - "systemctl --user stop graphical-session.target" - "systemctl --user start hyprland-session.target" - ]; - }; - }; - }; -} diff --git a/modules/home/programs/hyprland/inputs.nix b/modules/home/programs/hyprland/inputs.nix deleted file mode 100644 index b55f3a3d..00000000 --- a/modules/home/programs/hyprland/inputs.nix +++ /dev/null @@ -1,135 +0,0 @@ -{ - lib, - config, - osConfig, - ... -}: let - inherit (lib) mkIf mkEnableOption mkMerge; - cfg = config.home.programs.hyprland; - host = osConfig.networking.hostName; -in { - options = { - home.programs.hyprland.inputs.enable = mkEnableOption "Enables input settings in Hyprland"; - }; - config = mkIf cfg.inputs.enable (mkMerge [ - { - wayland.windowManager.hyprland.settings = { - monitor = - map ( - m: "${m.name},${ - if m.enabled - then "${toString m.width}x${toString m.height}@${toString m.refreshRate},${m.position},${toString m.scale},transform,${toString m.transform}${ - if m.bitDepth != null - then ",bitdepth,${toString m.bitDepth}" - else "" - }" - else "disable" - }" - ) - config.monitors; - - workspace = map ( - m: "name:${m.workspace},monitor:${m.name}" - ) (lib.filter (m: m.enabled && m.workspace != null) config.monitors); - - env = [ - "QT_WAYLAND_DISABLE_WINDOWDECORATION,1" - ]; - - input = { - kb_layout = "se"; - kb_variant = "nodeadkeys"; - follow_mouse = 1; - accel_profile = "flat"; - sensitivity = 0; # -1.0 - 1.0, 0 means no modification. - - touchpad = { - natural_scroll = true; - disable_while_typing = true; - clickfinger_behavior = true; - scroll_factor = 0.5; - }; - }; - - gestures = { - workspace_swipe = true; - workspace_swipe_distance = 400; - workspace_swipe_fingers = 3; - workspace_swipe_cancel_ratio = 0.2; - workspace_swipe_min_speed_to_force = 5; - workspace_swipe_direction_lock = true; - workspace_swipe_direction_lock_threshold = 10; - workspace_swipe_create_new = true; - }; - - misc = { - mouse_move_enables_dpms = 1; - key_press_enables_dpms = 0; - force_default_wallpaper = 0; - disable_hyprland_logo = true; - disable_splash_rendering = true; - disable_autoreload = true; - disable_xdg_env_checks = true; - layers_hog_keyboard_focus = false; - }; - - xwayland = { - force_zero_scaling = false; - }; - }; - } - - (mkIf (host == "cnix") { - wayland.windowManager.hyprland.settings = { - render = { - explicit_sync = 2; - explicit_sync_kms = 2; - direct_scanout = false; - }; - cursor = { - no_hardware_cursors = 2; - }; - general = { - allow_tearing = false; - }; - misc = { - vrr = 0; - }; - }; - }) - - (mkIf (host == "cnixpad") { - wayland.windowManager.hyprland.settings = { - input = { - kb_options = "ctrl:swapcaps"; - }; - general = { - allow_tearing = false; - }; - misc = { - vrr = 0; - vfr = 1; - }; - }; - }) - - (mkIf (host == "toothpc") { - wayland.windowManager.hyprland.settings = { - render = { - explicit_sync = 0; - explicit_sync_kms = 0; - direct_scanout = false; - }; - cursor = { - no_hardware_cursors = true; - }; - general = { - allow_tearing = false; - }; - misc = { - vrr = 0; - }; - }; - }) - ]); -} diff --git a/modules/home/programs/hyprland/keybinds.nix b/modules/home/programs/hyprland/keybinds.nix deleted file mode 100644 index baaeff71..00000000 --- a/modules/home/programs/hyprland/keybinds.nix +++ /dev/null @@ -1,130 +0,0 @@ -{ - lib, - config, - osConfig, - ... -}: let - inherit (lib) mkIf mkEnableOption mkMerge; - cfg = config.home.programs.hyprland; - host = osConfig.networking.hostName; - - toggle = program: let - prog = builtins.substring 0 14 program; - in "pkill ${prog} || uwsm app -- ${program}"; - - runOnce = program: "pgrep ${program} || uwsm app -- ${program}"; -in { - options = { - home.programs.hyprland.keybinds.enable = mkEnableOption "Enables keybind settings in Hyprland"; - }; - - config = mkIf cfg.keybinds.enable (mkMerge [ - { - wayland.windowManager.hyprland.settings = { - # Common Keybind Variables - "$fileManager" = "thunar"; - "$yazi" = "foot -e yazi"; - "$launcher" = "fuzzel"; - - bind = [ - "$mod, SPACE, exec, $launcher" - "$mod, R, exec, $launcher" - "$mod, L, exec, ${toggle "nwg-bar"}" - "$mod SHIFT, B, exec, pkill -SIGUSR2 waybar" - "$mod, A, exec, pkill -SIGUSR1 waybar" - "$mod, T, exec, $terminal" - "$mod, W, exec, $browser" - "$mod, K, exec, keepassxc" - "$mod SHIFT, W, exec, $browserinc" - "$mod, Q, killactive," - "$mod, E, exec, $fileManager" - "$mod SHIFT, E, exec, $yazi" - "$mod, F, fullscreen," - "$mod SHIFT, F, togglefloating," - "$mod, P, pseudo," - "$mod, J, togglesplit," - "$mod, C, exec, hyprctl dispatch exec copyq toggle" - "$mod, left, movefocus, l" - "$mod, right, movefocus, r" - "$mod, up, movefocus, u" - "$mod, down, movefocus, d" - "$mod, 1, workspace, 1" - "$mod, 2, workspace, 2" - "$mod, 3, workspace, 3" - "$mod, 4, workspace, 4" - "$mod, 5, workspace, 5" - "$mod, 6, workspace, 6" - "$mod, 7, workspace, 7" - "$mod, 8, workspace, 8" - "$mod, 9, workspace, 9" - "$mod, 0, workspace, 10" - "$mod SHIFT, 1, movetoworkspace, 1" - "$mod SHIFT, 2, movetoworkspace, 2" - "$mod SHIFT, 3, movetoworkspace, 3" - "$mod SHIFT, 4, movetoworkspace, 4" - "$mod SHIFT, 5, movetoworkspace, 5" - "$mod SHIFT, 6, movetoworkspace, 6" - "$mod SHIFT, 7, movetoworkspace, 7" - "$mod SHIFT, 8, movetoworkspace, 8" - "$mod SHIFT, 9, movetoworkspace, 9" - "$mod SHIFT, 0, movetoworkspace, 10" - - ",XF86AudioLowerVolume, exec, volume-control.sh --dec" - ",XF86AudioRaiseVolume, exec, volume-control.sh --inc" - ",XF86AudioMute, exec, volume-control.sh --toggle" - ",XF86AudioMicMute, exec, volume-control.sh --toggle-mic" - - ",XF86MonBrightnessDown, exec, brightnessctl s 5%-" - ",XF86MonBrightnessUp, exec, brightnessctl s +5%" - "$mod, XF86MonBrightnessUp, exec, hyprctl dispatch dpms on" - "$mod, XF86MonBrightnessDown, exec, hyprctl dispatch dpms off" - - ",Insert, exec, ${runOnce "grimblast"} --notify --freeze copysave area" - "SHIFT, Insert, exec, ${runOnce "grimblast"} --notify --freeze copysave output" - "ALT, Insert, exec, ${runOnce "grimblast"} --freeze save area - | ${runOnce "tesseract"} - - | wl-copy && ${runOnce "notify-send"} -t 3000 'OCR result copied to buffer'" - ]; - - bindm = [ - "$mod, mouse:272, movewindow" - "$mod, mouse:273, resizewindow" - ]; - }; - } - - (mkIf (host == "cnix") { - wayland.windowManager.hyprland.settings = { - "$terminal" = "ghostty"; - "$browser" = "zen"; - "$browserinc" = "zen --private-window"; - "$mod" = "SUPER"; - bind = [ - # Add more host-specific binds as needed - ]; - }; - }) - - (mkIf (host == "cnixpad") { - wayland.windowManager.hyprland.settings = { - "$terminal" = "foot"; - "$browser" = "zen"; - "$browserinc" = "zen --private-window"; - "$mod" = "ALT_L"; - bind = [ - # Add more host-specific binds as needed - ]; - }; - }) - - (mkIf (host == "toothpc") { - wayland.windowManager.hyprland.settings = { - "$terminal" = "alacritty"; - "$browser" = "firefox"; - "$browserinc" = "firefox --private-window"; - "$mod" = "ALT_L"; - bind = [ - # Add more host-specific binds as needed - ]; - }; - }) - ]); -} diff --git a/modules/home/programs/hyprland/rules.nix b/modules/home/programs/hyprland/rules.nix deleted file mode 100644 index ac72652f..00000000 --- a/modules/home/programs/hyprland/rules.nix +++ /dev/null @@ -1,92 +0,0 @@ -{ - lib, - config, - ... -}: let - inherit (lib) mkIf mkEnableOption; - cfg = config.home.programs.hyprland.rules; -in { - options = { - home.programs.hyprland.rules.enable = mkEnableOption "Enables window rule settings in Hyprland"; - }; - - config = mkIf cfg.enable { - wayland.windowManager.hyprland.settings = { - windowrulev2 = [ - # === CALCURSE SETTINGS === - "size 843 650, initialTitle:^(floatcal)$" - "move 100%-w-20 40, initialTitle:^(floatcal)$" - "float, initialTitle:^(floatcal)$" - - # === TUIRUN SETTINGS === - "size 600 300, title:^(tuirun)$" - "center, title:^(tuirun)$" - # "workspace special:tuirun, initialTitle:^(tuirun)$" - "noborder, title:^(tuirun)$" - "float, title:^(tuirun)$" - - # === KEEPASSXC SETTINGS === - "size 843 530, class:^(org.keepassxc.KeePassXC)$" - "move 100%-w-20 40, class:^(org.keepassxc.KeePassXC)$" - "float, class:^(org.keepassxc.KeePassXC)$" - - # === SUPPRESS MAXIMIZE EVENT === - "suppressevent maximize, class:.*" # Suppress maximize events for all windows - - # === NWG-LOOK SETTINGS === - "center, class:^(nwg-look)$" - "float, class:^(nwg-look)$" - - # === OCULANTE SETTINGS === - "center, class:^(oculante)$" - "float, class:^(oculante)$" - - # === PAVUCONTROL SETTINGS === - "move 100%-w-20 40, class:^(pavucontrol)$" - "size 741 585, class:^(pavucontrol)$" - "float, class:^(pavucontrol)$" - - # === XARCHIVER SETTINGS === - "center, class:^(xarchiver)$" - "float, class:^(xarchiver)$" - - # === FLOATING APPLICATIONS === - "float, class:^(org.gnome.FileRoller)$" - "float, class:^(org.freedesktop.impl.portal.desktop.kde)$" - "float, class:^(org.corectrl.CoreCtrl)$" - "float, class:^(feh)$" - "float, class:^(polkit-gnome-authentication-agent-1)$" - "float, class:^(org.gnome.Calculator)$" - "float, class:^(com.github.hluk.copyq)$" - "float, class:^(blueman-manager)$" - - # === WORKSPACE RULES === - "workspace 5 silent, class:^(discord)$" - ]; - windowrule = []; - workspace = [ - "name:2,monitor:DP-3" - "name:3,monitor:DP-3" - "name:4,monitor:DP-3" - "name:6,monitor:DP-3" - "name:7,monitor:DP-3" - "name:8,monitor:DP-3" - "name:9,monitor:DP-3" - "name:10,monitor:DP-3" - ]; - layerrule = [ - "animation fade,hyprpicker" - "animation fade,selection" - - "noanim,waybar" - "ignorezero,waybar" - "ignorealpha 0.0,waybar" - - "blur,notifications" - "ignorezero,notifications" - - "noanim,wallpaper" - ]; - }; - }; -} diff --git a/modules/home/programs/hyprland/startup.nix b/modules/home/programs/hyprland/startup.nix deleted file mode 100644 index 72eee560..00000000 --- a/modules/home/programs/hyprland/startup.nix +++ /dev/null @@ -1,54 +0,0 @@ -{ - lib, - config, - osConfig, - ... -}: let - inherit (lib) mkIf mkEnableOption mkMerge; - cfg = config.home.programs.hyprland; - host = osConfig.networking.hostName; -in { - options = { - home.programs.hyprland.startup.enable = mkEnableOption "Enables startup settings in Hyprland"; - }; - - config = mkIf cfg.startup.enable (mkMerge [ - { - wayland.windowManager.hyprland.settings = { - exec-once = [ - "sleep 2 && uwsm finalize" - "hyprlock" - ]; - }; - } - - (mkIf (host == "cnix") { - wayland.windowManager.hyprland.settings.exec-once = [ - "uwsm app -- mullvad-vpn" - "uwsm app -- blueman-applet" - "uwsm app -- keepassxc" - "uwsm app -- pamixer --set-volume 50" - "uwsm app -- solaar -w hide -b regular" - "uwsm app -- nm-applet --indicator" - ]; - }) - - (mkIf (host == "cnixpad") { - wayland.windowManager.hyprland.settings.exec-once = [ - "uwsm app -- blueman-applet" - "uwsm app -- keepassxc" - "uwsm app -- pamixer --set-volume 50" - "uwsm app -- nm-applet --indicator" - ]; - }) - - (mkIf (host == "toothpc") { - wayland.windowManager.hyprland.settings.exec-once = [ - "uwsm app -- mullvad-vpn" - "uwsm app -- keepassxc" - "uwsm app -- solaar -w hide -b regular" - "uwsm app -- nm-applet --indicator" - ]; - }) - ]); -} diff --git a/modules/nixos/programs/hyprland/default.nix b/modules/nixos/programs/hyprland/default.nix index f48572ca..515458fc 100644 --- a/modules/nixos/programs/hyprland/default.nix +++ b/modules/nixos/programs/hyprland/default.nix @@ -2,6 +2,7 @@ config, lib, inputs, + pkgs, ... }: let inherit (lib) mkIf mkEnableOption mkDefault; @@ -33,6 +34,7 @@ in { programs.hyprland = { enable = true; + package = pkgs.hyprland; withUWSM = true; }; environment.variables.NIXOS_OZONE_WL = "1"; diff --git a/modules/nixos/programs/hyprland/inputs.nix b/modules/nixos/programs/hyprland/inputs.nix index 5bd34dbd..147a380a 100644 --- a/modules/nixos/programs/hyprland/inputs.nix +++ b/modules/nixos/programs/hyprland/inputs.nix @@ -65,8 +65,6 @@ in { (mkIf (host == "cnixtop") { programs.hyprland.settings = { render = { - explicit_sync = 2; - explicit_sync_kms = 2; direct_scanout = false; }; cursor = { @@ -99,8 +97,6 @@ in { (mkIf (host == "toothpc") { programs.hyprland.settings = { render = { - explicit_sync = 0; - explicit_sync_kms = 0; direct_scanout = false; }; cursor = { diff --git a/modules/nixos/programs/hyprland/rules.nix b/modules/nixos/programs/hyprland/rules.nix index 58651718..4c078ca3 100644 --- a/modules/nixos/programs/hyprland/rules.nix +++ b/modules/nixos/programs/hyprland/rules.nix @@ -14,7 +14,7 @@ in { config = mkIf cfg.enable (mkMerge [ { programs.hyprland.settings = { - windowrulev2 = [ + windowrule = [ # === CALCURSE SETTINGS === "size 843 650, initialTitle:^(floatcal)$" "move 100%-w-20 40, initialTitle:^(floatcal)$" @@ -68,7 +68,6 @@ in { "workspace 4 silent, class:^(steam_app_0)$" "workspace 4 silent, title:^(World of Warcraft)$" ]; - windowrule = []; layerrule = [ "animation fade,hyprpicker" "animation fade,selection" diff --git a/modules/nixos/programs/hyprlandbak/default.nix b/modules/nixos/programs/hyprlandbak/default.nix deleted file mode 100644 index 708cce78..00000000 --- a/modules/nixos/programs/hyprlandbak/default.nix +++ /dev/null @@ -1,32 +0,0 @@ -{ - pkgs, - inputs, - config, - lib, - ... -}: let - inherit (lib) mkIf mkEnableOption; - cfg = config.nixos.programs.hyprland; - # hyprsysteminfoFlake = inputs.hyprsysteminfo.packages.${pkgs.system}.default; -in { - options = { - nixos.programs.hyprland = { - enable = mkEnableOption "Enables hyprland"; - }; - }; - config = mkIf cfg.enable { - security.pam.services.hyprlock.text = "auth include login"; - programs.hyprland = { - enable = true; - package = inputs.hyprland.packages.${pkgs.system}.default; - portalPackage = inputs.hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland; - }; - environment = { - variables.NIXOS_OZONE_WL = "1"; - systemPackages = [ - # pkgs.hyprwayland-scanner - # hyprsysteminfoFlake - ]; - }; - }; -} diff --git a/users/cnst/modules/home.nix b/users/cnst/modules/home.nix index 334f1296..144bb3a9 100644 --- a/users/cnst/modules/home.nix +++ b/users/cnst/modules/home.nix @@ -41,9 +41,6 @@ helix = { enable = true; }; - hyprland = { - enable = false; - }; hyprlock = { enable = true; }; diff --git a/users/cnstlab/modules/home.nix b/users/cnstlab/modules/home.nix index 4037d8e5..9c8bd950 100644 --- a/users/cnstlab/modules/home.nix +++ b/users/cnstlab/modules/home.nix @@ -43,9 +43,6 @@ helix = { enable = true; }; - hyprland = { - enable = false; - }; hyprlock = { enable = false; }; diff --git a/users/toothpick/modules/home.nix b/users/toothpick/modules/home.nix index ddf02ea7..5329c849 100644 --- a/users/toothpick/modules/home.nix +++ b/users/toothpick/modules/home.nix @@ -31,9 +31,6 @@ helix = { enable = true; }; - hyprland = { - enable = true; - }; hyprlock = { enable = true; };