NoSignal-OS/os updates/NoSignal-keybindings.md
28allday 19fd794b6b NoSignal — fully-offline Arch → Hyprland desktop installer
Single-script builder (nosignal.sh) that turns a stock Arch Linux ISO into a
fully-offline installer for a themed Hyprland + caelestia (Quickshell) desktop:
matching SDDM greeter, Btrfs/Limine bootable snapshots, chwd-style GPU
detection, and a curated "os updates" layer (keybind cheatsheet, settings
panels, system polish, on-box management skill). See README.md.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21 11:03:10 +01:00

14 KiB
Raw Permalink Blame History

NoSignal — Keybinding Map

System: Arch Linux (rolling), hostname nosignal, Wayland compositor Hyprland. Base: Caelestia dotfiles + shell (QuickShell). NoSignal layer: styling flattened, stock apps rebound, overview added, and the key layout follows Omarchy's defaults (see omarchy-keys/README.md for the full mapping and deviations).

Modifier legend: Super = Windows/Meta key · Ctrl · Alt · Shift. XF86* = laptop media/function keys. mouse_up/down = scroll wheel.

Bindings are variable-driven. The tables below show the resolved keys (variables from variables.conf + overrides applied). See "Source map" at the end for where each value comes from and how to change it.


0. Built-in help (NoSignal addition)

Keys Action
Super+K Open the searchable on-screen keybinding cheatsheet (Omarchy key)
Super+/ Same (alias)
Super+F1 Same (alias)

The cheatsheet is a fuzzel dmenu list — start typing to filter by key or by category tag ([Window], [Apps], [Audio], …). Selecting a line copies that shortcut to the clipboard (if wl-copy is present); it never executes anything.

This very document is the single source of truth. The on-screen help is generated from the tables below — nosignal-keybinds regenerates the list from this .md on every launch, so the cheatsheet can never drift from the doc. Edit the keymap here and the help updates itself.

1. Shell & session

Keys Action
Super+Space Open app launcher (Omarchy key)
Super (tap & release) Open app launcher (tapping another key/mouse cancels it)
Super+Escape Session menu (logout / shutdown / reboot)
Ctrl+Alt+Delete Session menu (alias, old key)
Super+D Toggle dashboard — calendar + widgets (was hover-only)
Super+Alt+Space Open Settings (Caelestia nexus)
Super+N Toggle sidebar
Super+Ctrl+K Show all shell panels
Super+Ctrl+L Lock screen (Omarchy key)
Super+Alt+L Restart shell daemon + re-lock (recover a broken lock)
Super+Shift+Comma Clear all notifications (Omarchy key)
Ctrl+Alt+C Clear all notifications (alias, old key)
Ctrl+Super+Shift+R Kill the Caelestia shell (qs -c caelestia kill)
Ctrl+Super+Alt+R Restart the Caelestia shell
Super+Alt+F12 Fire a test notification (dev/debug)

2. Overview (NoSignal addition)

Keys Action
Super+Grave Toggle the overview sidecar (moved off Super+Tab for Omarchy)

3. Workspaces

Keys Action
Super+19,0 Go to workspace 110
Super+Tab Next workspace (Omarchy key)
Super+Shift+Tab Previous workspace (Omarchy key)
Super+Ctrl+Tab Back to former workspace (Omarchy key)
Ctrl+Super+19,0 Go to workspace group 110
Ctrl+Super+Left / Right Previous / next workspace
Super+Page_Up / Page_Down Previous / next workspace
Super + scroll up/down Next / previous workspace
Ctrl+Super + scroll up/down Jump workspace group ±10
Super+S Toggle special (scratchpad) workspace

4. Moving windows between workspaces

Keys Action
Super+Shift+19,0 Move window to workspace 110 (Omarchy key)
Super+Alt+19,0 Move window to workspace 110 (alias, old key)
Ctrl+Super+Alt+19,0 Move window to workspace group 110
Super+Alt+Page_Up / Page_Down Move window to workspace ±1
Super+Alt + scroll up/down Move window to workspace ±1
Ctrl+Super+Shift+Right / Left Move window to workspace +1 / 1
Ctrl+Super+Shift+Up Move window to special workspace
Ctrl+Super+Shift+Down Move window to first empty workspace
Super+Alt+S Move window to special workspace

5. Window focus, move & resize

