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>
2.5 KiB
Executable file
NoSignal — system polish bundle
Three small quality-of-life pieces in one bundle.
A. Menu cleanup + working printing
Hidden launcher entries (per-user Hidden=true overrides in
~/.local/share/applications/ — survive package upgrades, deleting the
override restores the entry):
| Entry | Why hidden |
|---|---|
avahi-discover, bssh, bvnc |
Avahi's bundled mDNS browser tools — diagnostic clutter. The avahi-daemon itself stays (needed for .local resolution and network printer discovery) |
qv4l2, qvidcap |
V4L2 camera test tools |
foot, footclient, foot-server |
Caelestia's stock terminal; NoSignal uses kitty. Package stays (caelestia-meta dep) — just hidden |
org.gnupg.pinentry-qt, -qt5 |
GPG PIN dialogs, not launchable apps |
Printing: the full stack (cups + system-config-printer + avahi) is
installed on the base but cups.service was disabled — so printing silently
didn't work. The installer enables cups.socket (socket-activated: zero
cost until something prints). Print dialogs and system-config-printer then
work, with network printers auto-discovered via avahi.
B. Web-app installer
The piece of Omarchy's app story not covered by the software-install and keybinding components:
nosignal-webapp-install "WhatsApp" https://web.whatsapp.com https://example.com/icon.png
nosignal-webapp-remove "WhatsApp"
Creates a launcher entry running chromium --app=<url> (no tabs/omnibox —
feels like a native app). Icon URL optional (generic web icon otherwise).
Icons live in ~/.local/share/applications/icons/.
C. First-login welcome
nosignal-welcome (started by exec-once in hypr-user.conf) shows one
notification on first login pointing at the discoverability keys —
Super+K keybindings, Super+Space launcher, Super+I software,
Super+Ctrl+H monitors — then stamps
~/.local/state/nosignal/welcomed and never appears again. (Remove the stamp
to see it again.)
Install
sh ~/Downloads/system-polish/install-system-polish.sh # sudo only for cups.socket
Also wired into nosignal-update as migration 1781240400-system-polish.sh.
Packaging
- Bake the hidden-entry overrides into the user skeleton, enable
cups.socketin the image (systemctl enable cups.socket), ship the three scripts in~/.local/bin, and put the welcomeexec-oncein the bakedhypr-user.conf(don't pre-create the stamp!). - Optionally pre-seed a couple of web apps (e.g. YouTube, WhatsApp) by
running
nosignal-webapp-installin the skeleton — keep it minimal.