From c859f074e549c7b152e6b61f47ea2cf713054e32 Mon Sep 17 00:00:00 2001 From: muon Date: Sat, 27 Sep 2025 09:54:25 +0000 Subject: [PATCH 1/2] Update layout --- flake.lock | 18 +++++------ modules/home/terminal/development.nix | 21 +++++++----- .../{zellij.kdl => zellij/config.kdl} | 0 .../home/terminal/zellij/floating_fix.patch | 32 +++++++++++++++++++ modules/nixos/core/nix.nix | 2 ++ 5 files changed, 56 insertions(+), 17 deletions(-) rename modules/home/terminal/{zellij.kdl => zellij/config.kdl} (100%) create mode 100644 modules/home/terminal/zellij/floating_fix.patch diff --git a/flake.lock b/flake.lock index b34bc04..9d25be5 100644 --- a/flake.lock +++ b/flake.lock @@ -230,11 +230,11 @@ ] }, "locked": { - "lastModified": 1758719930, - "narHash": "sha256-DgHe1026Ob49CPegPMiWj1HNtlMTGQzfSZQQVlHC950=", + "lastModified": 1758810399, + "narHash": "sha256-bpWoE1tiFX5T1tr5EudkpW9Kk02XR+6olkoSkf3nHZU=", "owner": "nix-community", "repo": "home-manager", - "rev": "142acd7a7d9eb7f0bb647f053b4ddfd01fdfbf1d", + "rev": "39d26c16866260eee6d0487fe9c102ba1c1bf7b2", "type": "github" }, "original": { @@ -368,11 +368,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1758427187, - "narHash": "sha256-pHpxZ/IyCwoTQPtFIAG2QaxuSm8jWzrzBGjwQZIttJc=", + "lastModified": 1758690382, + "narHash": "sha256-NY3kSorgqE5LMm1LqNwGne3ZLMF2/ILgLpFr1fS4X3o=", "owner": "nixos", "repo": "nixpkgs", - "rev": "554be6495561ff07b6c724047bdd7e0716aa7b46", + "rev": "e643668fd71b949c53f8626614b21ff71a07379d", "type": "github" }, "original": { @@ -520,11 +520,11 @@ "tinted-zed": "tinted-zed" }, "locked": { - "lastModified": 1758716250, - "narHash": "sha256-PvOo4vSk7WAOhSifgL+rzExihquU9DOIOQPrUVuFHpE=", + "lastModified": 1758757969, + "narHash": "sha256-2zC4aHoDsR12Jyd6WvSxmQbAKT4V93frnHHDjA8o3r8=", "owner": "danth", "repo": "stylix", - "rev": "526c882800837cce7676f3e11bb3e13e975c6032", + "rev": "484819a16fdc1c76cdd62d8e94018db44e5e1a8b", "type": "github" }, "original": { diff --git a/modules/home/terminal/development.nix b/modules/home/terminal/development.nix index b84b69d..348bfa0 100644 --- a/modules/home/terminal/development.nix +++ b/modules/home/terminal/development.nix @@ -4,7 +4,11 @@ config, inputs, ... -}: { +}: let + zellij-muon = pkgs.zellij.overrideAttrs (previousAttrs: { + patches = previousAttrs.patches ++ [./zellij/floating_fix.patch]; + }); +in { options.mods.terminal.development.enable = lib.mkEnableOption "enables cli editor"; @@ -40,7 +44,7 @@ show_release_notes._args = [false]; }; - extraConfig = builtins.readFile ./zellij.kdl; + extraConfig = builtins.readFile ./zellij/config.kdl; layouts = { dev = { @@ -61,7 +65,7 @@ {"children" = {};} { pane = { - size = 2; + size = 1; borderless = true; plugin = { location = "zellij:status-bar"; @@ -74,13 +78,14 @@ { tab = { _props = { - name = "Project"; + name = "project"; focus = true; }; _children = [ { pane = { - command = "nvim"; + command = "zsh"; + args = ["-c" "nvim"]; }; } ]; @@ -89,7 +94,7 @@ { tab = { _props = { - name = "Run"; + name = "test"; }; _children = [ { @@ -103,12 +108,12 @@ { tab = { _props = { - name = "Test"; + name = "git"; }; _children = [ { pane = { - command = "zsh"; + command = "lazygit"; }; } ]; diff --git a/modules/home/terminal/zellij.kdl b/modules/home/terminal/zellij/config.kdl similarity index 100% rename from modules/home/terminal/zellij.kdl rename to modules/home/terminal/zellij/config.kdl diff --git a/modules/home/terminal/zellij/floating_fix.patch b/modules/home/terminal/zellij/floating_fix.patch new file mode 100644 index 0000000..c929612 --- /dev/null +++ b/modules/home/terminal/zellij/floating_fix.patch @@ -0,0 +1,32 @@ +diff --git a/zellij-utils/src/kdl/kdl_layout_parser.rs b/zellij-utils/src/kdl/kdl_layout_parser.rs +index c38c0146..d44440a7 100644 +--- a/zellij-utils/src/kdl/kdl_layout_parser.rs ++++ b/zellij-utils/src/kdl/kdl_layout_parser.rs +@@ -1607,6 +1607,10 @@ impl<'a> KdlLayoutParser<'a> { + floating_pane.add_cwd_to_layout(&cwd_prefix); + } + } ++ // hide_floating_panes on the tab_layout takes precedence over the hide_floating_panes on the tab_template ++ tab_layout.hide_floating_panes = ++ kdl_get_bool_property_or_child_value!(kdl_node, "hide_floating_panes") ++ .unwrap_or(tab_layout.hide_floating_panes); + tab_layout.external_children_index = None; + Ok(( + is_focused, +@@ -1671,6 +1675,8 @@ impl<'a> KdlLayoutParser<'a> { + let mut tab_floating_children = vec![]; + let mut external_children_index = None; + let mut children_index_offset = 0; ++ let hide_floating_panes = ++ kdl_get_bool_property_or_child_value!(kdl_node, "hide_floating_panes").unwrap_or(false); + let is_part_of_stack = false; + if let Some(children) = kdl_children_nodes!(kdl_node) { + for (i, child) in children.iter().enumerate() { +@@ -1721,6 +1727,7 @@ impl<'a> KdlLayoutParser<'a> { + children_split_direction, + children: tab_children, + external_children_index, ++ hide_floating_panes, + ..Default::default() + }, + tab_floating_children, diff --git a/modules/nixos/core/nix.nix b/modules/nixos/core/nix.nix index cf45442..16167ee 100644 --- a/modules/nixos/core/nix.nix +++ b/modules/nixos/core/nix.nix @@ -37,6 +37,7 @@ "https://nixpkgs-unfree.cachix.org" "https://hyprland.cachix.org" "https://devenv.cachix.org" + "https://muon.cachix.org" ]; trusted-public-keys = [ "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" @@ -44,6 +45,7 @@ "nixpkgs-unfree.cachix.org-1:hqvoInulhbV4nJ9yJOEr+4wxhDV4xq2d1DK7S6Nj6rs=" "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" "devenv.cachix.org-1:w1cLUi8dv3hnoSPGAuibQv+f9TZLr6cv/Hm9XgU50cw=" + "muon.cachix.org-1:tHFazVc8JsSeeLa2WLi50DHpJZKYy4V+oKlbhnbecXE=" ]; }; From 94f74efd85faea69c76b7184f64cc3801b2ddfd3 Mon Sep 17 00:00:00 2001 From: muon Date: Sat, 27 Sep 2025 09:56:15 +0000 Subject: [PATCH 2/2] Update command --- modules/home/desktop/i3.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/home/desktop/i3.nix b/modules/home/desktop/i3.nix index 693bb2e..6bc5655 100644 --- a/modules/home/desktop/i3.nix +++ b/modules/home/desktop/i3.nix @@ -22,7 +22,7 @@ name = "zmenu"; runtimeInputs = [zellij zoxide wmctrl i3 rofi alacritty zsh]; text = '' - ZPATH=$(zoxide query -l | sed -e "s|$HOME||g" | cut -b 2- | rofi -dmenu) + ZPATH=$(zoxide query -l | sed -e "s|$HOME/||g" | rofi -dmenu) [[ -z "$ZPATH" ]] && exit ZSESH=$(echo "$ZPATH" | tr / -) ZWIND=$(wmctrl -l | grep "$ZSESH" || echo "")