From 607eb868eec0b819acf61cf1e131e0d5bb05a12f Mon Sep 17 00:00:00 2001 From: Natalie Marks Date: Fri, 6 Feb 2026 22:45:57 -0800 Subject: [PATCH] remove hyprland --- flake.lock | 70 +++++++++++++-------- flake.nix | 27 +++++++- modules/neovim/default.nix | 8 --- modules/shared/nix.nix | 3 + users/fish/vim/languages.nix | 3 - users/natalie/desktop/configuration.nix | 16 ++--- users/natalie/home/default.nix | 6 +- users/natalie/home/hyprland/binds.nix | 46 +++++++------- users/natalie/home/hyprland/hyprland.nix | 13 +++- users/natalie/home/hyprland/plugins.nix | 6 +- users/natalie/home/hyprland/settings.nix | 6 +- users/natalie/home/hyprland/windowrules.nix | 15 ++--- users/natalie/packages.nix | 1 + users/natalie/vim/languages.nix | 3 - 14 files changed, 129 insertions(+), 94 deletions(-) diff --git a/flake.lock b/flake.lock index 6825dbf42771c99fc231dece223fc40ad5226147..2f7707d2c278d97d35d1930bc314d5cc69e21a2b 100644 --- a/flake.lock +++ b/flake.lock @@ -367,11 +367,11 @@ ] }, "locked": { - "lastModified": 1767909183, - "narHash": "sha256-u/bcU0xePi5bgNoRsiqSIwaGBwDilKKFTz3g0hqOBAo=", + "lastModified": 1767930051, + "narHash": "sha256-YXtqo8h5bAbqC64XAPMMsZdYk8XkwkyNj/7XOsIyVf8=", "owner": "nix-community", "repo": "home-manager", - "rev": "cd6e96d56ed4b2a779ac73a1227e0bb1519b3509", + "rev": "297a08510894822ddd93ee2cfc66d6ac65a3cebb", "type": "github" }, "original": { @@ -456,11 +456,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1767907620, - "narHash": "sha256-zpQr4jkAoARBI22dFDnRekUagdRt6Mfc+ThpSSHm90s=", + "lastModified": 1768074837, + "narHash": "sha256-40JgzyxRdB7Je46J3YpZel+eb6G9m7DmWuapf8WqrG0=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "5b1b79c29c5e0ea974b2a9da5d122dd0f3bedca6", + "rev": "8f8b31e7a66acb4eb3836aa2fe6d751e5889bdaa", "type": "github" }, "original": { @@ -569,26 +569,6 @@ "type": "github" } }, - "hyprsplit": { - "inputs": { - "hyprland": [ - "hyprland" - ] - }, - "locked": { - "lastModified": 1767392626, - "narHash": "sha256-sb9VGbCmtOf1UXKQzgoJnyekIiaXaZPb+fifaE4Dgig=", - "owner": "shezdy", - "repo": "hyprsplit", - "rev": "d8585473531b24c23794b060d9fe2f5f89b05563", - "type": "github" - }, - "original": { - "owner": "shezdy", - "repo": "hyprsplit", - "type": "github" - } - }, "hyprtoolkit": { "inputs": { "aquamarine": [ @@ -788,6 +768,21 @@ "type": "github" } }, + "nix-filter": { + "locked": { + "lastModified": 1693833173, + "narHash": "sha256-hlMABKrGbEiJD5dwUSfnw1CQ3bG7KKwDV+Nx3bEZd7U=", + "owner": "numtide", + "repo": "nix-filter", + "rev": "ac030bd9ba98e318e1f4c4328d60766ade8ebe8b", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "nix-filter", + "type": "github" + } + }, "nix-index-database": { "inputs": { "nixpkgs": [ @@ -974,13 +969,13 @@ "darwin": "darwin", "home-manager": "home-manager", "hyprland": "hyprland", - "hyprsplit": "hyprsplit", "moonlight": "moonlight", "nix-index-database": "nix-index-database", "nix-options-search": "nix-options-search", "nixpkgs": "nixpkgs_3", "nvf": "nvf", "rust-overlay": "rust-overlay", + "split-monitor-workspaces": "split-monitor-workspaces", "zen-browser": "zen-browser", "zig": "zig", "zls": "zls" @@ -1090,6 +1085,27 @@ "url": "https://devimages-cdn.apple.com/design/resources/download/SF-Pro.dmg" } }, + "split-monitor-workspaces": { + "inputs": { + "hyprland": [ + "hyprland" + ], + "nix-filter": "nix-filter" + }, + "locked": { + "lastModified": 1767711026, + "narHash": "sha256-yTuyde8TpBR3NhNnOcK4uOGukvMCwrH3otP8E04e9X0=", + "owner": "Duckonaut", + "repo": "split-monitor-workspaces", + "rev": "764548c3aa22c9f4cb436ec7243d21795eb6ebec", + "type": "github" + }, + "original": { + "owner": "Duckonaut", + "repo": "split-monitor-workspaces", + "type": "github" + } + }, "systems": { "locked": { "lastModified": 1681028828, diff --git a/flake.nix b/flake.nix index 2bb8a7960f39b2ad84e043cfe054460f19134021..d2044bb01ef0a1bdf1dc2fb5e775ef7e73cb31af 100644 --- a/flake.nix +++ b/flake.nix @@ -25,9 +25,9 @@ moonlight.inputs.nixpkgs.follows = "nixpkgs"; hyprland.url = "github:hyprwm/Hyprland"; - hyprsplit = { - url = "github:shezdy/hyprsplit"; - inputs.hyprland.follows = "hyprland"; + split-monitor-workspaces = { + url = "github:Duckonaut/split-monitor-workspaces"; + inputs.hyprland.follows = "hyprland"; # <- make sure this line is present for the plugin to work as intended }; zen-browser = { @@ -72,6 +72,27 @@ }; }); }) + # https://github.com/NixOS/nixpkgs/issues/476669#issuecomment-3707850520 + (_: prev: { + vesktop = prev.vesktop.overrideAttrs (_: { + preBuild = '' + cp -r ${prev.electron.dist} electron-dist + chmod -R u+w electron-dist + ''; + buildPhase = '' + runHook preBuild + + pnpm build + pnpm exec electron-builder \ + --dir \ + -c.asarUnpack="**/*.node" \ + -c.electronDist="electron-dist" \ + -c.electronVersion=${prev.electron.version} + + runHook postBuild + ''; + }); + }) # custom packages (_: pkgs: { diff --git a/modules/neovim/default.nix b/modules/neovim/default.nix index ba0eb9a3070da9d298bb1aaa677260b93cad1194..00bdc55f942877eca658ffef86d0c7ec89e8bc04 100644 --- a/modules/neovim/default.nix +++ b/modules/neovim/default.nix @@ -84,14 +84,6 @@ treesitter = { enable = true; addDefaultGrammars = true; - # this is buggy and keybind.nix overwrites its keymaps anyways - incrementalSelection.enable = false; - mappings.incrementalSelection = { - decrementByNode = null; - incrementByNode = null; - incrementByScope = null; - init = null; - }; }; debugger.nvim-dap = { enable = true; diff --git a/modules/shared/nix.nix b/modules/shared/nix.nix index 7997bf0f9cf8b0613f98f2a09d69e8929a9fe821..3c945aaa1f66bbe8bf071d2633812b2f7fbdc40d 100644 --- a/modules/shared/nix.nix +++ b/modules/shared/nix.nix @@ -28,11 +28,14 @@ "https://nix-community.cachix.org" # For haskell "https://cache.iog.io" + + "https://hyprland.cachix.org" ]; trusted-public-keys = [ "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" # For haskell "hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ=" + "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ]; }; gc = { diff --git a/users/fish/vim/languages.nix b/users/fish/vim/languages.nix index d948dd1884da8b708ee20cb09db340ce269c74d5..136faddae4bf3857ce6518307e5510e495d7c043 100644 --- a/users/fish/vim/languages.nix +++ b/users/fish/vim/languages.nix @@ -69,9 +69,6 @@ enable = true; fold = true; addDefaultGrammars = true; - highlight = { - additionalVimRegexHighlighting = true; - }; grammars = with pkgs.vimPlugins.nvim-treesitter.builtGrammars; [ markdown_inline diff --git a/users/natalie/desktop/configuration.nix b/users/natalie/desktop/configuration.nix index 4a872b330b4d5d554afffaff5293e37653e2d7c4..8fc0ba203558b3b37bcd192c80a45558a09f98f0 100644 --- a/users/natalie/desktop/configuration.nix +++ b/users/natalie/desktop/configuration.nix @@ -19,10 +19,10 @@ }; programs = { - hyprland = { - enable = true; - withUWSM = true; - }; + # hyprland = { + # enable = true; + # withUWSM = true; + # }; gamemode.enable = true; _1password.enable = true; @@ -87,10 +87,10 @@ xdgOpenUsePortal = true; config = { common.default = [ "gtk" ]; - hyprland.default = [ - "gtk" - "hyprland" - ]; + # hyprland.default = [ + # "gtk" + # "hyprland" + # ]; }; extraPortals = with pkgs; [ xdg-desktop-portal-gtk ]; diff --git a/users/natalie/home/default.nix b/users/natalie/home/default.nix index 445c2f4561b6fe3a0a7c394810c132ce4da4e2e2..c5dd5d8abd082a55398053eb706f198564c9f070 100644 --- a/users/natalie/home/default.nix +++ b/users/natalie/home/default.nix @@ -2,11 +2,11 @@ { imports = [ ./tmux.nix - ./hyprland + # ./hyprland ./vicinae.nix - ./swaync.nix + # ./swaync.nix ./gtk.nix - ./waybar + # ./waybar ./scripts ]; } diff --git a/users/natalie/home/hyprland/binds.nix b/users/natalie/home/hyprland/binds.nix index 331a96ce2df08e24f65c323b02e9db86397f5335..139396467a12283c9eac0839dfed3080b3712384 100644 --- a/users/natalie/home/hyprland/binds.nix +++ b/users/natalie/home/hyprland/binds.nix @@ -72,29 +72,29 @@ "CTRL ALT, down, exec, hyprctl dispatch focuswindow tiled" # switch workspace - "$mainMod, 1, workspace, 1" - "$mainMod, 2, workspace, 2" - "$mainMod, 3, workspace, 3" - "$mainMod, 4, workspace, 4" - "$mainMod, 5, workspace, 5" - "$mainMod, 6, workspace, 6" - "$mainMod, 7, workspace, 7" - "$mainMod, 8, workspace, 8" - "$mainMod, 9, workspace, 9" - "$mainMod, 0, workspace, 10" + "$mainMod, 1, split-workspace, 1" + "$mainMod, 2, split-workspace, 2" + "$mainMod, 3, split-workspace, 3" + "$mainMod, 4, split-workspace, 4" + "$mainMod, 5, split-workspace, 5" + "$mainMod, 6, split-workspace, 6" + "$mainMod, 7, split-workspace, 7" + "$mainMod, 8, split-workspace, 8" + "$mainMod, 9, split-workspace, 9" + "$mainMod, 0, split-workspace, 10" # same as above, but switch to the workspace - "$mainMod SHIFT, 1, movetoworkspacesilent, 1" # movetoworkspacesilent - "$mainMod SHIFT, 2, movetoworkspacesilent, 2" - "$mainMod SHIFT, 3, movetoworkspacesilent, 3" - "$mainMod SHIFT, 4, movetoworkspacesilent, 4" - "$mainMod SHIFT, 5, movetoworkspacesilent, 5" - "$mainMod SHIFT, 6, movetoworkspacesilent, 6" - "$mainMod SHIFT, 7, movetoworkspacesilent, 7" - "$mainMod SHIFT, 8, movetoworkspacesilent, 8" - "$mainMod SHIFT, 9, movetoworkspacesilent, 9" - "$mainMod SHIFT, 0, movetoworkspacesilent, 10" - "$mainMod CTRL, c, movetoworkspace, empty" + "$mainMod SHIFT, 1, split-movetoworkspacesilent, 1" # movetoworkspacesilent + "$mainMod SHIFT, 2, split-movetoworkspacesilent, 2" + "$mainMod SHIFT, 3, split-movetoworkspacesilent, 3" + "$mainMod SHIFT, 4, split-movetoworkspacesilent, 4" + "$mainMod SHIFT, 5, split-movetoworkspacesilent, 5" + "$mainMod SHIFT, 6, split-movetoworkspacesilent, 6" + "$mainMod SHIFT, 7, split-movetoworkspacesilent, 7" + "$mainMod SHIFT, 8, split-movetoworkspacesilent, 8" + "$mainMod SHIFT, 9, split-movetoworkspacesilent, 9" + "$mainMod SHIFT, 0, split-movetoworkspacesilent, 10" + "$mainMod CTRL, c, split-movetoworkspace, empty" # window control "$mainMod SHIFT, left, movewindow, l" @@ -131,8 +131,8 @@ ",XF86AudioPrev,exec, playerctl previous" ",XF86AudioStop,exec, playerctl stop" - "$mainMod, mouse_down, workspace, e-1" - "$mainMod, mouse_up, workspace, e+1" + "$mainMod, mouse_down, split-workspace, e-1" + "$mainMod, mouse_up, split-workspace, e+1" # clipboard manager "$mainMod, V, exec, vicinae vicinae://extensions/vicinae/clipboard/history" diff --git a/users/natalie/home/hyprland/hyprland.nix b/users/natalie/home/hyprland/hyprland.nix index 0cece8848cead1e0cc27c017d0ea3523983bf6d3..98e84788058905ca61a73eda081d45fe0b865cc2 100644 --- a/users/natalie/home/hyprland/hyprland.nix +++ b/users/natalie/home/hyprland/hyprland.nix @@ -1,4 +1,9 @@ -{ config, pkgs, ... }: +{ + inputs, + config, + pkgs, + ... +}: { home.packages = with pkgs; [ swww @@ -23,8 +28,10 @@ # ]; wayland.windowManager.hyprland = { enable = true; - package = null; - portalPackage = null; + package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland; + # make sure to also set the portal package, so that they are in sync + portalPackage = + inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland; xwayland = { enable = true; diff --git a/users/natalie/home/hyprland/plugins.nix b/users/natalie/home/hyprland/plugins.nix index 3b11db0ee0d0c57ee5622d80e7c6d6289bf3ea51..9c3b9f8ddc81f2e7f95e0651dd81e1027bb74e50 100644 --- a/users/natalie/home/hyprland/plugins.nix +++ b/users/natalie/home/hyprland/plugins.nix @@ -2,12 +2,12 @@ { wayland.windowManager.hyprland = { plugins = [ - inputs.hyprsplit.packages.${pkgs.stdenv.hostPlatform.system}.hyprsplit + inputs.split-monitor-workspaces.packages.${pkgs.system}.split-monitor-workspaces ]; settings = { plugin = { - hyprsplit = { - num_workspaces = 5; + split-monitor-workspaces = { + count = 5; }; }; }; diff --git a/users/natalie/home/hyprland/settings.nix b/users/natalie/home/hyprland/settings.nix index 5a14c824e7f5c64c8078dbf4e48cbfb659b3affe..2052cf6bf89dc4f5ae2d0e3de961910b7bda2948 100644 --- a/users/natalie/home/hyprland/settings.nix +++ b/users/natalie/home/hyprland/settings.nix @@ -1,6 +1,7 @@ { ... }: { wayland.windowManager.hyprland.settings = { + "$mainMod" = "SUPER"; # see: https://wiki.hypr.land/Configuring/Variables/#input input = { kb_layout = "us"; @@ -9,9 +10,8 @@ }; # https://wiki.hypr.land/Configuring/Variables/#general general = { - "$mainMod" = "SUPER"; layout = "dwindle"; - no_border_on_floating = false; + #no_border_on_floating = false; }; # https://wiki.hypr.land/Configuring/Variables/#misc @@ -23,7 +23,7 @@ enable_swallow = true; swallow_regex = "^(ghostty)$"; focus_on_activate = true; - new_window_takes_over_fullscreen = 2; + on_focus_under_fullscreen = 2; middle_click_paste = false; }; diff --git a/users/natalie/home/hyprland/windowrules.nix b/users/natalie/home/hyprland/windowrules.nix index f06d04f98c6413a1da9bab51b14e4ecba7370a78..9c32dd93f23d2fab815bd36f93b995b42d5a2076 100644 --- a/users/natalie/home/hyprland/windowrules.nix +++ b/users/natalie/home/hyprland/windowrules.nix @@ -3,10 +3,11 @@ wayland.windowManager.hyprland.settings = { # https://wiki.hypr.land/Configuring/Window-Rules/#layer-rules windowrule = [ - "float,class:^(mpv)$" - "pin,class:^(rofi)$" - "pin,class:^(waypaper)$" - "float,title:^(Volume Control)$" + # "float,class:^(mpv)$" + # "pin,class:^(rofi)$" + # "pin,class:^(waypaper)$" + "match:class ^(Volume Control)$, float on" + # "float,title:^(Volume Control)$" #awakened-poe-trade # https://github.com/SnosMe/awakened-poe-trade/issues/1137#issuecomment-2992606569 @@ -97,9 +98,9 @@ # https://wiki.hypr.land/Configuring/Window-Rules/#layer-rules layerrule = [ - "blur, vicinae" - "ignorealpha 0, vicinae" - "noanim, vicinae" + "blur on, match:namespace vicinae" + "ignore_alpha 0, match:namespace vicinae" + "no_anim on, match:namespace vicinae" # "dimaround, rofi" # "dimaround, swaync-control-center" ]; diff --git a/users/natalie/packages.nix b/users/natalie/packages.nix index 5a280c31a78733af85c510ac97cb52f4a925b804..a7083bae5b85c923822edf5ef228b366399d5957 100644 --- a/users/natalie/packages.nix +++ b/users/natalie/packages.nix @@ -94,6 +94,7 @@ with pkgs; # nodePackages.npm go elan + zola #expo deps watchman diff --git a/users/natalie/vim/languages.nix b/users/natalie/vim/languages.nix index d948dd1884da8b708ee20cb09db340ce269c74d5..136faddae4bf3857ce6518307e5510e495d7c043 100644 --- a/users/natalie/vim/languages.nix +++ b/users/natalie/vim/languages.nix @@ -69,9 +69,6 @@ enable = true; fold = true; addDefaultGrammars = true; - highlight = { - additionalVimRegexHighlighting = true; - }; grammars = with pkgs.vimPlugins.nvim-treesitter.builtGrammars; [ markdown_inline -- 2.54.0