- Config waybar 3-pills glassmorphism (left/center/right) - Scripts : gpu, network, power-profile (toggle+luminosité/profil), cava daemon+reader, wob (volume/luminosité), rofi-launcher - Popup media GTK3 : volume sortie+entrée + luminosité (vc-media-popup.py) - Profil énergie : cycle balanced→low-power→performance avec brightnessctl - Autostart COSMIC : waybar.desktop + wob.desktop - Thème COSMIC Light ajouté (accent violet-chaton) - deploy : +autostart, +sudoers platform_profile, +udev platform_profile, +scripts .py waybar, +CosmicTheme.Light
27 lines
904 B
Bash
Executable File
27 lines
904 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# gpu.sh — NVIDIA GPU stats → JSON waybar
|
|
|
|
DATA=$(nvidia-smi --query-gpu=utilization.gpu,temperature.gpu,memory.used,memory.total \
|
|
--format=csv,noheader,nounits 2>/dev/null)
|
|
|
|
if [[ -z "$DATA" ]]; then
|
|
echo '{"text":"","tooltip":"GPU non disponible","class":"","percentage":0}'
|
|
exit 0
|
|
fi
|
|
|
|
LOAD=$(echo "$DATA" | awk -F', ' '{print $1}')
|
|
TEMP=$(echo "$DATA" | awk -F', ' '{print $2}')
|
|
MEM_USED=$(echo "$DATA" | awk -F', ' '{print $3}')
|
|
MEM_TOTAL=$(echo "$DATA" | awk -F', ' '{print $4}')
|
|
|
|
if (( LOAD > 90 )); then CLASS="critical"
|
|
elif (( LOAD > 70 )); then CLASS="warning"
|
|
else CLASS="normal"
|
|
fi
|
|
|
|
TEXT=" ${LOAD}% ${TEMP}°"
|
|
TOOLTIP=" GPU\nCharge : ${LOAD}%\nTempérature : ${TEMP}°C\nVRAM : ${MEM_USED} / ${MEM_TOTAL} MiB"
|
|
|
|
printf '{"text":"%s","tooltip":"%s","class":"%s","percentage":%s}\n' \
|
|
"$TEXT" "$TOOLTIP" "$CLASS" "$LOAD"
|