feat: Moves hyprland workspace configuration to it's own file.

This commit is contained in:
2025-12-10 11:21:50 -05:00
parent 207e4469b2
commit f39a9113d6
7 changed files with 108 additions and 91 deletions

View File

@@ -43,7 +43,7 @@ bindd = $mainMod, B, New [b]rowser, exec,
bindd = $mainMod SHIFT, B, New private [b]rowser, exec, $browser --incognito
bindd = $mainMod, C, [C]alendar, exec, $pwa --or-focus "https://www.icloud.com/calendar"
bindd = $mainMod SHIFT, C, [C]onfig folder in tmux session, exec, $terminal -e $tmuxSessionator ~/.config
bindd = $mainMod, D, [D]ispatch app - special workspace, exec, $pwa --special dispatch $housecallPro
bindd = $mainMod, D, [D]ispatch app - special workspace, togglespecialworkspace, dispatch
bindd = $mainMod SHIFT, D, [D]ispatch app - new window, exec, $pwa --new $housecallPro
bindd = $mainMod, E, [E]mail - personal, exec, $pwa --or-focus "https://mail.proton.me"
bindd = $mainMod SHIFT, E, [E]mail - work, exec, $scripts/launch --or-focus thunderbird uwsm app -- thunderbird
@@ -58,10 +58,10 @@ bindd = $mainMod, J, Focus window - down, movefo
bindd = $mainMod, K, Focus window - up, movefocus, u # move window focus using vim keys
bindd = $mainMod, L, Focus window - right, movefocus, r # move window focus using vim keys
bindd = $mainMod SHIFT, L, Workspace - forward, workspace, +1
bindd = $mainMod, M, [M]usic - apple, exec, $pwa --special music "https://music.apple.com"
bindd = $mainMod, M, [M]usic - jellyfin-tui, togglespecialworkspace, music
bindd = $mainMod SHIFT, M, [M]enu bar - toggle visible, exec, $scripts/waybarctl --toggle
bindd = $mainMod, O, Purchase [o]rders, exec, $pwa --special dispatch "https://po.housh.dev"
bindd = $mainMod, P, [P]assword manager, exec, $pwa --special pass "https://pass.proton.me"
bindd = $mainMod, P, [P]assword manager, togglespecialworkspace, pass
bindd = $mainMod SHIFT, P, [P]hotos, exec, $pwa --or-focus "https://photos.housh.dev"
bindd = $mainMod SHIFT, R, [R]estart menu bar, exec, $scripts/waybarctl --restart
bindd = $mainMod, S, Toggle [s]pecial workspace, togglespecialworkspace, magic # use $windowMod S to send window to the special workspace

View File

@@ -9,6 +9,7 @@
source = ~/.config/hypr/hyprenv.conf
source = ~/.config/hypr/hyprmonitors.conf
source = ~/.config/hypr/hyprwindows.conf
source = ~/.config/hypr/hyprworkspaces.conf
source = ~/.config/hypr/hyprkeybinds.conf
source = ~/.config/hypr/hyprinput.conf
source = ~/.config/hypr/hyprautostart.conf

View File

@@ -1,10 +1,8 @@
##############################
### WINDOWS AND WORKSPACES ###
##############################
###############
### WINDOWS ###
###############
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
#
windowrule = float, tag:floating-window
windowrule = center, tag:floating-window
@@ -43,10 +41,6 @@ windowrule = opacity 1.0, class:.*youtube.com.*
# Fix some dragging issues with XWayland
windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
workspace = special:hidden, invisible
workspace = special:pass, class:.*pass.proton.me.*
workspace = special:dispatch, class:.*pro.housecallpro.com.*
# To get more information about a windows class, title, XWayland status or its size, you can use `hyprctl clients`. (From Hyprland Wiki)
windowrulev2 = float,class:^(one.alynx.showmethekey)$
windowrulev2 = float,class:^(showmethekey-gtk)$ # make window floating

14
env/.config/hypr/hyprworkspaces.conf vendored Normal file
View File

@@ -0,0 +1,14 @@
##################
### WORKSPACES ###
##################
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
$scripts = ~/.local/scripts/hypr
$pwa = $scripts/webapp launch
$housecallPro = $pwa "https://pro.housecallpro.com/app/calendar_new"
workspace = special:hidden, invisible
workspace = special:pass,on-created-empty: $pwa "https://pass.proton.me"
workspace = special:dispatch,on-created-empty: $housecallPro && $housecallPro
workspace = special:music,on-created-empty: ghostty --class=com.ghostty.music -e jellyfin-tui

View File

@@ -110,8 +110,8 @@ toggle_special() {
launch_application() {
log "Launching..."
log "'${launch_cmd[@]}'"
eval exec ${launch_cmd[@]}
log "'${launch_cmd[*]}'"
eval exec "${launch_cmd[*]}"
}
################################################################################

10
env/.local/scripts/hypr/music vendored Executable file
View File

@@ -0,0 +1,10 @@
#!/usr/bin/env bash
# Launches jellyfin-tui in a new ghostty terminal.
# USAGE: $ music
SCRIPTS=${SCRIPTS:-"$HOME/.local/scripts"}
"$SCRIPTS"/hypr/launch --special music \
com.ghostty.music \
uwsm app -- ghostty --class=com.ghostty.music -e jellyfin-tui

View File

@@ -1,3 +1 @@
#!/usr/bin/env bash
yay ${1:-"-S --noconfirm"} jellyfin-tui
jellyfin-tui