summaryrefslogtreecommitdiff
path: root/dotfiles/hyprland/.local
diff options
context:
space:
mode:
Diffstat (limited to 'dotfiles/hyprland/.local')
-rwxr-xr-xdotfiles/hyprland/.local/bin/monitor-dashboard37
-rwxr-xr-xdotfiles/hyprland/.local/bin/start-hyprland11
-rwxr-xr-xdotfiles/hyprland/.local/bin/toggle-scratchpad11
-rwxr-xr-xdotfiles/hyprland/.local/bin/waybar-layout16
-rw-r--r--dotfiles/hyprland/.local/share/easyeffects/output/dt770-pro-250-harman-eq.json199
-rw-r--r--dotfiles/hyprland/.local/share/easyeffects/output/pixel-buds-pro-2-harman-eq.json219
-rw-r--r--dotfiles/hyprland/.local/share/easyeffects/output/pxc-550-ii-harman-eq.json219
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"
+ ]
+ }
+}