diff options
Diffstat (limited to 'dotfiles/hyprland/.local')
7 files changed, 704 insertions, 8 deletions
diff --git a/dotfiles/hyprland/.local/bin/monitor-dashboard b/dotfiles/hyprland/.local/bin/monitor-dashboard new file mode 100755 index 0000000..9236d20 --- /dev/null +++ b/dotfiles/hyprland/.local/bin/monitor-dashboard @@ -0,0 +1,37 @@ +#!/bin/sh +# monitor-dashboard - tmux session with system monitoring tools +# Each tool gets its own window for full screen real estate + +SESSION="monitor" + +# Check if system has a battery +has_battery() { + [ -d /sys/class/power_supply/BAT0 ] || [ -d /sys/class/power_supply/BAT1 ] +} + +# Attach to existing session or create new one +if tmux has-session -t "$SESSION" 2>/dev/null; then + exec tmux attach-session -t "$SESSION" +fi + +# Create new session with btop in first window +tmux new-session -d -s "$SESSION" -n btop btop + +# Add windows for other monitoring tools (grouped logically) +# CPU/GPU +tmux new-window -t "$SESSION" -n s-tui s-tui +tmux new-window -t "$SESSION" -n nvtop nvtop +# Disk +tmux new-window -t "$SESSION" -n duf "watch --color -n 60 duf" +# Network +tmux new-window -t "$SESSION" -n bandwhich "sudo bandwhich" +tmux new-window -t "$SESSION" -n wavemon wavemon +# Power (laptop only) +if has_battery; then + tmux new-window -t "$SESSION" -n powertop "sudo powertop" +fi + +# Start on btop window +tmux select-window -t "$SESSION:btop" + +exec tmux attach-session -t "$SESSION" diff --git a/dotfiles/hyprland/.local/bin/start-hyprland b/dotfiles/hyprland/.local/bin/start-hyprland new file mode 100755 index 0000000..a5d191d --- /dev/null +++ b/dotfiles/hyprland/.local/bin/start-hyprland @@ -0,0 +1,11 @@ +#!/bin/sh +# Wrapper to launch Hyprland with persistent logging +# Shadows /usr/bin/start-hyprland when ~/.local/bin is in PATH + +LOG_DIR="$HOME/.local/var/log" +TIMESTAMP=$(date +%Y-%m-%d-%H%M%S) +LOG_FILE="$LOG_DIR/hyprland-$TIMESTAMP.log" + +mkdir -p "$LOG_DIR" + +exec /usr/bin/start-hyprland "$@" > "$LOG_FILE" 2>&1 diff --git a/dotfiles/hyprland/.local/bin/toggle-scratchpad b/dotfiles/hyprland/.local/bin/toggle-scratchpad index bb10ef7..b3da6b4 100755 --- a/dotfiles/hyprland/.local/bin/toggle-scratchpad +++ b/dotfiles/hyprland/.local/bin/toggle-scratchpad @@ -9,6 +9,17 @@ if [ -z "$NAME" ]; then exit 1 fi +# Auto-detect current Hyprland socket if env var is stale +if ! hyprctl version >/dev/null 2>&1; then + # Find the most recent Hyprland instance with a socket + for dir in /run/user/"$(id -u)"/hypr/*/; do + if [ -S "${dir}.socket.sock" ]; then + export HYPRLAND_INSTANCE_SIGNATURE="$(basename "$dir")" + break + fi + done +fi + STATEFILE="/tmp/scratchpad-$NAME-open" NOW=$(date +%s) diff --git a/dotfiles/hyprland/.local/bin/waybar-layout b/dotfiles/hyprland/.local/bin/waybar-layout index 6c45877..62470aa 100755 --- a/dotfiles/hyprland/.local/bin/waybar-layout +++ b/dotfiles/hyprland/.local/bin/waybar-layout @@ -3,17 +3,17 @@ # Shows current layout with nerd font icons # Layouts: master -> tab group (monocle) -> scrolling -> floating -# Get current layout -LAYOUT=$(hyprctl getoption general:layout -j | jq -r '.str') - -# Check if workspace has allfloat enabled -ALLFLOAT=$(hyprctl activeworkspace -j | jq -r '.hasfullscreenwindow') +# Check if hyprctl is reachable +if ! hyprctl version >/dev/null 2>&1; then + echo '{"text": "<span size='"'"'large'"'"'></span>", "tooltip": "Hyprland not connected"}' + exit 0 +fi -# Check if active window is floating -FLOATING=$(hyprctl activewindow -j 2>/dev/null | jq -r '.floating // false') +# Get current layout (redirect stderr to suppress connection errors) +LAYOUT=$(hyprctl getoption general:layout -j 2>/dev/null | jq -r '.str // "unknown"') # Check workspace rules for allfloat -WSRULES=$(hyprctl activeworkspace -j | jq -r '.rules // []') +WSRULES=$(hyprctl activeworkspace -j 2>/dev/null | jq -r '.rules // []') # Determine icon and tooltip if [ "$LAYOUT" = "master" ] && echo "$WSRULES" | grep -q "allfloat"; then diff --git a/dotfiles/hyprland/.local/share/easyeffects/output/dt770-pro-250-harman-eq.json b/dotfiles/hyprland/.local/share/easyeffects/output/dt770-pro-250-harman-eq.json new file mode 100644 index 0000000..8774a0f --- /dev/null +++ b/dotfiles/hyprland/.local/share/easyeffects/output/dt770-pro-250-harman-eq.json @@ -0,0 +1,199 @@ +{ + "output": { + "blocklist": [], + "equalizer": { + "input-gain": -4.7, + "output-gain": 0.0, + "mode": "IIR", + "num-bands": 9, + "split-channels": false, + "left": { + "band0": { + "frequency": 45.0, + "gain": -4.7, + "q": 0.4, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band1": { + "frequency": 102.0, + "gain": 7.0, + "q": 5.0, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band2": { + "frequency": 134.0, + "gain": -3.8, + "q": 3.0, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band3": { + "frequency": 217.0, + "gain": 5.5, + "q": 2.3, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band4": { + "frequency": 2400.0, + "gain": -1.4, + "q": 4.0, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band5": { + "frequency": 3350.0, + "gain": 5.0, + "q": 3.0, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band6": { + "frequency": 5200.0, + "gain": 0.7, + "q": 3.0, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band7": { + "frequency": 6200.0, + "gain": -5.6, + "q": 4.0, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band8": { + "frequency": 10000.0, + "gain": -6.0, + "q": 0.7, + "type": "Hi-shelf", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + } + }, + "right": { + "band0": { + "frequency": 45.0, + "gain": -4.7, + "q": 0.4, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band1": { + "frequency": 102.0, + "gain": 7.0, + "q": 5.0, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band2": { + "frequency": 134.0, + "gain": -3.8, + "q": 3.0, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band3": { + "frequency": 217.0, + "gain": 5.5, + "q": 2.3, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band4": { + "frequency": 2400.0, + "gain": -1.4, + "q": 4.0, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band5": { + "frequency": 3350.0, + "gain": 5.0, + "q": 3.0, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band6": { + "frequency": 5200.0, + "gain": 0.7, + "q": 3.0, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band7": { + "frequency": 6200.0, + "gain": -5.6, + "q": 4.0, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band8": { + "frequency": 10000.0, + "gain": -6.0, + "q": 0.7, + "type": "Hi-shelf", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + } + } + }, + "plugins_order": [ + "equalizer" + ] + } +} diff --git a/dotfiles/hyprland/.local/share/easyeffects/output/pixel-buds-pro-2-harman-eq.json b/dotfiles/hyprland/.local/share/easyeffects/output/pixel-buds-pro-2-harman-eq.json new file mode 100644 index 0000000..056e216 --- /dev/null +++ b/dotfiles/hyprland/.local/share/easyeffects/output/pixel-buds-pro-2-harman-eq.json @@ -0,0 +1,219 @@ +{ + "output": { + "blocklist": [], + "equalizer": { + "input-gain": -2.8, + "output-gain": 0.0, + "mode": "IIR", + "num-bands": 10, + "split-channels": false, + "left": { + "band0": { + "frequency": 105.0, + "gain": 2.1, + "q": 0.7, + "type": "Lo-shelf", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band1": { + "frequency": 1384.0, + "gain": -4.3, + "q": 2.82, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band2": { + "frequency": 670.0, + "gain": 1.5, + "q": 1.78, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band3": { + "frequency": 41.0, + "gain": 0.8, + "q": 1.26, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band4": { + "frequency": 4720.0, + "gain": -3.1, + "q": 6.0, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band5": { + "frequency": 10000.0, + "gain": -0.6, + "q": 0.7, + "type": "Hi-shelf", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band6": { + "frequency": 3725.0, + "gain": 2.9, + "q": 6.0, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band7": { + "frequency": 2565.0, + "gain": 1.7, + "q": 4.21, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band8": { + "frequency": 153.0, + "gain": 0.7, + "q": 2.47, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band9": { + "frequency": 6024.0, + "gain": 0.7, + "q": 4.95, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + } + }, + "right": { + "band0": { + "frequency": 105.0, + "gain": 2.1, + "q": 0.7, + "type": "Lo-shelf", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band1": { + "frequency": 1384.0, + "gain": -4.3, + "q": 2.82, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band2": { + "frequency": 670.0, + "gain": 1.5, + "q": 1.78, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band3": { + "frequency": 41.0, + "gain": 0.8, + "q": 1.26, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band4": { + "frequency": 4720.0, + "gain": -3.1, + "q": 6.0, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band5": { + "frequency": 10000.0, + "gain": -0.6, + "q": 0.7, + "type": "Hi-shelf", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band6": { + "frequency": 3725.0, + "gain": 2.9, + "q": 6.0, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band7": { + "frequency": 2565.0, + "gain": 1.7, + "q": 4.21, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band8": { + "frequency": 153.0, + "gain": 0.7, + "q": 2.47, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band9": { + "frequency": 6024.0, + "gain": 0.7, + "q": 4.95, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + } + } + }, + "plugins_order": [ + "equalizer" + ] + } +} diff --git a/dotfiles/hyprland/.local/share/easyeffects/output/pxc-550-ii-harman-eq.json b/dotfiles/hyprland/.local/share/easyeffects/output/pxc-550-ii-harman-eq.json new file mode 100644 index 0000000..c400419 --- /dev/null +++ b/dotfiles/hyprland/.local/share/easyeffects/output/pxc-550-ii-harman-eq.json @@ -0,0 +1,219 @@ +{ + "output": { + "blocklist": [], + "equalizer": { + "input-gain": -3.0, + "output-gain": 0.0, + "mode": "IIR", + "num-bands": 10, + "split-channels": false, + "left": { + "band0": { + "frequency": 105.0, + "gain": 2.5, + "q": 0.7, + "type": "Lo-shelf", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band1": { + "frequency": 185.0, + "gain": -3.5, + "q": 1.35, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band2": { + "frequency": 2997.0, + "gain": 3.1, + "q": 1.24, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band3": { + "frequency": 4429.0, + "gain": 3.2, + "q": 5.98, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band4": { + "frequency": 5270.0, + "gain": -5.7, + "q": 4.03, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band5": { + "frequency": 10000.0, + "gain": -2.6, + "q": 0.7, + "type": "Hi-shelf", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band6": { + "frequency": 49.0, + "gain": -0.8, + "q": 1.84, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band7": { + "frequency": 359.0, + "gain": 0.8, + "q": 2.24, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band8": { + "frequency": 248.0, + "gain": -0.9, + "q": 4.62, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band9": { + "frequency": 735.0, + "gain": 0.4, + "q": 2.9, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + } + }, + "right": { + "band0": { + "frequency": 105.0, + "gain": 2.5, + "q": 0.7, + "type": "Lo-shelf", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band1": { + "frequency": 185.0, + "gain": -3.5, + "q": 1.35, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band2": { + "frequency": 2997.0, + "gain": 3.1, + "q": 1.24, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band3": { + "frequency": 4429.0, + "gain": 3.2, + "q": 5.98, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band4": { + "frequency": 5270.0, + "gain": -5.7, + "q": 4.03, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band5": { + "frequency": 10000.0, + "gain": -2.6, + "q": 0.7, + "type": "Hi-shelf", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band6": { + "frequency": 49.0, + "gain": -0.8, + "q": 1.84, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band7": { + "frequency": 359.0, + "gain": 0.8, + "q": 2.24, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band8": { + "frequency": 248.0, + "gain": -0.9, + "q": 4.62, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + }, + "band9": { + "frequency": 735.0, + "gain": 0.4, + "q": 2.9, + "type": "Bell", + "mode": "RLC (BT)", + "slope": "x1", + "mute": false, + "solo": false + } + } + }, + "plugins_order": [ + "equalizer" + ] + } +} |
