What loadout leaves out
A curated catalog is a claim about taste, and taste is the part of a tool you cannot verify by reading its source. So this page is the other half of the catalog: the entries that did not make it, and why.
The catalog began as 188 accumulated aliases from one person’s dotfiles. 136 ship today, about thirty more were absorbed into configuration, and the rest were dropped. The ones that did not make it are more informative than the ones that did.
Where each entry goes
Section titled “Where each entry goes”Every candidate lands in one of four buckets.
| Bucket | Test |
|---|---|
| Core | Useful to nearly everyone, contains no personal values |
| Pack | Tied to one tool or ecosystem, off until you enable it |
| Config | Contains a path, host, org or identity that varies per user |
| Drop | Personal, dead upstream, or a bad default for strangers |
Packs exist because ship-or-drop forces a bad call on the nine Flutter aliases: useless to most people, valuable to Flutter developers. They are how an opinionated catalog stays opinionated without getting fat.
Config is the more interesting bucket. micasa and sucasa were aliases pointing at one person’s home server. They ship as the shape — an alias generated from every entry in your hosts[] — while the values stay yours. Roughly thirty entries were absorbed that way rather than dropped.
The rules
Section titled “The rules”Nothing shadows a familiar command. If a name already means something on a normal system, the catalog does not take it. Changing what ls does breaks scripts that parse its output and surprises anyone who sits down at your machine.
Nothing silently changes what a command does. An alias may shorten a command. It may not quietly alter its behaviour under the original name, because the failure arrives much later and looks like the tool is broken.
Nothing destructive gets a short name. Convenience and irreversibility should not be combined. A two-character alias for a recursive force-delete is a typo away from a bad afternoon.
Nothing ships for unmaintained software. An alias for an abandoned tool is dead weight that looks like a feature. If a modern equivalent is wanted, it enters under its own name rather than reviving the old one.
Personal values are configuration, not aliases. An alias containing your VPN interface, your project path or your git identity is not a curated default. It is your data wearing a catalog entry’s clothes.
What was dropped
Section titled “What was dropped”Eight entries were removed outright.
| Alias | Was | Why |
|---|---|---|
ls la | colorls, colorls -al | Shadowed ls; broke POSIX-output scripts and failed without it |
del | rm -rf | Two characters for a recursive force-delete |
ping | ping -c 5 | Silently capped a command that otherwise runs until interrupted |
dl dlp | youtube-dl … | youtube-dl effectively unmaintained since 2021 |
neo | neofetch | Archived in 2024 |
dkc | docker-compose | Compose v1 end-of-life July 2023, absent from current Docker |
ping is the one worth dwelling on. ping -c 5 is a defensible personal preference and an indefensible shipped default: it silently caps a command that everyone else expects to run until interrupted, and the person it confuses most is the one who did not install it deliberately.
The commented-out exa variants went with ls and la; exa was archived in 2023 and superseded by eza. If the modern equivalents are wanted later — eza, yt-dlp, fastfetch, docker compose — they come back as new entries, not as revivals of these names.
What was renamed
Section titled “What was renamed”Four entries kept their commands and lost their names.
| Was | Now | Why |
|---|---|---|
clone | ghc | A generic verb claimed globally for one forge’s CLI |
create | ghn | Same, and create says nothing about what is created |
fork | ghf | Same |
view | ghv | Shadowed view, vim’s read-only mode, present on most installs |
view had been shipping in breach of the first rule on this page — writing the rules down is what turned it up. That is the honest version of publishing a standard: the first thing it caught was ours.
What this means for you
Section titled “What this means for you”The bar is deliberately high, and it is not a claim that the result suits everyone. Three things follow from that.
You can turn any entry off. aliases.disabled removes it from the generated file entirely — see aliases and packs.
You can add your own without forking anything. aliases.custom entries are generated alongside the shipped ones and are not subject to any of this.
And an entry rejected from the catalog is not an entry rejected from your shell. Most of what was dropped above is perfectly reasonable in a personal configuration. The bar is about what gets shipped to strangers by default, which is a different and much higher standard than what is useful to you.
If you think something belongs in the catalog — or that something in it should not be — contributing covers how that decision gets made.