Compare commits

...
2 Commits
Author SHA1 Message Date
gitadmin 38b77f94a3 chore(dotfiles): add foot window titles, herdr keybinds, fix jq tab escapes
- Add -T window title flags to all SSH/tmux/herdr desktop entries
- Rename nca-ai-01.desktop -> nca-ai-01-tmux.desktop, update mise symlink
- Add herdr reload_config and zoom keybinds, toast delivery config
- Bind Leader+Shift+Return to launch herdr terminal
- Fix jq \t to literal tab in hyprland client scripts
2026-07-30 09:40:14 -04:00
gitadmin 8a240fbde7 feat(desktop): add nca-ai-01 herdr desktop entry 2026-07-29 12:55:10 -04:00
20 changed files with 44 additions and 25 deletions
+5
View File
@@ -14,6 +14,8 @@ auto_switch = true
[keys] [keys]
prefix = "ctrl+space" prefix = "ctrl+space"
reload_config = "prefix+ctrl+r"
zoom = "prefix+z"
[remote] [remote]
manage_ssh_config = true manage_ssh_config = true
@@ -44,3 +46,6 @@ key = "prefix+o"
type = "plugin_action" type = "plugin_action"
command = "herdr-zoxide.browse" command = "herdr-zoxide.browse"
description = "Browse zoxide directories" description = "Browse zoxide directories"
[ui.toast]
delivery = "herdr"
+8 -1
View File
@@ -280,8 +280,15 @@ hl.bind(LEADER .. "return", function()
field = "class", field = "class",
cmd = "gtk-launch tmux.desktop", cmd = "gtk-launch tmux.desktop",
}) })
end, { description = "Open terminal" }) end, { description = "Open tmux terminal" })
hl.bind(LEADER .. "SHIFT + return", function()
focus_or_launch({
match = "herdr",
field = "class",
cmd = "gtk-launch herdr.desktop",
})
end, { description = "Open herdr terminal" })
hl.bind(LEADER .. "B", hl.dsp.exec_raw(browser), { description = "Open browser" }) hl.bind(LEADER .. "B", hl.dsp.exec_raw(browser), { description = "Open browser" })
hl.bind(LEADER .. "T", hl.dsp.exec_raw(terminal .. " -e btop"), { description = "Open system monitor" }) hl.bind(LEADER .. "T", hl.dsp.exec_raw(terminal .. " -e btop"), { description = "Open system monitor" })
+1 -1
View File
@@ -2,7 +2,7 @@
Version=1.0 Version=1.0
Name=alcazar herdr Name=alcazar herdr
Comment=remote dev Comment=remote dev
Exec=foot -a alcazar-herdr ssh alcazar mise exec -- herdr --session main Exec=foot -a alcazar-herdr -T "alcazar herdr" ssh alcazar mise exec -- herdr --session main
Terminal=false Terminal=false
Type=Application Type=Application
Icon=foot Icon=foot
+1 -1
View File
@@ -2,7 +2,7 @@
Version=1.0 Version=1.0
Name=alcazar tmux Name=alcazar tmux
Comment=remote dev Comment=remote dev
Exec=foot -a alcazar-tmux ssh alcazar mise exec -- tmux new -A -s main Exec=foot -a alcazar-tmux -T "alcazar tmux" ssh alcazar mise exec -- tmux new -A -s main
Terminal=false Terminal=false
Type=Application Type=Application
Icon=foot Icon=foot
+1 -1
View File
@@ -2,7 +2,7 @@
Version=1.0 Version=1.0
Name=bianca Herdr Name=bianca Herdr
Comment=remote dev Comment=remote dev
Exec=foot -a bianca-herdr ssh bianca mise exec -- herdr --session main Exec=foot -a bianca-herdr -T "bianca herdr" ssh bianca mise exec -- herdr --session main
Terminal=false Terminal=false
Type=Application Type=Application
Icon=foot Icon=foot
+1 -1
View File
@@ -2,7 +2,7 @@
Version=1.0 Version=1.0
Name=bianca tmux Name=bianca tmux
Comment=remote dev Comment=remote dev
Exec=foot -a bianca-tmux ssh bianca mise exec -- tmux new -A -s main Exec=foot -a bianca-tmux -T "bianca tmux" ssh bianca mise exec -- tmux new -A -s main
Terminal=false Terminal=false
Type=Application Type=Application
Icon=foot Icon=foot
+1 -1
View File
@@ -2,7 +2,7 @@
Version=1.0 Version=1.0
Name=dupont herdr Name=dupont herdr
Comment=remote dev Comment=remote dev
Exec=foot -a dupont-herdr ssh dupont mise exec -- herdr --session main Exec=foot -a dupont-herdr -T "dupont herdr" ssh dupont mise exec -- herdr --session main
Terminal=false Terminal=false
Type=Application Type=Application
Icon=foot Icon=foot
+1 -1
View File
@@ -2,7 +2,7 @@
Version=1.0 Version=1.0
Name=dupont tmux Name=dupont tmux
Comment=remote dev Comment=remote dev
Exec=foot -a dupont-tmux ssh dupont mise exec -- tmux new -A -s main Exec=foot -a dupont-tmux -T "dupont tmux" ssh dupont mise exec -- tmux new -A -s main
Terminal=false Terminal=false
Type=Application Type=Application
Icon=foot Icon=foot
+3 -3
View File
@@ -1,8 +1,8 @@
[Desktop Entry] [Desktop Entry]
Version=1.0 Version=1.0
Name=herdr Terminal Name=Terminal herdr
Comment=herdr Terminal Comment=Terminal with herdr mux
Exec=foot -a herdr mise exec -- herdr --session=main Exec=foot -a herdr -T "terminal herdr" mise exec -- herdr --session=main
Terminal=false Terminal=false
Type=Application Type=Application
Icon=foot Icon=foot
+9
View File
@@ -0,0 +1,9 @@
[Desktop Entry]
Version=1.0
Name=nca-ai-01 herdr
Comment=remote dev
Exec=foot -a nca-ai-01-herdr -T "nca ai 01 herdr" ssh nca-ai-01 mise exec -- herdr --session main
Terminal=false
Type=Application
Icon=foot
StartupNotify=true
@@ -2,7 +2,7 @@
Version=1.0 Version=1.0
Name=nca-ai-01 tmux Name=nca-ai-01 tmux
Comment=remote dev Comment=remote dev
Exec=foot -a nca-ai-01-tmux ssh nca-ai-01 mise exec -- tmux new -A -s main Exec=foot -a nca-ai-01-tmux -T "nca ai 01 tmux" ssh nca-ai-01 mise exec -- tmux new -A -s main
Terminal=false Terminal=false
Type=Application Type=Application
Icon=foot Icon=foot
+1 -1
View File
@@ -2,7 +2,7 @@
Version=1.0 Version=1.0
Name=obelix herdr Name=obelix herdr
Comment=remote dev Comment=remote dev
Exec=foot -a obelix-herdr ssh obelix mise exec -- herdr --session main Exec=foot -a obelix-herdr -T "obelix herdr" ssh obelix mise exec -- herdr --session main
Terminal=false Terminal=false
Type=Application Type=Application
Icon=foot Icon=foot
+1 -1
View File
@@ -2,7 +2,7 @@
Version=1.0 Version=1.0
Name=obelix tmux Name=obelix tmux
Comment=remote dev Comment=remote dev
Exec=foot -a obelix-tmux ssh obelix mise exec -- tmux new -A -s main Exec=foot -a obelix-tmux -T "obelix tmux" ssh obelix mise exec -- tmux new -A -s main
Terminal=false Terminal=false
Type=Application Type=Application
Icon=foot Icon=foot
+1 -1
View File
@@ -2,7 +2,7 @@
Version=1.0 Version=1.0
Name=steve dev herdr Name=steve dev herdr
Comment=remote dev Comment=remote dev
Exec=foot -a steve-dev-herdr ssh steve-dev mise exec -- herdr --session main Exec=foot -a steve-dev-herdr -T "steve dev herdr" ssh steve-dev mise exec -- herdr --session main
Terminal=false Terminal=false
Type=Application Type=Application
Icon=foot Icon=foot
+1 -1
View File
@@ -2,7 +2,7 @@
Version=1.0 Version=1.0
Name=steve dev tmux Name=steve dev tmux
Comment=remote dev Comment=remote dev
Exec=foot -a steve-dev-tmux ssh steve-dev mise exec -- tmux new -A -s main Exec=foot -a steve-dev-tmux -T "steve dev tmux" ssh steve-dev mise exec -- tmux new -A -s main
Terminal=false Terminal=false
Type=Application Type=Application
Icon=foot Icon=foot
+1 -1
View File
@@ -1,6 +1,6 @@
[Desktop Entry] [Desktop Entry]
Type=Application Type=Application
Exec=foot Exec=foot -T terminal
Icon=foot Icon=foot
Terminal=false Terminal=false
Categories=System;TerminalEmulator; Categories=System;TerminalEmulator;
+3 -3
View File
@@ -1,8 +1,8 @@
[Desktop Entry] [Desktop Entry]
Version=1.0 Version=1.0
Name=Tmux Terminal Name=Terminal tmux
Comment=Tmux Terminal Comment=Terminal with tmux
Exec=foot -a tmux mise exec -- tmux new -A -s main Exec=foot -a tmux -T "terminal tmux" mise exec -- tmux new -A -s main
Terminal=false Terminal=false
Type=Application Type=Application
Icon=foot Icon=foot
+2 -1
View File
@@ -77,7 +77,8 @@ dotfiles.default_mode = "symlink-each"
"~/.local/share/applications/dupont-herdr.desktop" = { source = "desktop/dupont-herdr.desktop", mode = "symlink" } "~/.local/share/applications/dupont-herdr.desktop" = { source = "desktop/dupont-herdr.desktop", mode = "symlink" }
"~/.local/share/applications/obelix-tmux.desktop" = { source = "desktop/obelix-tmux.desktop", mode = "symlink" } "~/.local/share/applications/obelix-tmux.desktop" = { source = "desktop/obelix-tmux.desktop", mode = "symlink" }
"~/.local/share/applications/obelix-herdr.desktop" = { source = "desktop/obelix-herdr.desktop", mode = "symlink" } "~/.local/share/applications/obelix-herdr.desktop" = { source = "desktop/obelix-herdr.desktop", mode = "symlink" }
"~/.local/share/applications/nca-ai-01.desktop" = { source = "desktop/nca-ai-01.desktop", mode = "symlink" } "~/.local/share/applications/nca-ai-01-tmux.desktop" = { source = "desktop/nca-ai-01-tmux.desktop", mode = "symlink" }
"~/.local/share/applications/nca-ai-01-herdr.desktop" = { source = "desktop/nca-ai-01-herdr.desktop", mode = "symlink" }
# scripts. # scripts.
"~/.local/bin/hyprland-activeworkspace" = { source = "script/hyprland-activeworkspace", mode = "symlink" } "~/.local/bin/hyprland-activeworkspace" = { source = "script/hyprland-activeworkspace", mode = "symlink" }
+1 -1
View File
@@ -2,7 +2,7 @@
#chooser="walker -d" #chooser="walker -d"
chooser="rofi -i -dmenu -display-columns 1" chooser="rofi -i -dmenu -display-columns 1"
workspace=$(hyprctl activeworkspace -j | jq -r '.id') workspace=$(hyprctl activeworkspace -j | jq -r '.id')
selected=$(hyprctl clients -j | jq -r 'to_entries | .[] | select(.value.hidden == false) | "\(.value.title)\\\t\(.value.class)::\(.value.address)"' | $chooser -p 'Client to Fetch') selected=$(hyprctl clients -j | jq -r 'to_entries | .[] | select(.value.hidden == false) | "\(.value.title)\t\(.value.class)::\(.value.address)"' | $chooser -p 'Client to Fetch')
#address=$(hyprctl clients -j | jq -r "to_entries | .[] | select(.value.title == \"$selected\") | \"\(.value.address)\"") #address=$(hyprctl clients -j | jq -r "to_entries | .[] | select(.value.title == \"$selected\") | \"\(.value.address)\"")
address=$(echo "$selected" | awk -F '::' '{print $NF}') address=$(echo "$selected" | awk -F '::' '{print $NF}')
#hyprctl dispatch movetoworkspace "$workspace,address:$address" #hyprctl dispatch movetoworkspace "$workspace,address:$address"
+1 -4
View File
@@ -1,12 +1,9 @@
#!/bin/sh #!/bin/sh
#chooser="walker -d" #chooser="walker -d"
chooser="rofi -i -dmenu -display-columns 1" chooser="rofi -i -dmenu -display-columns 1"
selected=$(hyprctl clients -j | jq -r 'to_entries | .[] | select(.value.hidden == false) | "\(.value.title)\\\t\(.value.class)::\(.value.address)"' | $chooser -p 'Client to Focus') selected=$(hyprctl clients -j | jq -r 'to_entries | .[] | select(.value.hidden == false) | "\(.value.title) \t\(.value.class)::\(.value.address)"' | $chooser -p 'Client to Focus')
address=$(echo $selected | awk -F'::' '{print $NF}') address=$(echo $selected | awk -F'::' '{print $NF}')
#address=$(hyprctl clients -j | jq -r "to_entries | .[] | select(.value.title == '$selected') | \"\(.value.address)\"")
json=$(hyprctl clients -j | jq -r ".[] | select(.address == \"$address\")") json=$(hyprctl clients -j | jq -r ".[] | select(.address == \"$address\")")
workspace=$(echo $json | jq -r '.workspace.id') workspace=$(echo $json | jq -r '.workspace.id')
hyprctl dispatch "hl.dsp.focus({workspace = $workspace , on_current_monitor = true})" hyprctl dispatch "hl.dsp.focus({workspace = $workspace , on_current_monitor = true})"
hyprctl dispatch "hl.dsp.focus({ window = \"address:$address\" })" hyprctl dispatch "hl.dsp.focus({ window = \"address:$address\" })"
#hyprctl dispatch focusworkspaceoncurrentmonitor "$workspace"
#hyprctl dispatch focuswindow "address:$address"