Compare commits
14 Commits
feat/herme
...
feat/disk-
| Author | SHA1 | Date | |
|---|---|---|---|
| 18dd99d798 | |||
| 7b1998a40d | |||
| 9b4c678fd9 | |||
| 53b376e6e3 | |||
| 6f6b24d3c3 | |||
| 7a0948a43f | |||
| addf9fbe83 | |||
| fb1d0cd2d9 | |||
| 5f465ecb5a | |||
| 48038df872 | |||
| d5095064c2 | |||
| 8f5d2e73bc | |||
| 69c2447f04 | |||
| 79ce045657 |
2
Makefile
2
Makefile
@@ -1,5 +1,5 @@
|
|||||||
# Define list of directories you want to stow
|
# Define list of directories you want to stow
|
||||||
CONFIG_DIRS := btop doom hypr kitty nvim rclone starship tmux wallpapers waybar wireplumber wofi yazi zsh
|
CONFIG_DIRS := btop doom hypr kitty local nvim rclone starship tmux wallpapers waybar wireplumber wofi yazi zsh
|
||||||
|
|
||||||
all: stow_all
|
all: stow_all
|
||||||
wal -i ~/.config/wallpapers/green_yellow_forest.jpg -o ~/.config/waybar/launch.sh
|
wal -i ~/.config/wallpapers/green_yellow_forest.jpg -o ~/.config/waybar/launch.sh
|
||||||
|
|||||||
@@ -147,7 +147,8 @@ animations {
|
|||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
||||||
dwindle {
|
dwindle {
|
||||||
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
# Note: pseudotile variable removed in 0.55+. Use `pseudo` dispatcher to toggle per-window.
|
||||||
|
# Bound to $mainMod + P below.
|
||||||
|
|
||||||
# This prevents the layout from collapsing if you close one window
|
# This prevents the layout from collapsing if you close one window
|
||||||
preserve_split = true # You probably want this
|
preserve_split = true # You probably want this
|
||||||
@@ -219,8 +220,8 @@ bind = $mainMod, E, exec, $editor
|
|||||||
bind = $mainMod, V, togglefloating,
|
bind = $mainMod, V, togglefloating,
|
||||||
bind = $mainMod, R, exec, $menu
|
bind = $mainMod, R, exec, $menu
|
||||||
bind = $mainMod, Z, exec, $zen
|
bind = $mainMod, Z, exec, $zen
|
||||||
#bind = $mainMod, P, pseudo, # dwindle
|
# togglesplit removed as standalone dispatcher in 0.55+; use `layoutmsg togglesplit` instead
|
||||||
bind = $mainMod, P, togglesplit, # dwindle
|
bind = $mainMod, P, pseudo, # dwindle
|
||||||
bind = $mainMod, N, movecurrentworkspacetomonitor, -1
|
bind = $mainMod, N, movecurrentworkspacetomonitor, -1
|
||||||
bind = $mainMod SHIFT, N, movecurrentworkspacetomonitor, +1
|
bind = $mainMod SHIFT, N, movecurrentworkspacetomonitor, +1
|
||||||
bind = $mainMod, X, swapwindow
|
bind = $mainMod, X, swapwindow
|
||||||
|
|||||||
8
local/.local/share/applications/qet-xephyr.desktop
Normal file
8
local/.local/share/applications/qet-xephyr.desktop
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Name=QET (Xephyr)
|
||||||
|
Comment=QElectroTech in nested X server for Wayland compatibility
|
||||||
|
Exec=/home/tpouplier/ExoKortex/4-Automata/dotfiles/scripts/qet-xephyr.sh
|
||||||
|
Icon=qelectrotech
|
||||||
|
Type=Application
|
||||||
|
Categories=Graphics;Engineering;
|
||||||
|
Terminal=false
|
||||||
21
scripts/qet-xephyr.sh
Executable file
21
scripts/qet-xephyr.sh
Executable file
@@ -0,0 +1,21 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# Launch QElectroTech in a nested Xephyr X server with Openbox
|
||||||
|
# Works around Wayland drag-and-drop issue in QET
|
||||||
|
|
||||||
|
XEPHYR_PID=""
|
||||||
|
|
||||||
|
cleanup() {
|
||||||
|
kill $XEPHYR_PID 2>/dev/null
|
||||||
|
exit 0
|
||||||
|
}
|
||||||
|
trap cleanup SIGINT SIGTERM
|
||||||
|
|
||||||
|
Xephyr -screen 1920x1080 :1 -title QET -br &
|
||||||
|
XEPHYR_PID=$!
|
||||||
|
|
||||||
|
sleep 1
|
||||||
|
DISPLAY=:1 openbox &
|
||||||
|
sleep 0.5
|
||||||
|
DISPLAY=:1 qelectrotech &
|
||||||
|
|
||||||
|
wait $XEPHYR_PID
|
||||||
@@ -25,6 +25,7 @@
|
|||||||
|
|
||||||
"modules-right": [
|
"modules-right": [
|
||||||
"group/hardware",
|
"group/hardware",
|
||||||
|
"custom/disk-monitor",
|
||||||
"pulseaudio",
|
"pulseaudio",
|
||||||
"bluetooth",
|
"bluetooth",
|
||||||
"network",
|
"network",
|
||||||
|
|||||||
@@ -88,6 +88,13 @@
|
|||||||
"path": "/",
|
"path": "/",
|
||||||
"on-click": "kitty btop"
|
"on-click": "kitty btop"
|
||||||
},
|
},
|
||||||
|
|
||||||
|
// disk monitor (standalone, color-coded)
|
||||||
|
"custom/disk-monitor": {
|
||||||
|
"exec": "$HOME/.config/waybar/scripts/disk-monitor.sh --waybar",
|
||||||
|
"return-type": "json",
|
||||||
|
"interval": 60
|
||||||
|
},
|
||||||
|
|
||||||
// memory
|
// memory
|
||||||
"memory": {
|
"memory": {
|
||||||
|
|||||||
29
waybar/.config/waybar/scripts/disk-monitor.sh
Executable file
29
waybar/.config/waybar/scripts/disk-monitor.sh
Executable file
@@ -0,0 +1,29 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# disk-monitor.sh -- Waybar disk usage monitor
|
||||||
|
# Outputs JSON for custom/disk-monitor module
|
||||||
|
# Class: "good" (<80%), "warning" (80-90%), "critical" (>90%)
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
# Target partition (default: root)
|
||||||
|
TARGET="${1:-/}"
|
||||||
|
|
||||||
|
# Get disk usage percentage (strip % sign)
|
||||||
|
USAGE=$(df --output=pcent "$TARGET" | tail -1 | tr -d '% ')
|
||||||
|
|
||||||
|
# Determine icon and CSS class based on usage thresholds
|
||||||
|
if [ "$USAGE" -ge 90 ]; then
|
||||||
|
CLASS="critical"
|
||||||
|
TOOLTIP="Disk $TARGET at ${USAGE}% - CRITICAL"
|
||||||
|
elif [ "$USAGE" -ge 80 ]; then
|
||||||
|
CLASS="warning"
|
||||||
|
TOOLTIP="Disk $TARGET at ${USAGE}% - Warning"
|
||||||
|
else
|
||||||
|
CLASS="good"
|
||||||
|
TOOLTIP="Disk $TARGET at ${USAGE}%"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Output JSON for waybar
|
||||||
|
printf '{"text": " \uf4be %s%% ", "class": "%s", "alt": "%s", "tooltip": "%s"}\n' \
|
||||||
|
"$USAGE" "$CLASS" "disk-$CLASS" "$TOOLTIP"
|
||||||
Reference in New Issue
Block a user