From 71d8044079c11b2db0ff09ed4327749b916abba8 Mon Sep 17 00:00:00 2001 From: Stephan Date: Tue, 11 Nov 2025 07:42:04 -0800 Subject: [PATCH] changes over time --- hypr/hyprland.conf | 4 +- hypr/scripts/monitor_setup.sh | 17 +- waybar/config.jsonc.backup | 489 ++++++++++++++++++++++++++++++++++ 3 files changed, 503 insertions(+), 7 deletions(-) create mode 100644 waybar/config.jsonc.backup diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf index 9cf25b8..04f51cf 100644 --- a/hypr/hyprland.conf +++ b/hypr/hyprland.conf @@ -50,6 +50,7 @@ exec-once = waybar & disown exec-once = librewolf & disown exec-once = swaync & disown exec-once = hypridle & disown +exec-once = seventeenlands & disown exec-once = ~/.config/hypr/scripts/monitor_setup.sh exec-once = hyprctl dispatch exec "[workspace 3 silent] signal-desktop" exec-once = hyprctl dispatch exec "[workspace 3 silent] discord" @@ -142,9 +143,6 @@ animations { animation = layersOut, 1, 1.5, linear, fade animation = fadeLayersIn, 1, 1.79, almostLinear animation = fadeLayersOut, 1, 1.39, almostLinear - animation = workspaces, 1, 1.94, almostLinear, fade - animation = workspacesIn, 1, 1.21, almostLinear, fade - animation = workspacesOut, 1, 1.94, almostLinear, fade } # Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/ diff --git a/hypr/scripts/monitor_setup.sh b/hypr/scripts/monitor_setup.sh index 4474d01..af2b738 100755 --- a/hypr/scripts/monitor_setup.sh +++ b/hypr/scripts/monitor_setup.sh @@ -82,10 +82,13 @@ if [ -z "$EXTERNAL" ]; then notify-send -t 3000 "Monitor Setup" "Laptop-only mode\nUsing: $LAPTOP_RES" hyprctl keyword monitor "$LAPTOP,$LAPTOP_RES,auto,1" + # Wait for monitors to be ready + sleep 1 + for ws in {1..5}; do hyprctl keyword "workspace $ws,monitor:$LAPTOP" >/dev/null 2>&1 hyprctl dispatch workspace "$ws" >/dev/null 2>&1 - hyprctl dispatch moveworkspacetomonitor "$ws $LAPTOP" 2>/dev/null + hyprctl dispatch moveworkspacetomonitor $ws $LAPTOP 2>/dev/null done exit 0 fi @@ -96,15 +99,18 @@ if [ "$LID_STATE" = "open" ]; then hyprctl keyword monitor "$LAPTOP,$LAPTOP_RES,auto,1" hyprctl keyword monitor "$EXTERNAL,$EXT_RES,auto,1" + # Wait for monitors to be ready + sleep 1 + for ws in {1..3}; do hyprctl keyword "workspace $ws,monitor:$LAPTOP" >/dev/null 2>&1 hyprctl dispatch workspace "$ws" >/dev/null 2>&1 - hyprctl dispatch moveworkspacetomonitor "$ws $LAPTOP" 2>/dev/null + hyprctl dispatch moveworkspacetomonitor $ws $LAPTOP 2>/dev/null done for ws in {4..5}; do hyprctl keyword "workspace $ws,monitor:$EXTERNAL" >/dev/null 2>&1 hyprctl dispatch workspace "$ws" >/dev/null 2>&1 - hyprctl dispatch moveworkspacetomonitor "$ws $EXTERNAL" 2>/dev/null + hyprctl dispatch moveworkspacetomonitor $ws $EXTERNAL 2>/dev/null done # Case 3: External + closed lid else @@ -113,10 +119,13 @@ else hyprctl keyword monitor "$LAPTOP,disable" hyprctl keyword monitor "$EXTERNAL,$EXT_RES,0x0,1" + # Wait for monitors to be ready + sleep 1 + for ws in {1..5}; do hyprctl keyword "workspace $ws,monitor:$EXTERNAL" >/dev/null 2>&1 hyprctl dispatch workspace "$ws" >/dev/null 2>&1 - hyprctl dispatch moveworkspacetomonitor "$ws $EXTERNAL" 2>/dev/null + hyprctl dispatch moveworkspacetomonitor $ws $EXTERNAL 2>/dev/null done fi diff --git a/waybar/config.jsonc.backup b/waybar/config.jsonc.backup new file mode 100644 index 0000000..fc9305c --- /dev/null +++ b/waybar/config.jsonc.backup @@ -0,0 +1,489 @@ +{ + "layer": "top", + "position": "top", + "mode": "dock", + "reload_style_on_change": true, + "gtk-layer-shell": true, + + // <<--< Positions >-->> + + "modules-left": [ + "custom/ws", // window icon + "custom/left1", + + "hyprland/workspaces", // workspaces + "custom/right1", + + "custom/paddw", + "hyprland/window" // window title + ], + + "modules-center": [ + "custom/paddc", + "custom/left2", + "custom/temperature", // temperature + + "custom/left3", + "memory", // memory + + "custom/left4", + "cpu", // cpu + "custom/leftin1", + + "custom/left5", + "custom/distro", // distro icon + "custom/right2", + + "custom/rightin1", + "idle_inhibitor", // idle inhibitor + "clock#time", // time + "custom/right3", + + "clock#date", // date + "custom/right4", + + "custom/wifi", // wi-fi + "custom/wireguard", // wireguard + "bluetooth", // bluetooth + "custom/update", // system update + "custom/right5" + ], + + "modules-right": [ + "mpris", // media info + + "custom/left6", + "pulseaudio", // output device + + "custom/left7", + "backlight", // brightness + + "custom/left8", + "battery", // battery + + "custom/leftin2", + "custom/power" // power button + ], + + // <<--< Modules >-->> + + "custom/ws": { + "exec": "~/.config/waybar/scripts/current-theme.sh", + "return-type": "json", + "format": " 󰤕 ", + "on-click": "~/.config/waybar/scripts/theme-switcher.sh", + "min-length": 3, + "max-length": 3 + }, + + "hyprland/workspaces": { + "on-scroll-up": "hyprctl dispatch workspace -1", + "on-scroll-down": "hyprctl dispatch workspace +1", + "persistent-workspaces": { + "1": [], + "2": [], + "3": [], + "4": [], + "5": [] + } + }, + + "hyprland/window": { + "format": "{}", + "tooltip": false, + "min-length": 5, + + "rewrite": { + // Desktop + "": + " Hyprland", + + // Terminal + "~": " Terminal", + "zsh": " Terminal", + "kitty": " Terminal", + + "tmux(.*)": + " Tmux", + + // Browser + + "(.*)Mozilla Firefox": + "󰈹 Firefox", + "(.*) — Mozilla Firefox": + "󰈹 $1", + + "(.*)Zen Browser": + "󰺕 Zen Browser", + "(.*) — Zen Browser": + "󰺕 $1", + + // Development + + "(.*) - Visual Studio Code": + "󰨞 $1", + "(.*)Visual Studio Code": + "󰨞 Visual Studio Code", + + "nvim": + " Neovim", + "nvim (.*)": + " $1", + + "vim": + " Vim", + "vim (.*)": + " $1", + + // Media + + "(.*)Spotify": + " Spotify", + "(.*)Spotify Premium": + " Spotify Premium", + + "OBS(.*)": + " OBS Studio", + + "VLC media player": + "󰕼 VLC Media Player", + "(.*) - VLC media player": + "󰕼 $1", + + "(.*) - mpv": + " $1", + + "qView": " qView", + + "(.*).jpg": " $1.jpg", + "(.*).png": " $1.png", + "(.*).svg": " $1.svg", + + // Social + + "vesktop": + " Discord", + + "• Discord(.*)": "Discord$1", + "(.*)Discord(.*)": + " $1Discord$2", + + // Documents + + "ONLYOFFICE Desktop Editors": + " OnlyOffice Desktop", + + "(.*).docx": + " $1.docx", + "(.*).xlsx": + " $1.xlsx", + "(.*).pptx": + " $1.pptx", + "(.*).pdf": + " $1.pdf", + + // System + "Authenticate": " Authenticate" + } + }, + + "custom/temperature": { + "exec": "~/.config/waybar/scripts/cpu-temp.sh", + "return-type": "json", + "format": "{}", + "interval": 5, + "min-length": 8, + "max-length": 8 + }, + + "memory": { + "states": { + "warning": 75, + "critical": 90 + }, + + "format": "󰘚 {percentage}%", + "format-critical": "󰀦 {percentage}%", + "tooltip": false, + // "tooltip-format": "Memory Used: {used:0.1f} GB / {total:0.1f} GB", + "interval": 5, + "min-length": 7, + "max-length": 7 + }, + + "cpu": { + "format": "󰻠 {usage}%", + "tooltip": false, + "interval": 5, + "min-length": 6, + "max-length": 6 + }, + + "custom/distro": { + "format": " ", + "tooltip": false + }, + + "idle_inhibitor": { + "format": "{icon}", + + "format-icons": { + "activated": "󰈈 ", + "deactivated": "󰈉 " + }, + + "tooltip-format-activated": "Presentation Mode", + "tooltip-format-deactivated": "Idle Mode", + "start-activated": false + }, + + "clock#time": { + "format": "{:%H:%M}", + "tooltip": false, + // "tooltip-format": "Standard Time: {:%I:%M %p}", + "min-length": 6, + "max-length": 6 + }, + + "clock#date": { + "format": "󰨳 {:%m-%d}", + "tooltip-format": "{calendar}", + + "calendar": { + "mode": "month", + "mode-mon-col": 6, + "weeks-pos": "right", + "on-click-right": "mode", + + "format": { + "months": + "{}", + "weekdays": + "{}", + "today": + "{}" + } + }, + + "actions": { + "on-click": "mode", + "on-click-right": "mode" + }, + + "min-length": 8, + "max-length": 8 + }, + + "custom/wifi": { + "exec": "~/.config/waybar/scripts/wifi-status.sh", + "return-type": "json", + "format": "{}", + "on-click": "~/.config/waybar/scripts/wifi-menu.sh", + "on-click-right": "kitty --title '󰤨 Network Manager TUI' bash -c nmtui", + "interval": 1, + "min-length": 1, + "max-length": 1 + }, + + "custom/wireguard": { + "format": "{}", + "return-type": "json", + "interval": 10, + "exec": "~/.config/waybar/scripts/wireguard-status.sh", + "tooltip": true + }, + + + "bluetooth": { + "format": "󰂰", + "format-disabled": "󰂲", + "format-connected": "󰂱", + "format-connected-battery": "󰂱", + + "tooltip-format": + "{num_connections} connected", + "tooltip-format-disabled": + "Bluetooth Disabled", + "tooltip-format-connected": + "{device_enumerate}", + "tooltip-format-enumerate-connected": + "{device_alias}", + "tooltip-format-enumerate-connected-battery": + ":: {device_alias}: 󱊣 {device_battery_percentage}%", + + "on-click": "~/.config/waybar/scripts/bluetooth-menu.sh", + "on-click-right": "kitty --title '󰂯 Bluetooth TUI' bash -c bluetui", + "interval": 1, + "min-length": 1, + "max-length": 1 + }, + + "custom/update": { + "exec": "~/.config/waybar/scripts/system-update.sh", + "return-type": "json", + "format": "{}", + "on-click": "hyprctl dispatch exec '~/.config/waybar/scripts/system-update.sh up'", + "interval": 180, + "min-length": 1, + "max-length": 1 + }, + + "mpris": { + "format": "{player_icon} {title} - {artist}", + "format-paused": "{status_icon} {title} - {artist}", + + "player-icons": { + "default": "󰝚 ", + "spotify": "󰓇 ", + "firefox": "󰗃 " + }, + "status-icons": { + "paused": "\u200A\u200A󰏤\u2009\u2009" + }, + + "tooltip-format": "Playing: {title} - {artist}", + "tooltip-format-paused": "Paused: {title} - {artist}", + "min-length": 5, + "max-length": 35 + }, + + "pulseaudio": { + "format": "{icon} {volume}%", + "format-muted": "󰝟 {volume}%", + + "format-icons": { + "default": ["󰕿", "󰖀", "󰕾"], + "headphone": "󰋋", + "headset": "󰋋" + }, + + "tooltip-format": "Device: {desc}", + "on-click": "~/.config/waybar/scripts/volume-control.sh -o m", + "on-scroll-up": "~/.config/waybar/scripts/volume-control.sh -o i", + "on-scroll-down": "~/.config/waybar/scripts/volume-control.sh -o d", + "min-length": 6, + "max-length": 6 + }, + + "backlight": { + "format": "{icon} {percent}%", + "format-icons": ["", "", "", "", "", "", "", "", ""], + "tooltip": false, + "on-scroll-up": "~/.config/waybar/scripts/brightness-control.sh -o i", + "on-scroll-down": "~/.config/waybar/scripts/brightness-control.sh -o d", + "min-length": 6, + "max-length": 6 + }, + + "battery": { + "states": { + "warning": 20, + "critical": 10 + }, + + "format": "{icon} {capacity}%", + "format-icons": ["󰂎", "󰁻", "󰁼", "󰁽", "󰁾", "󰁿", "󰂀", "󰂁", "󰂂", "󰁹"], + "format-charging": " {capacity}%", + + "tooltip-format": "Discharging: {time}", + "tooltip-format-charging": "Charging: {time}", + "interval": 1, + "min-length": 6, + "max-length": 6 + }, + + "custom/power": { + "format": " ", + "tooltip": false, + // "tooltip-format": "Power Menu", + "on-click": "~/.config/waybar/scripts/power-menu.sh" + }, + + // <<--< Padding >-->> + + "custom/paddw": { + "format": " ", + "tooltip": false + }, + + "custom/paddc": { + "format": " ", + "tooltip": false + }, + + // Left Arrows + + "custom/left1": { + "format": "", + "tooltip": false + }, + "custom/left2": { + "format": "", + "tooltip": false + }, + "custom/left3": { + "format": "", + "tooltip": false + }, + "custom/left4": { + "format": "", + "tooltip": false + }, + "custom/left5": { + "format": "", + "tooltip": false + }, + "custom/left6": { + "format": "", + "tooltip": false + }, + "custom/left7": { + "format": "", + "tooltip": false + }, + "custom/left8": { + "format": "", + "tooltip": false + }, + + // Right Arrows + + "custom/right1": { + "format": "", + "tooltip": false + }, + "custom/right2": { + "format": "", + "tooltip": false + }, + "custom/right3": { + "format": "", + "tooltip": false + }, + "custom/right4": { + "format": "", + "tooltip": false + }, + "custom/right5": { + "format": "", + "tooltip": false + }, + + // Left Inverse + + "custom/leftin1": { + "format": "", + "tooltip": false + }, + "custom/leftin2": { + "format": "", + "tooltip": false + }, + + // Right Inverse + + "custom/rightin1": { + "format": "", + "tooltip": false + } +}