Keys Action
Super+←/→/↑/↓ Move focus left/right/up/down
Alt+Tab / Shift+Alt+Tab Cycle focus next / previous window (Omarchy key)
Super+Shift+←/→/↑/↓ Move window in that direction
Super+Minus / Super+Equal Resize narrower / wider (/+10% width)
Super+Shift+Minus / Equal Resize shorter / taller (/+10% height)
Super+Alt+←/→/↑/↓ Resize active window
Super + left-drag Move window (mouse)
Super+Z + drag Move window (mouse)
Super + right-drag Resize window (mouse)
Super+X + drag Resize window (mouse)
Ctrl+Super+\ Center window
Ctrl+Super+Alt+\ Resize to 55%×70% and center
Super+Alt+\ Picture-in-picture (PiP) mode
Super+T Toggle floating (Omarchy key)
Super+J Toggle window split (Omarchy key)
Super+P Pseudo window (Omarchy key)
Super+O Pin window — show on all workspaces (Omarchy "pop out")
Super+F Fullscreen
Super+Alt+F Fullscreen with borders
Super+W Close window (Omarchy key)

6. Window groups (tabbed stacks)

Keys Action
Super+G Toggle group on active window (Omarchy key)
Super+Alt+G Move window out of group (Omarchy key)
Super+Alt+Tab Cycle to next window in group (Omarchy key)
Super+Alt+Shift+Tab Cycle to previous window in group (Omarchy key)
Ctrl+Alt+Tab Change active group member (forward)
Ctrl+Shift+Alt+Tab Change active group member (backward)

7. Apps

Keys Action App (NoSignal default)
Super+Return Terminal kitty
Super+Shift+Return Browser chromium
Super+Shift+B Browser (alias) chromium
Super+Shift+N Text editor gnome-text-editor
Super+Shift+F File manager nautilus
Super+Alt+E File manager (alt) nemo
Super+Shift+G GitHub Desktop github-desktop
Super+I Install software (app store) Shelly
Ctrl+Alt+Escape Process/task viewer qps
Super+Ctrl+A Audio control (Omarchy key) pavucontrol
Ctrl+Alt+V Audio control (alias) pavucontrol
Super+Ctrl+H Monitor layout editor & profiles hyprmoncfg (TUI)

All app binds use Omarchy's keys. Caelestia's stock app picks (foot / zen-browser / codium / thunar) are not installed; NoSignal points these binds at shipped apps via hypr-vars.conf.

8. Special-workspace toggles

