--- title: Webi homepage: https://webinstall.dev tagline: | Webi is how developers install their tools. --- ## Updating `webi` ```sh webi webi ``` Since `webi` is just a small helper script, it always updates on each use. ### Files These are the files / directories that are created and/or modified with this install: ```text ~/.config/envman/PATH.env # Mac, Linux ~/.local/bin/webi # Windows ~/.local/bin/webi.bat ~/.local/bin/webi-pwsh.ps1 ``` ## Cheat Sheet > `webi` is what you would have created if you automated how you install your > common tools yourself: Simple, direct downloads from official sources, > unpacked into `~/.local`, added to `PATH`, symlinked for easy version > switching, with minimal niceties like resuming downloads and 'stable' tags. - Easy to remember. - No magic, no nonesense, no bulk. - What you would have done for yourself. You can install _exactly_ what you need, from memory, via URL: ```sh curl https://webi.sh/node@lts | sh ``` Or via `webi`, the tiny `curl | sh` shortcut command that comes with each install: ```sh webi node@lts golang@stable flutter@beta rustlang ``` ### webi PATHs You can see exactly what PATHs have been edited with [`pathman`](../pathman/): ```sh webi pathman pathman list ``` And where: ```sh cat ~/.config/envman/PATH.env ``` ### How to uninstall Webi These are the files that are installed when you use [webinstall.dev](/): ```sh # Mac, Linux ~/.local/bin/webi # Windows ~/.local/bin/webi.bat ~/.local/bin/webi-pwsh.ps1 ``` You can safely remove all of them. If you use [webinstall.dev](/) again in the future they will be reinstalled. Additionally, these files may be modified to update your `PATH`: ```sh ~/.bashrc ~/.profile ~/.config/fish/config.fish ~/.config/envman/PATH.env ``` It's probably best to leave them alone. ### How to uninstall Webi-installed programs Except where noted otherwise (such as `wsl`) Webi installs everything into `~/.local/bin` and `~/.local/opt`. Some programs also use `~/.local/share` or `~/.config` - such as `postgres` and `fish` - and some use program-specific directories - such as Go, which uses `~/go/bin`. If you want to remove any of them, simply deleting them should do well enough - just check the Cheat Sheet for any special notes. Here are some examples: ```sh # Remove jq rm -rf ~/.local/bin/jq rm -rf ~/.local/jq-*/ # Remove node.js rm -rf ~/.local/opt/node/ rm -rf ~/.local/opt/node-*/ ```