desktop: add sway/swayfx profile (dormant) with waybar, kanshi, cliphist

New profile_desktop_sway role gated by desktop_sessions_enabled, with
SwayFX effects, Waybar bar (1:1 with Polybar layout + pulseaudio),
swayidle + swaylock-effects for locking, swayosd for OSD, cliphist for
clipboard history and kanshi for multi-monitor profiles. Emptty gains
WAYLAND_SESSIONS_PATH + wayland-sessions dir. start-sway wrapper handles
session env (dbus-run-session, gpg-agent, turnstile env). Profile stays
dormant until a host opts in via desktop_sessions_enabled.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
Fabio Scotto di Santolo
2026-05-16 19:39:11 +02:00
parent 5023722505
commit 2d3fb543de
17 changed files with 639 additions and 16 deletions

View File

@@ -0,0 +1,101 @@
{
"layer": "top",
"position": "top",
"height": 26,
"spacing": 4,
"modules-left": ["sway/workspaces"],
"modules-center": ["clock"],
"modules-right": ["cpu", "memory", "disk", "temperature", "backlight", "network", "pulseaudio", "battery", "tray"],
"sway/workspaces": {
"disable-scroll": true,
"all-outputs": false,
"format": "{icon}",
"format-icons": {
"1": "I",
"2": "II",
"3": "III",
"4": "IV",
"5": "V",
"6": "VI",
"7": "VII",
"8": "VIII",
"9": "IX",
"10": "X"
},
"persistent-workspaces": {
"*": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
}
},
"clock": {
"interval": 60,
"format": " {:%Y-%m-%d %H:%M}",
"tooltip-format": "<tt>{calendar}</tt>"
},
"cpu": {
"interval": 5,
"format": " {usage}%"
},
"memory": {
"interval": 10,
"format": " {used:0.1f}G / {total:0.1f}G"
},
"disk": {
"interval": 60,
"path": "/",
"format": " {used} / {total}"
},
"temperature": {
"interval": 10,
"critical-threshold": 80,
"format": " {temperatureC}°C",
"format-critical": " {temperatureC}°C"
},
"backlight": {
"format": " {percent}%",
"on-scroll-up": "brightnessctl set +5%",
"on-scroll-down": "brightnessctl set 5%-"
},
"network": {
"interval": 5,
"format-wifi": " {essid} {signalStrength}%",
"format-ethernet": " {ifname}",
"format-disconnected": " offline",
"tooltip-format": "{ifname} {ipaddr}"
},
"pulseaudio": {
"format": "{icon} {volume}%",
"format-muted": " muted",
"format-bluetooth": "{icon} {volume}% ",
"format-icons": { "default": ["", "", ""] },
"on-click": "swayosd-client --output-volume mute-toggle",
"on-click-right": "pavucontrol"
},
"battery": {
"bat": "BAT0",
"interval": 30,
"states": {
"warning": 30,
"critical": 15
},
"format": "{icon} {capacity}%",
"format-charging": " {capacity}%",
"format-full": " full",
"format-icons": ["", "", "", "", ""]
},
"tray": {
"icon-size": 16,
"spacing": 6
}
}