Uninstalling
One admin prompt reverses every change. Nothing is left behind.
How
Quit the app from the menu bar first — the uninstaller refuses to run while it is up — then run:
uninstall
make uninstall # one admin prompt
There is a menu item for the same thing. The privileged half is a single script, packages/privileged/uninstall.sh, run behind one prompt; the uninstaller prefers the copy inside the installed bundle, because that is the one that was used.
What it removes
- 1Stops the root forwarder.
- 2Removes the
lo0addresses it added. - 3Strips the managed block from
/etc/hosts, leaving every other line untouched. - 4Flushes DNS.
- 5Removes the local CA from your login keychain — matched by SHA-1 fingerprint, never by name, because deleting the wrong certificate is unrecoverable.
- 6Deletes
~/.config/localhost-aliases. - 7Deletes the app.
Your projects are untouched, any .localhost-aliases.json files stay in their repositories, and /etc/hosts keeps every line outside the managed block. If the privileged half fails, nothing is deleted — you can fix the problem and run it again.
NextTroubleshooting