Keys Action
Super+Ctrl+T System monitor — "Activity" (Omarchy key)
Ctrl+Shift+Escape System monitor (alias)
Super+Shift+M Music (Omarchy key)
Super+M Music player — CLIAmp, floating (default for audio files)
Super+Shift+D Communication (moved from Super+D — that's the dashboard now)
Super+R To-do

9. Screenshots & screen recording

Keys Action
Print Region capture (crosshair) → clipboard + ~/Pictures/Screenshots
Shift+Print Full screen → clipboard + ~/Pictures/Screenshots
Super+Shift+S Region capture, frozen screen (swappy → ~/Pictures/Screenshots) — becomes Gaming Mode after opting in (see §14)
Super+Shift+Alt+S Region capture, live (swappy → ~/Pictures/Screenshots)
Super+Print Color picker — hyprpicker (Omarchy key)
Super+Shift+C Color picker (alias)
Ctrl+Alt+R Record screen (no audio)
Super+Alt+R Record screen with sound
Super+Shift+Alt+R Record a region

10. Audio & brightness

Keys Action
XF86AudioRaiseVolume / LowerVolume Volume ±10% (unmutes first)
XF86AudioMute Mute / unmute output
XF86AudioMicMute Mute / unmute microphone
XF86MonBrightnessUp / Down Screen brightness up / down

11. Media playback

Keys Action
Ctrl+Super+Space or XF86AudioPlay/Pause Play / pause
Ctrl+Super+Equal or XF86AudioNext Next track
Ctrl+Super+Minus or XF86AudioPrev Previous track
XF86AudioStop Stop

12. Clipboard & emoji

Keys Action
Super+C Copy — universal (terminals → Ctrl+Shift+C, GUI → Ctrl+C)
Super+V Paste — universal (terminals → Ctrl+Shift+V, GUI → Ctrl+V)
Super+Ctrl+V Clipboard history (Omarchy key)
Super+Alt+V Clipboard history — delete-entry mode
Super+Ctrl+E Emoji picker (Omarchy key)
Super+Period Emoji picker (alias)
Ctrl+Shift+Alt+V Alternate paste — types last clip (needs ydotool, NOT installed: dead bind)

13. Power

Keys Action
Super+Shift+L Suspend-then-hibernate

14. Gaming Mode (opt-in)

Not active on a fresh install. Opt in on the installed system with sh ~/deckshift/deckshift.sh, then sh ~/.local/share/nosignal/deckshift-login/install-deckshift-login.sh.

Super+Shift+S is bound in the base and self-guards: it launches Gaming Mode only if DeckShift is installed and does nothing otherwise. (It replaces caelestia's Super+Shift+S screenshot-freeze for everyone — region shots stay on Print / Shift+Print / Super+Shift+Alt+S.)

Keys Action
Super+Shift+S Switch to Gaming Mode (full DeckShift gamescope/Steam session via SDDM restart) if DeckShift is installed; does nothing otherwise
Super+Shift+R Exit Gaming Mode back to the desktop — works inside the gaming session only (or Steam > Power > Exit to Desktop)

Cold boots always show the SDDM password greeter; only the desktop↔gaming switch itself skips the password (one-shot autologin).


Source map (for the install-system handoff)

All paths below; ~/.config/hypr → symlink → ~/.local/share/caelestia/hypr.

File Role
~/.config/hypr/hyprland.conf Top-level; sources everything in order
~/.config/hypr/hyprland/keybinds.conf The bind definitions (uses $kb* variables)
~/.config/hypr/variables.conf Default key + app values ($kbCloseWindow = Super, Q, etc.)
~/.config/caelestia/hypr-vars.conf NoSignal overrides — app rebinds + flattened styling + Omarchy $kb* remaps
~/.config/caelestia/hypr-user.conf NoSignal overrides — overview (Super+Grave), help binds, Omarchy unbinds/extra binds, kb_layout = gb, window rules
~/.local/bin/nosignal-keybinds-gen Generator — parses this .md → display-ready cheatsheet lines (single source of truth)
~/.local/bin/nosignal-keybinds NoSignal help launcher — regenerates from this doc each run, shows the fuzzel dmenu
~/.local/share/nosignal/keybinds.list Generated cache (auto-rebuilt; used as fallback if the doc is missing)

How the override layering works (load order matters — later wins): variables.conf sets stock defaults → hyprland.conf sources hypr-vars.conf before keybinds.conf (so $kb* remaps take effect) and hypr-user.conf after everything (so its unbind/bind lines win).

NoSignal deltas vs. stock Caelestia:

  • Key layout remapped to Omarchy defaults — full mapping table and deliberate deviations in omarchy-keys/README.md.
  • Apps: terminal foot→kitty, browser zen-browser→chromium, editor codium→gnome-text-editor, file manager thunar→nautilus.
  • Added bind: Super+Grave → overview sidecar (exec-once = qs -c overview -d).
  • Added bind: Super+K (+ Super+/, Super+F1) → searchable keybinding cheatsheet, generated from this document so the two never drift.
  • Added bind: Super+I → Shelly software store (repos + AUR + Flathub); yay and flatpak/Flathub added underneath (see software-install/).
  • Added binds: Super+C / Super+V universal copy/paste (clipboard history → Super+Ctrl+V); Print region screenshot; Super+D dashboard (communication → Super+Shift+D).
  • Keyboard layout forced to gb (UK).
  • Glassmorphism off: blur/shadows disabled, opacity 1.0, smaller rounding/gaps.
  • Keys left unbound by the Omarchy remap: Super+Q, Super+E, Super+U, Super+Comma, Super+L, Super+Alt+Space.

Rebuild: this whole component ships in Downloads

Because the live system gets wiped and only Downloads is kept, the entire feature is packaged there and reinstalled with one command per component:

File in Downloads Installs to
nosignal-keybinds-gen ~/.local/bin/ (the markdown→list generator)
nosignal-keybinds ~/.local/bin/ (the cheatsheet launcher)
NoSignal-keybindings.md (this file) ~/.local/share/nosignal/ (canonical source of truth)
hyprland-keybinds-help.conf appended to ~/.config/caelestia/hypr-user.conf (Super+/ + F1 binds)
install-keybinds-help.sh the installer — run it after rebuild
omarchy-keys/ the Omarchy remap (vars + user conf + installer)
sh ~/Downloads/install-keybinds-help.sh
sh ~/Downloads/omarchy-keys/install-omarchy-keys.sh

Installers are idempotent (safe to re-run) and reload Hyprland if it's running. No PATH dependency: binds use the absolute path ~/.local/bin/nosignal-keybinds, and that script locates its generator next to itself — so it works even if ~/.local/bin isn't on the session PATH. No keymap data lives in the scripts; editing this doc is all that's needed to change the on-screen help. Deps: awk, fuzzel, optional wl-copy.

To change a binding: edit keybinds.conf for new actions, or redefine the matching $kb* variable. Put NoSignal-specific changes in hypr-user.conf / hypr-vars.conf so they survive a Caelestia update (the hypr symlink target gets overwritten on upgrade; the two override files do not).


Keybindings follow Omarchy defaults; the Super+K cheatsheet is generated from this file.