diff --git a/README.md b/README.md
index 13b5ec8a2..3c3102d9c 100644
--- a/README.md
+++ b/README.md
@@ -14,9 +14,9 @@ https://github.com/user-attachments/assets/0840f496-575c-4ca6-83a8-87bb01a85c5f
## Components
-- Widgets: [`Quickshell`](https://quickshell.outfoxxed.me)
-- Window manager: [`Hyprland`](https://hyprland.org)
-- Dots: [`caelestia`](https://github.com/caelestia-dots)
+- Widgets: [`Quickshell`](https://quickshell.outfoxxed.me)
+- Window manager: [`Hyprland`](https://hyprland.org)
+- Dots: [`caelestia`](https://github.com/caelestia-dots)
## Installation
@@ -74,32 +74,32 @@ For home-manager, you can also use the Caelestia's home manager module (explaine
Dependencies:
-- [`caelestia-cli`](https://github.com/caelestia-dots/cli)
-- [`quickshell-git`](https://quickshell.outfoxxed.me) - this has to be the git version, not the latest tagged version
-- [`ddcutil`](https://github.com/rockowitz/ddcutil)
-- [`brightnessctl`](https://github.com/Hummer12007/brightnessctl)
-- [`app2unit`](https://github.com/Vladimir-csp/app2unit)
-- [`libcava`](https://github.com/LukashonakV/cava)
-- [`networkmanager`](https://networkmanager.dev)
-- [`lm-sensors`](https://github.com/lm-sensors/lm-sensors)
-- [`fish`](https://github.com/fish-shell/fish-shell)
-- [`aubio`](https://github.com/aubio/aubio)
-- [`libpipewire`](https://pipewire.org)
-- `glibc`
-- `qt6-declarative`
-- `gcc-libs`
-- [`material-symbols`](https://fonts.google.com/icons)
-- [`caskaydia-cove-nerd`](https://www.nerdfonts.com/font-downloads)
-- [`swappy`](https://github.com/jtheoof/swappy)
-- [`libqalculate`](https://github.com/Qalculate/libqalculate)
-- [`bash`](https://www.gnu.org/software/bash)
-- `qt6-base`
-- `qt6-declarative`
+- [`caelestia-cli`](https://github.com/caelestia-dots/cli)
+- [`quickshell-git`](https://quickshell.outfoxxed.me) - this has to be the git version, not the latest tagged version
+- [`ddcutil`](https://github.com/rockowitz/ddcutil)
+- [`brightnessctl`](https://github.com/Hummer12007/brightnessctl)
+- [`app2unit`](https://github.com/Vladimir-csp/app2unit)
+- [`libcava`](https://github.com/LukashonakV/cava)
+- [`networkmanager`](https://networkmanager.dev)
+- [`lm-sensors`](https://github.com/lm-sensors/lm-sensors)
+- [`fish`](https://github.com/fish-shell/fish-shell)
+- [`aubio`](https://github.com/aubio/aubio)
+- [`libpipewire`](https://pipewire.org)
+- `glibc`
+- `qt6-declarative`
+- `gcc-libs`
+- [`material-symbols`](https://fonts.google.com/icons)
+- [`caskaydia-cove-nerd`](https://www.nerdfonts.com/font-downloads)
+- [`swappy`](https://github.com/jtheoof/swappy)
+- [`libqalculate`](https://github.com/Qalculate/libqalculate)
+- [`bash`](https://www.gnu.org/software/bash)
+- `qt6-base`
+- `qt6-declarative`
Build dependencies:
-- [`cmake`](https://cmake.org)
-- [`ninja`](https://github.com/ninja-build/ninja)
+- [`cmake`](https://cmake.org)
+- [`ninja`](https://github.com/ninja-build/ninja)
To install the shell manually, install all dependencies and clone this repo to `$XDG_CONFIG_HOME/quickshell/caelestia`.
Then simply build and install using `cmake`.
@@ -138,6 +138,8 @@ via an `exec-once` in the hyprland config.
### Shortcuts/IPC
+See the full list → [Keyboard Shortcuts](SHORTCUT.md)
+
All keybinds are accessible via Hyprland [global shortcuts](https://wiki.hyprland.org/Configuring/Binds/#dbus-global-shortcuts).
If using the entire caelestia dots, the keybinds are already configured for you.
Otherwise, [this file](https://github.com/caelestia-dots/caelestia/blob/main/hypr/hyprland/keybinds.conf#L1-L39)
@@ -220,9 +222,9 @@ For example, to disable the bar on DP-1:
```json
{
- "bar": {
- "persistent": false
- }
+ "bar": {
+ "persistent": false
+ }
}
```
@@ -262,495 +264,497 @@ For example, to disable the bar on DP-1:
```json
{
- "enabled": true,
- "appearance": {
- "deformScale": 1,
- "anim": {
- "durations": {
- "scale": 1
- }
- },
- "font": {
- "family": {
- "clock": "Rubik",
- "material": "Material Symbols Rounded",
- "mono": "CaskaydiaCove NF",
- "sans": "Rubik"
- },
- "size": {
- "scale": 1
- }
- },
- "padding": {
- "scale": 1
- },
- "rounding": {
- "scale": 1
+ "enabled": true,
+ "appearance": {
+ "deformScale": 1,
+ "anim": {
+ "durations": {
+ "scale": 1
+ }
+ },
+ "font": {
+ "family": {
+ "clock": "Rubik",
+ "material": "Material Symbols Rounded",
+ "mono": "CaskaydiaCove NF",
+ "sans": "Rubik"
+ },
+ "size": {
+ "scale": 1
+ }
+ },
+ "padding": {
+ "scale": 1
+ },
+ "rounding": {
+ "scale": 1
+ },
+ "spacing": {
+ "scale": 1
+ },
+ "transparency": {
+ "enabled": false,
+ "base": 0.85,
+ "layers": 0.4
+ }
+ },
+ "general": {
+ "logo": "caelestia",
+ "showOverFullscreen": false,
+ "mediaGifSpeedAdjustment": 300,
+ "sessionGifSpeed": 0.7,
+ "apps": {
+ "terminal": ["foot"],
+ "audio": ["pavucontrol"],
+ "playback": ["mpv"],
+ "explorer": ["thunar"]
+ },
+ "battery": {
+ "warnLevels": [
+ {
+ "level": 20,
+ "title": "Low battery",
+ "message": "You might want to plug in a charger",
+ "icon": "battery_android_frame_2"
},
- "spacing": {
- "scale": 1
+ {
+ "level": 10,
+ "title": "Did you see the previous message?",
+ "message": "You should probably plug in a charger now",
+ "icon": "battery_android_frame_1"
},
- "transparency": {
- "enabled": false,
- "base": 0.85,
- "layers": 0.4
+ {
+ "level": 5,
+ "title": "Critical battery level",
+ "message": "PLUG THE CHARGER RIGHT NOW!!",
+ "icon": "battery_android_alert",
+ "critical": true
}
+ ],
+ "criticalLevel": 3
},
- "general": {
- "logo": "caelestia",
- "showOverFullscreen": false,
- "mediaGifSpeedAdjustment": 300,
- "sessionGifSpeed": 0.7,
- "apps": {
- "terminal": ["foot"],
- "audio": ["pavucontrol"],
- "playback": ["mpv"],
- "explorer": ["thunar"]
+ "idle": {
+ "lockBeforeSleep": true,
+ "inhibitWhenAudio": true,
+ "timeouts": [
+ {
+ "timeout": 180,
+ "idleAction": "lock"
},
- "battery": {
- "warnLevels": [
- {
- "level": 20,
- "title": "Low battery",
- "message": "You might want to plug in a charger",
- "icon": "battery_android_frame_2"
- },
- {
- "level": 10,
- "title": "Did you see the previous message?",
- "message": "You should probably plug in a charger now",
- "icon": "battery_android_frame_1"
- },
- {
- "level": 5,
- "title": "Critical battery level",
- "message": "PLUG THE CHARGER RIGHT NOW!!",
- "icon": "battery_android_alert",
- "critical": true
- }
- ],
- "criticalLevel": 3
+ {
+ "timeout": 300,
+ "idleAction": "dpms off",
+ "returnAction": "dpms on"
},
- "idle": {
- "lockBeforeSleep": true,
- "inhibitWhenAudio": true,
- "timeouts": [
- {
- "timeout": 180,
- "idleAction": "lock"
- },
- {
- "timeout": 300,
- "idleAction": "dpms off",
- "returnAction": "dpms on"
- },
- {
- "timeout": 600,
- "idleAction": ["systemctl", "suspend-then-hibernate"]
- }
- ]
+ {
+ "timeout": 600,
+ "idleAction": ["systemctl", "suspend-then-hibernate"]
}
- },
- "background": {
- "desktopClock": {
- "enabled": false,
- "scale": 1.0,
- "position": "bottom-right",
- "shadow": {
- "enabled": true,
- "opacity": 0.7,
- "blur": 0.4
- },
- "background": {
- "enabled": false,
- "opacity": 0.7,
- "blur": true
- },
- "invertColors": false
- },
+ ]
+ }
+ },
+ "background": {
+ "desktopClock": {
+ "enabled": false,
+ "scale": 1.0,
+ "position": "bottom-right",
+ "shadow": {
"enabled": true,
- "visualiser": {
- "blur": false,
- "enabled": false,
- "autoHide": true,
- "rounding": 1,
- "spacing": 1
- }
+ "opacity": 0.7,
+ "blur": 0.4
+ },
+ "background": {
+ "enabled": false,
+ "opacity": 0.7,
+ "blur": true
+ },
+ "invertColors": false
},
- "bar": {
- "activeWindow": {
- "compact": false,
- "inverted": false,
- "showOnHover": true
- },
- "clock": {
- "background": false,
- "showDate": false,
- "showIcon": true
- },
- "dragThreshold": 20,
- "entries": [
- {
- "id": "logo",
- "enabled": true
- },
- {
- "id": "workspaces",
- "enabled": true
- },
- {
- "id": "spacer",
- "enabled": true
- },
- {
- "id": "activeWindow",
- "enabled": true
- },
- {
- "id": "spacer",
- "enabled": true
- },
- {
- "id": "tray",
- "enabled": true
- },
- {
- "id": "clock",
- "enabled": true
- },
- {
- "id": "statusIcons",
- "enabled": true
- },
- {
- "id": "power",
- "enabled": true
- }
- ],
- "persistent": true,
- "popouts": {
- "activeWindow": true,
- "statusIcons": true,
- "tray": true
- },
- "scrollActions": {
- "brightness": true,
- "workspaces": true,
- "volume": true
- },
- "showOnHover": true,
- "status": {
- "showAudio": false,
- "showBattery": true,
- "showBluetooth": true,
- "showKbLayout": false,
- "showMicrophone": false,
- "showNetwork": true,
- "showWifi": true,
- "showLockStatus": true
- },
- "tray": {
- "background": false,
- "compact": false,
- "iconSubs": [],
- "recolour": false
- },
- "workspaces": {
- "activeIndicator": true,
- "activeLabel": "",
- "activeTrail": false,
- "label": " ",
- "occupiedBg": false,
- "occupiedLabel": "",
- "perMonitorWorkspaces": true,
- "showWindows": true,
- "shown": 5,
- "specialWorkspaceIcons": [
- {
- "name": "steam",
- "icon": "sports_esports"
- }
- ],
- "windowIcons": [
- {
- "regex": "steam(_app_(default|[0-9]+))?",
- "icon": "sports_esports"
- }
- ]
- },
- "excludedScreens": [""],
- "activeWindow": {
- "inverted": false
- }
+ "enabled": true,
+ "visualiser": {
+ "blur": false,
+ "enabled": false,
+ "autoHide": true,
+ "rounding": 1,
+ "spacing": 1
+ }
+ },
+ "bar": {
+ "activeWindow": {
+ "compact": false,
+ "inverted": false,
+ "showOnHover": true
},
- "border": {
- "rounding": 25,
- "smoothing": 32,
- "thickness": 10
+ "clock": {
+ "background": false,
+ "showDate": false,
+ "showIcon": true
},
- "dashboard": {
- "enabled": true,
- "showOnHover": true,
- "showDashboard": true,
- "showMedia": true,
- "showPerformance": true,
- "showWeather": true,
- "dragThreshold": 50,
- "mediaUpdateInterval": 500
+ "dragThreshold": 20,
+ "entries": [
+ {
+ "id": "logo",
+ "enabled": true
+ },
+ {
+ "id": "workspaces",
+ "enabled": true
+ },
+ {
+ "id": "spacer",
+ "enabled": true
+ },
+ {
+ "id": "activeWindow",
+ "enabled": true
+ },
+ {
+ "id": "spacer",
+ "enabled": true
+ },
+ {
+ "id": "tray",
+ "enabled": true
+ },
+ {
+ "id": "clock",
+ "enabled": true
+ },
+ {
+ "id": "statusIcons",
+ "enabled": true
+ },
+ {
+ "id": "power",
+ "enabled": true
+ }
+ ],
+ "persistent": true,
+ "popouts": {
+ "activeWindow": true,
+ "statusIcons": true,
+ "tray": true
},
- "launcher": {
- "actionPrefix": ">",
- "actions": [
- {
- "name": "Calculator",
- "icon": "calculate",
- "description": "Do simple math equations (powered by Qalc)",
- "command": ["autocomplete", "calc"],
- "enabled": true,
- "dangerous": false
- },
- {
- "name": "Scheme",
- "icon": "palette",
- "description": "Change the current colour scheme",
- "command": ["autocomplete", "scheme"],
- "enabled": true,
- "dangerous": false
- },
- {
- "name": "Wallpaper",
- "icon": "image",
- "description": "Change the current wallpaper",
- "command": ["autocomplete", "wallpaper"],
- "enabled": true,
- "dangerous": false
- },
- {
- "name": "Variant",
- "icon": "colors",
- "description": "Change the current scheme variant",
- "command": ["autocomplete", "variant"],
- "enabled": true,
- "dangerous": false
- },
- {
- "name": "Transparency",
- "icon": "opacity",
- "description": "Change shell transparency",
- "command": ["autocomplete", "transparency"],
- "enabled": false,
- "dangerous": false
- },
- {
- "name": "Random",
- "icon": "casino",
- "description": "Switch to a random wallpaper",
- "command": ["caelestia", "wallpaper", "-r"],
- "enabled": true,
- "dangerous": false
- },
- {
- "name": "Light",
- "icon": "light_mode",
- "description": "Change the scheme to light mode",
- "command": ["setMode", "light"],
- "enabled": true,
- "dangerous": false
- },
- {
- "name": "Dark",
- "icon": "dark_mode",
- "description": "Change the scheme to dark mode",
- "command": ["setMode", "dark"],
- "enabled": true,
- "dangerous": false
- },
- {
- "name": "Shutdown",
- "icon": "power_settings_new",
- "description": "Shutdown the system",
- "command": ["systemctl", "poweroff"],
- "enabled": true,
- "dangerous": true
- },
- {
- "name": "Reboot",
- "icon": "cached",
- "description": "Reboot the system",
- "command": ["systemctl", "reboot"],
- "enabled": true,
- "dangerous": true
- },
- {
- "name": "Logout",
- "icon": "exit_to_app",
- "description": "Log out of the current session",
- "command": ["loginctl", "terminate-user", ""],
- "enabled": true,
- "dangerous": true
- },
- {
- "name": "Lock",
- "icon": "lock",
- "description": "Lock the current session",
- "command": ["loginctl", "lock-session"],
- "enabled": true,
- "dangerous": false
- },
- {
- "name": "Sleep",
- "icon": "bedtime",
- "description": "Suspend then hibernate",
- "command": ["systemctl", "suspend-then-hibernate"],
- "enabled": true,
- "dangerous": false
- },
- {
- "name": "Settings",
- "icon": "settings",
- "description": "Configure the shell",
- "command": ["caelestia", "shell", "controlCenter", "open"],
- "enabled": true,
- "dangerous": false
- }
- ],
- "dragThreshold": 50,
- "vimKeybinds": false,
- "enableDangerousActions": false,
- "maxShown": 7,
- "maxWallpapers": 9,
- "specialPrefix": "@",
- "useFuzzy": {
- "apps": false,
- "actions": false,
- "schemes": false,
- "variants": false,
- "wallpapers": false
- },
- "showOnHover": false,
- "favouriteApps": [],
- "hiddenApps": []
+ "scrollActions": {
+ "brightness": true,
+ "workspaces": true,
+ "volume": true
},
- "lock": {
- "recolourLogo": false,
- "hideNotifs": false
+ "showOnHover": true,
+ "status": {
+ "showAudio": false,
+ "showBattery": true,
+ "showBluetooth": true,
+ "showKbLayout": false,
+ "showMicrophone": false,
+ "showNetwork": true,
+ "showWifi": true,
+ "showLockStatus": true
},
- "notifs": {
- "actionOnClick": false,
- "clearThreshold": 0.3,
- "defaultExpireTimeout": 5000,
- "expandThreshold": 20,
- "openExpanded": false,
- "expire": false
+ "tray": {
+ "background": false,
+ "compact": false,
+ "iconSubs": [],
+ "recolour": false
},
- "osd": {
+ "workspaces": {
+ "activeIndicator": true,
+ "activeLabel": "",
+ "activeTrail": false,
+ "label": " ",
+ "occupiedBg": false,
+ "occupiedLabel": "",
+ "perMonitorWorkspaces": true,
+ "showWindows": true,
+ "shown": 5,
+ "specialWorkspaceIcons": [
+ {
+ "name": "steam",
+ "icon": "sports_esports"
+ }
+ ],
+ "windowIcons": [
+ {
+ "regex": "steam(_app_(default|[0-9]+))?",
+ "icon": "sports_esports"
+ }
+ ]
+ },
+ "excludedScreens": [""],
+ "activeWindow": {
+ "inverted": false
+ }
+ },
+ "border": {
+ "rounding": 25,
+ "smoothing": 32,
+ "thickness": 10
+ },
+ "dashboard": {
+ "enabled": true,
+ "showOnHover": true,
+ "showDashboard": true,
+ "showMedia": true,
+ "showPerformance": true,
+ "showWeather": true,
+ "dragThreshold": 50,
+ "mediaUpdateInterval": 500
+ },
+ "launcher": {
+ "actionPrefix": ">",
+ "actions": [
+ {
+ "name": "Calculator",
+ "icon": "calculate",
+ "description": "Do simple math equations (powered by Qalc)",
+ "command": ["autocomplete", "calc"],
+ "enabled": true,
+ "dangerous": false
+ },
+ {
+ "name": "Scheme",
+ "icon": "palette",
+ "description": "Change the current colour scheme",
+ "command": ["autocomplete", "scheme"],
+ "enabled": true,
+ "dangerous": false
+ },
+ {
+ "name": "Wallpaper",
+ "icon": "image",
+ "description": "Change the current wallpaper",
+ "command": ["autocomplete", "wallpaper"],
+ "enabled": true,
+ "dangerous": false
+ },
+ {
+ "name": "Variant",
+ "icon": "colors",
+ "description": "Change the current scheme variant",
+ "command": ["autocomplete", "variant"],
+ "enabled": true,
+ "dangerous": false
+ },
+ {
+ "name": "Transparency",
+ "icon": "opacity",
+ "description": "Change shell transparency",
+ "command": ["autocomplete", "transparency"],
+ "enabled": false,
+ "dangerous": false
+ },
+ {
+ "name": "Random",
+ "icon": "casino",
+ "description": "Switch to a random wallpaper",
+ "command": ["caelestia", "wallpaper", "-r"],
+ "enabled": true,
+ "dangerous": false
+ },
+ {
+ "name": "Light",
+ "icon": "light_mode",
+ "description": "Change the scheme to light mode",
+ "command": ["setMode", "light"],
+ "enabled": true,
+ "dangerous": false
+ },
+ {
+ "name": "Dark",
+ "icon": "dark_mode",
+ "description": "Change the scheme to dark mode",
+ "command": ["setMode", "dark"],
+ "enabled": true,
+ "dangerous": false
+ },
+ {
+ "name": "Shutdown",
+ "icon": "power_settings_new",
+ "description": "Shutdown the system",
+ "command": ["systemctl", "poweroff"],
+ "enabled": true,
+ "dangerous": true
+ },
+ {
+ "name": "Reboot",
+ "icon": "cached",
+ "description": "Reboot the system",
+ "command": ["systemctl", "reboot"],
+ "enabled": true,
+ "dangerous": true
+ },
+ {
+ "name": "Logout",
+ "icon": "exit_to_app",
+ "description": "Log out of the current session",
+ "command": ["loginctl", "terminate-user", ""],
+ "enabled": true,
+ "dangerous": true
+ },
+ {
+ "name": "Lock",
+ "icon": "lock",
+ "description": "Lock the current session",
+ "command": ["loginctl", "lock-session"],
"enabled": true,
- "enableBrightness": true,
- "enableMicrophone": false,
- "hideDelay": 2000
+ "dangerous": false
+ },
+ {
+ "name": "Sleep",
+ "icon": "bedtime",
+ "description": "Suspend then hibernate",
+ "command": ["systemctl", "suspend-then-hibernate"],
+ "enabled": true,
+ "dangerous": false
+ },
+ {
+ "name": "Settings",
+ "icon": "settings",
+ "description": "Configure the shell",
+ "command": ["caelestia", "shell", "controlCenter", "open"],
+ "enabled": true,
+ "dangerous": false
+ }
+ ],
+ "dragThreshold": 50,
+ "vimKeybinds": false,
+ "enableDangerousActions": false,
+ "maxShown": 7,
+ "maxWallpapers": 9,
+ "specialPrefix": "@",
+ "useFuzzy": {
+ "apps": false,
+ "actions": false,
+ "schemes": false,
+ "variants": false,
+ "wallpapers": false
},
- "paths": {
- "mediaGif": "root:/assets/bongocat.gif",
- "sessionGif": "root:/assets/kurukuru.gif",
- "noNotifsPic": "root:/assets/dino.png",
- "lockNoNotifsPic": "root:/assets/dino.png",
- "wallpaperDir": "~/Pictures/Wallpapers",
- "lyricsDir": "~/Music/lyrics"
+ "showOnHover": false,
+ "favouriteApps": [],
+ "hiddenApps": []
+ },
+ "lock": {
+ "recolourLogo": false,
+ "hideNotifs": false
+ },
+ "notifs": {
+ "actionOnClick": false,
+ "clearThreshold": 0.3,
+ "defaultExpireTimeout": 5000,
+ "expandThreshold": 20,
+ "openExpanded": false,
+ "expire": false
+ },
+ "osd": {
+ "enabled": true,
+ "enableBrightness": true,
+ "enableMicrophone": false,
+ "hideDelay": 2000
+ },
+ "paths": {
+ "mediaGif": "root:/assets/bongocat.gif",
+ "sessionGif": "root:/assets/kurukuru.gif",
+ "noNotifsPic": "root:/assets/dino.png",
+ "lockNoNotifsPic": "root:/assets/dino.png",
+ "wallpaperDir": "~/Pictures/Wallpapers",
+ "lyricsDir": "~/Music/lyrics"
+ },
+ "services": {
+ "audioIncrement": 0.1,
+ "brightnessIncrement": 0.1,
+ "maxVolume": 1.0,
+ "defaultPlayer": "Spotify",
+ "gpuType": "",
+ "playerAliases": [
+ { "from": "com.github.th_ch.youtube_music", "to": "YT Music" }
+ ],
+ "weatherLocation": "",
+ "useFahrenheit": false,
+ "useFahrenheitPerformance": false,
+ "useTwelveHourClock": false,
+ "smartScheme": true,
+ "visualiserBars": 45
+ },
+ "session": {
+ "dragThreshold": 30,
+ "enabled": true,
+ "vimKeybinds": false,
+ "icons": {
+ "logout": "logout",
+ "shutdown": "power_settings_new",
+ "hibernate": "downloading",
+ "reboot": "cached"
},
- "services": {
- "audioIncrement": 0.1,
- "brightnessIncrement": 0.1,
- "maxVolume": 1.0,
- "defaultPlayer": "Spotify",
- "gpuType": "",
- "playerAliases": [{ "from": "com.github.th_ch.youtube_music", "to": "YT Music" }],
- "weatherLocation": "",
- "useFahrenheit": false,
- "useFahrenheitPerformance": false,
- "useTwelveHourClock": false,
- "smartScheme": true,
- "visualiserBars": 45
+ "commands": {
+ "logout": ["loginctl", "terminate-user", ""],
+ "shutdown": ["systemctl", "poweroff"],
+ "hibernate": ["systemctl", "hibernate"],
+ "reboot": ["systemctl", "reboot"]
+ }
+ },
+ "sidebar": {
+ "dragThreshold": 80,
+ "enabled": true
+ },
+ "utilities": {
+ "enabled": true,
+ "maxToasts": 4,
+ "toasts": {
+ "audioInputChanged": true,
+ "audioOutputChanged": true,
+ "capsLockChanged": true,
+ "chargingChanged": true,
+ "configLoaded": true,
+ "dndChanged": true,
+ "gameModeChanged": true,
+ "kbLayoutChanged": true,
+ "kbLimit": true,
+ "numLockChanged": true,
+ "vpnChanged": true,
+ "nowPlaying": false
},
- "session": {
- "dragThreshold": 30,
- "enabled": true,
- "vimKeybinds": false,
- "icons": {
- "logout": "logout",
- "shutdown": "power_settings_new",
- "hibernate": "downloading",
- "reboot": "cached"
- },
- "commands": {
- "logout": ["loginctl", "terminate-user", ""],
- "shutdown": ["systemctl", "poweroff"],
- "hibernate": ["systemctl", "hibernate"],
- "reboot": ["systemctl", "reboot"]
+ "vpn": {
+ "enabled": true,
+ "provider": [
+ {
+ "name": "wireguard",
+ "interface": "your-connection-name",
+ "displayName": "Wireguard (Your VPN)",
+ "enabled": false
}
+ ]
},
- "sidebar": {
- "dragThreshold": 80,
+ "quickToggles": [
+ {
+ "id": "wifi",
"enabled": true
- },
- "utilities": {
+ },
+ {
+ "id": "bluetooth",
+ "enabled": true
+ },
+ {
+ "id": "mic",
+ "enabled": true
+ },
+ {
"enabled": true,
- "maxToasts": 4,
- "toasts": {
- "audioInputChanged": true,
- "audioOutputChanged": true,
- "capsLockChanged": true,
- "chargingChanged": true,
- "configLoaded": true,
- "dndChanged": true,
- "gameModeChanged": true,
- "kbLayoutChanged": true,
- "kbLimit": true,
- "numLockChanged": true,
- "vpnChanged": true,
- "nowPlaying": false
- },
- "vpn": {
- "enabled": true,
- "provider": [
- {
- "name": "wireguard",
- "interface": "your-connection-name",
- "displayName": "Wireguard (Your VPN)",
- "enabled": false
- }
- ]
- },
- "quickToggles": [
- {
- "id": "wifi",
- "enabled": true
- },
- {
- "id": "bluetooth",
- "enabled": true
- },
- {
- "id": "mic",
- "enabled": true
- },
- {
- "enabled": true,
- "id": "settings"
- },
- {
- "id": "gameMode",
- "enabled": true
- },
- {
- "id": "dnd",
- "enabled": true
- },
- {
- "id": "vpn",
- "enabled": true
- }
- ]
- }
+ "id": "settings"
+ },
+ {
+ "id": "gameMode",
+ "enabled": true
+ },
+ {
+ "id": "dnd",
+ "enabled": true
+ },
+ {
+ "id": "vpn",
+ "enabled": true
+ }
+ ]
+ }
}
```
@@ -865,7 +869,7 @@ which helped me a lot with learning how to use Quickshell.
Finally another thank you to all the configs I took inspiration from (only one for now):
-- [Axenide/Ax-Shell](https://github.com/Axenide/Ax-Shell)
+- [Axenide/Ax-Shell](https://github.com/Axenide/Ax-Shell)
## Stonks 📈
diff --git a/SHORTCUT.md b/SHORTCUT.md
new file mode 100644
index 000000000..96140bf82
--- /dev/null
+++ b/SHORTCUT.md
@@ -0,0 +1,204 @@
+# Keybindings Reference
+
+> **Key notation:** `Super` = Windows/Meta key | `+` = hold together | `,` = then press
+
+---
+
+## Launcher
+
+| Shortcut | Action |
+| -------------------------- | -------------------------- |
+| `Super` (tap) | Open app launcher |
+| Any input while Super held | Interrupt / close launcher |
+
+---
+
+## Applications
+
+| Shortcut | Opens |
+| --------------------- | ------------------------- |
+| `Super + T` | Terminal (foot) |
+| `Super + W` | Browser (Zen) |
+| `Super + C` | Code editor (VSCodium) |
+| `Super + E` | File explorer (Thunar) |
+| `Super + Alt + E` | File explorer (Nemo) |
+| `Super + G` | GitHub Desktop |
+| `Ctrl + Alt + Escape` | Task manager (qps) |
+| `Ctrl + Alt + V` | Audio mixer (pavucontrol) |
+
+---
+
+## Workspaces
+
+### Navigate to workspace
+
+| Shortcut | Action |
+| ------------------------------- | -------------------------- |
+| `Super + 1–9, 0` | Go to workspace 1–10 |
+| `Ctrl + Super + 1–9, 0` | Go to workspace group 1–10 |
+| `Ctrl + Super + →` | Next workspace |
+| `Ctrl + Super + ←` | Previous workspace |
+| `Super + Page Up` | Previous workspace |
+| `Super + Page Down` | Next workspace |
+| `Super + Scroll Up` | Previous workspace |
+| `Super + Scroll Down` | Next workspace |
+| `Ctrl + Super + Scroll Up/Down` | Jump workspace group ±10 |
+| `Super + S` | Toggle special workspace |
+
+### Move window to workspace
+
+| Shortcut | Action |
+| ----------------------------- | ------------------------------------ |
+| `Super + Alt + 1–9, 0` | Move window to workspace 1–10 |
+| `Ctrl + Super + Alt + 1–9, 0` | Move window to workspace group 1–10 |
+| `Super + Alt + Page Up/Down` | Move window to prev/next workspace |
+| `Super + Alt + Scroll` | Move window to prev/next workspace |
+| `Ctrl + Super + Shift + →` | Move window to next workspace |
+| `Ctrl + Super + Shift + ←` | Move window to previous workspace |
+| `Ctrl + Super + Shift + ↑` | Move window to special workspace |
+| `Ctrl + Super + Shift + ↓` | Move window out of special workspace |
+| `Super + Alt + S` | Move window to special workspace |
+
+---
+
+## Window Management
+
+### Focus & Move
+
+| Shortcut | Action |
+| ---------------------------------- | ------------------------ |
+| `Super + ← ↑ ↓ →` | Move focus in direction |
+| `Super + Shift + ← ↑ ↓ →` | Move window in direction |
+| `Super + Z` (hold & drag) | Move window freely |
+| `Super + Left Mouse Button` (drag) | Move window freely |
+
+### Resize
+
+| Shortcut | Action |
+| ----------------------------------- | --------------------------- |
+| `Super + =` | Expand window width (+10%) |
+| `Super + -` | Shrink window width (−10%) |
+| `Super + Shift + =` | Expand window height (+10%) |
+| `Super + Shift + -` | Shrink window height (−10%) |
+| `Super + Alt + ← → ↑ ↓` | Resize window in direction |
+| `Super + X` (hold & drag) | Resize window freely |
+| `Super + Right Mouse Button` (drag) | Resize window freely |
+
+### Layout & State
+
+| Shortcut | Action |
+| ------------------------ | ------------------------------------ |
+| `Super + F` | Fullscreen |
+| `Super + Alt + F` | Fullscreen (keep borders) |
+| `Super + Alt + Space` | Toggle floating |
+| `Super + P` | Pin window (stays on all workspaces) |
+| `Super + Alt + \` | Picture-in-picture mode |
+| `Ctrl + Super + \` | Center window |
+| `Ctrl + Super + Alt + \` | Center & resize to 55×70% |
+| `Super + Q` | Close window |
+
+### Window Groups (Tabs)
+
+| Shortcut | Action |
+| -------------------------- | -------------------------- |
+| `Super + ,` | Toggle group (tab) |
+| `Super + U` | Ungroup (eject window) |
+| `Alt + Tab` | Cycle next in group |
+| `Shift + Alt + Tab` | Cycle previous in group |
+| `Ctrl + Alt + Tab` | Change active tab forward |
+| `Ctrl + Shift + Alt + Tab` | Change active tab backward |
+| `Super + Shift + ,` | Lock/unlock active group |
+
+---
+
+## Special Panels & Overlays
+
+| Shortcut | Action |
+| ----------------------- | -------------------------- |
+| `Super + M` | Toggle music panel |
+| `Super + D` | Toggle communication panel |
+| `Super + R` | Toggle to-do panel |
+| `Ctrl + Shift + Escape` | Toggle system monitor |
+| `Super + N` | Toggle sidebar |
+| `Super + K` | Show all panels |
+
+---
+
+## Screenshots & Recording
+
+| Shortcut | Action |
+| ------------------------- | ------------------------------------ |
+| `Print Screen` | Full screen capture → clipboard |
+| `Super + Shift + S` | Capture region (freeze screen first) |
+| `Super + Shift + Alt + S` | Capture region (live) |
+| `Super + Shift + C` | Color picker |
+| `Ctrl + Alt + R` | Record screen |
+| `Super + Alt + R` | Record screen with microphone |
+| `Super + Shift + Alt + R` | Record selected region |
+
+---
+
+## Volume & Media
+
+### Volume
+
+| Shortcut | Action |
+| ------------------- | -------------------------- |
+| `Volume Up key` | Unmute & raise volume +10% |
+| `Volume Down key` | Unmute & lower volume −10% |
+| `Mute key` | Toggle speaker mute |
+| `Super + Shift + M` | Toggle speaker mute |
+| `Mic Mute key` | Toggle microphone mute |
+
+### Media Playback
+
+| Shortcut | Action |
+| ---------------------- | -------------- |
+| `Ctrl + Super + Space` | Play / Pause |
+| `Play/Pause key` | Play / Pause |
+| `Ctrl + Super + =` | Next track |
+| `Next key` | Next track |
+| `Ctrl + Super + -` | Previous track |
+| `Previous key` | Previous track |
+| `Stop key` | Stop playback |
+
+---
+
+## Brightness
+
+| Shortcut | Action |
+| --------------------- | ------------------- |
+| `Brightness Up key` | Increase brightness |
+| `Brightness Down key` | Decrease brightness |
+
+---
+
+## Clipboard & Emoji
+
+| Shortcut | Action |
+| ------------------------ | ------------------------------------ |
+| `Super + V` | Open clipboard history |
+| `Super + Alt + V` | Open clipboard history (delete mode) |
+| `Ctrl + Shift + Alt + V` | Paste most recent clipboard entry |
+| `Super + .` | Open emoji picker |
+
+---
+
+## Session & Lock
+
+| Shortcut | Action |
+| --------------------- | --------------------------- |
+| `Super + L` | Lock screen |
+| `Super + Alt + L` | Restore lock screen |
+| `Super + Shift + L` | Sleep (suspend → hibernate) |
+| `Ctrl + Alt + Delete` | Session menu |
+
+---
+
+## Shell (Developer)
+
+| Shortcut | Action |
+| -------------------------- | ----------------------- |
+| `Ctrl + Super + Shift + R` | Kill shell (caelestia) |
+| `Ctrl + Super + Alt + R` | Kill & restart shell |
+| `Ctrl + Alt + C` | Clear all notifications |