NoSignal-OS/os updates/fish-to-bash
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
..
bash NoSignal — fully-offline Arch → Hyprland desktop installer 2026-06-21 11:03:10 +01:00
bashrc NoSignal — fully-offline Arch → Hyprland desktop installer 2026-06-21 11:03:10 +01:00
hypr-configs.bash NoSignal — fully-offline Arch → Hyprland desktop installer 2026-06-21 11:03:10 +01:00
hypr-wsaction.bash NoSignal — fully-offline Arch → Hyprland desktop installer 2026-06-21 11:03:10 +01:00
install-fish-to-bash.sh NoSignal — fully-offline Arch → Hyprland desktop installer 2026-06-21 11:03:10 +01:00
README.md NoSignal — fully-offline Arch → Hyprland desktop installer 2026-06-21 11:03:10 +01:00

NoSignal — fish → bash migration (Omarchy bash setup)

Switches this Caelestia/NoSignal box from the fish shell to bash, configured to match Omarchy. Self-contained so it survives a wipe — copy this folder back with the rest of Downloads and run the installer.

Install

sh ~/Downloads/fish-to-bash/install-fish-to-bash.sh

Idempotent. Open a new terminal afterwards to land in bash.

What it does

Step Effect
Vendor bash/ tree Copied verbatim from Omarchy to ~/.local/share/omarchy/default/bash/ (rc, shell, aliases, envs, init, functions, inputrc, completions, fns/*)
~/.bashrc Omarchy's template; sources the tree above. Existing ~/.bashrc backed up to ~/.bashrc.pre-omarchy
kitty ~/.config/kitty/kitty.conf: shell fishshell bash
foot ~/.config/foot/foot.ini: shell=fishshell=bash
Hyprland helpers wsaction.fish & configs.fish replaced with bash ports (same filenames, bash shebang) so the stock keybinds keep working

Why the layout matches Omarchy exactly

The vendored files are byte-for-byte Omarchy and live at Omarchy's own path (~/.local/share/omarchy/...). That means: (a) the prompt/aliases/history/ completion behaviour is identical to Omarchy, and (b) you can refresh them from upstream by re-copying default/bash/ with no edits. envs sets OMARCHY_PATH and prepends ~/.local/bin to PATH (so the keybind-help scripts resolve too). References to omarchy-only tools (omarchy, mise, opencode, tdl, gum, …) are all guarded with command -v or are function definitions, so missing tools are harmless until you actually call them.

NoSignal-specific additions (the only deviations from stock Omarchy)

  • ~/.bashrc exports EDITOR=nvim if unset (Omarchy sets this in uwsm/env, which we don't manage here).
  • ~/.bashrc runs cat ~/.local/state/caelestia/sequences.txt so the terminal picks up Caelestia's dynamic colour scheme.

Notes / things that changed from the old fish config

  • ga / gd now mean Omarchy's git-worktree helpers, not the old fish abbreviations (git add . / git diff). Other git shortcuts: g, gcm, gcam, gcad.
  • direnv was hooked in the old fish config; Omarchy's bash doesn't include it. Add eval "$(direnv hook bash)" to the bottom of ~/.bashrc if you want it back.
  • The fish package is left installed (it may be pulled in as a Caelestia dependency). Nothing interactive uses it anymore. Remove it only after confirming nothing else needs it: sudo pacman -Rns fish.
  • The fish config dir (~/.config/fish, a Caelestia symlink) is left in place but unused.

Requirements

bash, and ideally starship, zoxide, eza, fzf, bat for the full Omarchy experience (all guarded — bash works without them).