NoSignal-OS/os updates/super-clipboard/README.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

1.7 KiB
Executable file

super-clipboard — universal Super+C / Super+V copy & paste

Makes a single, OS-wide copy/paste pair that works the same everywhere:

Key Action
Super+C Copy (terminals → Ctrl+Shift+C, GUI apps → Ctrl+C)
Super+V Paste (terminals → Ctrl+Shift+V, GUI apps → Ctrl+V)
Super+Ctrl+V Clipboard history (unchanged)
Super+Alt+V Clipboard history — delete-entry mode (unchanged)

How it works

Wayland has no global copy/paste; each application owns its own shortcut, and terminals deliberately differ (Ctrl+C = SIGINT). super-copy / super-paste read the focused window's class (hyprctl activewindow) and forward the correct real shortcut to it using Hyprland's built-in sendshortcut dispatcher.

No external dependencies — no ydotool/wtype, no uinput permissions, no daemon. Just hyprctl + jq (both already present).

Files

  • super-copy, super-paste → installed to ~/.local/bin
  • binds appended to ~/.config/caelestia/hypr-user.conf (idempotent, marked block; unbind = SUPER, V removes the stock history bind first)

Install

sh install-super-clipboard.sh

Idempotent. Re-running only refreshes the scripts; the conf block is added once.

Builder notes

  • No package delta. Relies on hyprctl, jq, and the sendshortcut dispatcher (Hyprland ≥ 0.25-era; present on 0.55.x).
  • If baking binds directly instead of running the installer, write the marked block above into the shipped hypr-user.conf and drop super-copy/ super-paste into ~/.local/bin.
  • The terminal class-list is a substring match (*term* etc.); extend super-copy/super-paste if you add a terminal whose class doesn't match.