refactor: finish moving ssh-* scripts to own installers
[webi-installers/.git] / webi / README.md
1 ---
2 title: Webi
3 homepage: https://webinstall.dev
4 tagline: |
5   Webi is how developers install their tools.
6 ---
7
8 ## Updating `webi`
9
10 ```bash
11 webi webi
12 ```
13
14 Since `webi` is just a small helper script, it's always update on each use.
15
16 ## Cheat Sheet
17
18 > `webi` is what you would have created if you automated how you install your
19 > common tools yourself: Simple, direct downloads from official sources,
20 > unpacked into `~/.local`, added to `PATH`, symlinked for easy version
21 > switching, with minimal niceties like resuming downloads and 'stable' tags.
22
23 - Easy to remember.
24 - No magic, no nonesense, no bulk.
25 - What you would have done for yourself.
26
27 You can install _exactly_ what you need, from memory, via URL:
28
29 ```bash
30 curl https://webinstall.dev/node@lts | bash
31 ```
32
33 Or via `webi`, the tiny `curl | bash` shortcut command that comes with each
34 install:
35
36 ```bash
37 webi node@lts golang@stable flutter@beta rustlang
38 ```
39
40 ### webi PATHs
41
42 You can see exactly what PATHs have been edited:
43
44 ```bash
45 pathman list
46 ```
47
48 And where:
49
50 ```bash
51 cat ~/.config/envman/PATH.env
52 ```
53
54 ### How to uninstall Webi
55
56 These are the files that are installed when you use [webinstall.dev](/):
57
58 ```bash
59 # Mac, Linux
60 ~/.local/bin/webi
61 ~/.local/bin/pathman
62 ~/.local/opt/pathman-*
63
64 # Windows 10
65 ~/.local/bin/webi.cmd
66 ~/.local/bin/webi-pwsh.ps1
67 ~/.local/bin/pathman.exe
68 ~/.local/opt/pathman-*
69 ```
70
71 Assuming that you don't use `pathman` for anything else, you can safely remove
72 all of them. If you use [webinstall.dev](/) again in the future they will be
73 reinstalled.
74
75 Additionally, these files may be modified to update your `PATH`:
76
77 ```bash
78 ~/.bashrc
79 ~/.profile
80 ~/.config/fish/config.fish
81 ~/.config/envman/PATH.env
82 ```
83
84 It's probably best to leave them alone.
85
86 ### How to uninstall Webi-installed programs
87
88 Except where noted otherwise (such as `wsl`) Webi installs everything into
89 `~/.local/bin` and `~/.local/opt`.
90
91 Some programs also use `~/.local/share` or `~/.config` - such as `postgres` and
92 `fish` - and some use program-specific directories - such as Go, which uses
93 `~/go/bin`.
94
95 If you want to remove any of them, simply deleting them should do well enough -
96 just check the Cheat Sheet for any special notes.
97
98 Here are some examples:
99
100 ```bash
101 # Remove jq
102 rm -rf ~/.local/bin/jq
103 rm -rf ~/.local/jq-*/
104
105 # Remove node.js
106 rm -rf ~/.local/opt/node/
107 rm -rf ~/.local/opt/node-*/
108 ```