From 4bfc75a626dbe54d0057e46635472782c048556b Mon Sep 17 00:00:00 2001 From: Prad Nukala Date: Thu, 8 Oct 2026 11:29:15 -0400 Subject: [PATCH] feat(niri-launch): use OS default terminal when launching --- dot_config/tmux/tmux.conf | 10 +++++----- dot_local/bin/executable_niri-launch | 5 +++-- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/dot_config/tmux/tmux.conf b/dot_config/tmux/tmux.conf index 7d369f7..c10d957 100644 --- a/dot_config/tmux/tmux.conf +++ b/dot_config/tmux/tmux.conf @@ -160,11 +160,11 @@ set -g status-right "#[fg=#{@tab-active-fg}]#{?pane_in_mode,COPY ,}#{?client_pre # as in kitty (tab_bar_background none). kitty's separator rule: a solid #  into a differently colored neighbour, thin  between two inactive # tabs, none after the last. The arrow into the current tab is painted in -# @tab-bg, the window background; Ghostty's background-opacity-cells gives it -# the same opacity as the window, so it is indistinguishable from it. (Plain -#  is one of Ghostty's built-in sprites and fills the whole cell even -# with adjust-cell-height; inverse glyphs such as  come from the font -# and leave gaps.) +# @tab-bg, the window background: ghostty-tmux sets it per session to +# Ghostty's own background so it blends into the window. (Plain  is +# one of Ghostty's built-in sprites and fills the whole cell even with +# adjust-cell-height; inverse glyphs such as  come from the font and +# leave gaps.) set -g window-status-format "#[fg=#{@tab-fg},bg=default] #I #W #{?next_window_active,#[fg=#{@tab-bg}#,bg=#{@tab-active-bg}],#{?window_end_flag,,}}" set -g window-status-current-format "#[fg=#{@tab-active-fg},bg=#{@tab-active-bg},bold] #I #W #[fg=#{@tab-active-bg},bg=default,nobold]" set -g pane-border-style "fg=brightblack" diff --git a/dot_local/bin/executable_niri-launch b/dot_local/bin/executable_niri-launch index cef25f2..04774fc 100644 --- a/dot_local/bin/executable_niri-launch +++ b/dot_local/bin/executable_niri-launch @@ -58,9 +58,10 @@ elif [[ "$APP" == "browser" ]]; then INSTANCES=($(niri msg -j windows | jq -r '.[] | select((.app_id // "") | ascii_downcase | test("^(zen|brave|chromium|firefox)")) | .id')) DEFAULT_SPAWN="zen" elif [[ "$APP" == "terminal" ]]; then - # Cycle through all terminals (ghostty/kitty/alacritty), launch default if none + # Cycle through all terminals (ghostty/kitty/alacritty), launch the OS + # default (xdg-terminal-exec, ~/.config/xdg-terminals.list) if none INSTANCES=($(niri msg -j windows | jq -r '.[] | select((.app_id // "") | ascii_downcase | test("kitty|alacritty|ghostty")) | .id')) - DEFAULT_SPAWN="kitty" + DEFAULT_SPAWN="xdg-terminal-exec" elif [[ "$APP" == "ai" ]]; then # Cycle through AI desktop apps (Claude/Hermes), launch Hermes if none INSTANCES=($(niri msg -j windows | jq -r '.[] | select((.app_id // "") | ascii_downcase | test("claude|hermes")) | .id'))