mirror of
				https://github.com/therootcompany/pathman.git
				synced 2024-11-16 17:09:01 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			192 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			192 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # [pathman](https://git.rootprojects.org/root/pathman)
 | |
| 
 | |
| Manage PATH on Windows, Mac, and Linux with various Shells
 | |
| 
 | |
| ```bash
 | |
| pathman list
 | |
| pathman add ~/.local/bin
 | |
| pathman remove ~/.local/bin
 | |
| ```
 | |
| 
 | |
| Windows: stores PATH in the registry.
 | |
| 
 | |
| Mac & Linux: stores PATH in `~/.config/envman/PATH.sh`
 | |
| 
 | |
| ## Downloads
 | |
| 
 | |
| ### MacOS
 | |
| 
 | |
| MacOS (darwin): [64-bit Download ](https://rootprojects.org/pathman/dist/darwin/amd64/pathman)
 | |
| 
 | |
| ```
 | |
| curl https://rootprojects.org/pathman/dist/darwin/amd64/pathman -o pathman
 | |
| ```
 | |
| 
 | |
| ### Windows
 | |
| 
 | |
| <details>
 | |
| <summary>See download options</summary>
 | |
| Windows 10: [64-bit Download](https://rootprojects.org/pathman/dist/windows/amd64/pathman.exe)
 | |
| 
 | |
| ```
 | |
| powershell.exe $ProgressPreference = 'SilentlyContinue'; Invoke-WebRequest https://rootprojects.org/pathman/dist/windows/amd64/pathman.exe -OutFile pathman.exe
 | |
| ```
 | |
| 
 | |
| **Debug version**:
 | |
| 
 | |
| ```
 | |
| powershell.exe $ProgressPreference = 'SilentlyContinue'; Invoke-WebRequest https://rootprojects.org/pathman/dist/windows/amd64/pathman.debug.exe -OutFile pathman.debug.exe
 | |
| ```
 | |
| 
 | |
| Windows 7: [32-bit Download](https://rootprojects.org/pathman/dist/windows/386/pathman.exe)
 | |
| 
 | |
| ```
 | |
| powershell.exe "(New-Object Net.WebClient).DownloadFile('https://rootprojects.org/pathman/dist/windows/386/pathman.exe', 'pathman.exe')"
 | |
| ```
 | |
| 
 | |
| **Debug version**:
 | |
| 
 | |
| ```
 | |
| powershell.exe "(New-Object Net.WebClient).DownloadFile('https://rootprojects.org/pathman/dist/windows/386/pathman.debug.exe', 'pathman.debug.exe')"
 | |
| ```
 | |
| 
 | |
| </details>
 | |
| 
 | |
| ### Linux
 | |
| 
 | |
| <details>
 | |
| <summary>See download options</summary>
 | |
| 
 | |
| Linux (64-bit): [Download](https://rootprojects.org/pathman/dist/linux/amd64/pathman)
 | |
| 
 | |
| ```
 | |
| curl https://rootprojects.org/pathman/dist/linux/amd64/pathman -o pathman
 | |
| ```
 | |
| 
 | |
| Linux (32-bit): [Download](https://rootprojects.org/pathman/dist/linux/386/pathman)
 | |
| 
 | |
| ```
 | |
| curl https://rootprojects.org/pathman/dist/linux/386/pathman -o pathman
 | |
| ```
 | |
| 
 | |
| </details>
 | |
| 
 | |
| ### Raspberry Pi (Linux ARM)
 | |
| 
 | |
| <details>
 | |
| <summary>See download options</summary>
 | |
| 
 | |
| RPi 4 (64-bit armv8): [Download](https://rootprojects.org/pathman/dist/linux/armv8/pathman)
 | |
| 
 | |
| ```
 | |
| curl https://rootprojects.org/pathman/dist/linux/armv8/pathman -o pathman`
 | |
| ```
 | |
| 
 | |
| RPi 3 (armv7): [Download](https://rootprojects.org/pathman/dist/linux/armv7/pathman)
 | |
| 
 | |
| ```
 | |
| curl https://rootprojects.org/pathman/dist/linux/armv7/pathman -o pathman
 | |
| ```
 | |
| 
 | |
| ARMv6: [Download](https://rootprojects.org/pathman/dist/linux/armv6/pathman)
 | |
| 
 | |
| ```
 | |
| curl https://rootprojects.org/pathman/dist/linux/armv6/pathman -o pathman
 | |
| ```
 | |
| 
 | |
| RPi Zero (armv5): [Download](https://rootprojects.org/pathman/dist/linux/armv5/pathman)
 | |
| 
 | |
| ```
 | |
| curl https://rootprojects.org/pathman/dist/linux/armv5/pathman -o pathman
 | |
| ```
 | |
| 
 | |
| </details>
 | |
| 
 | |
| ### Add to PATH
 | |
| 
 | |
| **Windows**
 | |
| 
 | |
| ```
 | |
| mkdir %userprofile%\bin
 | |
| move pathman.exe %userprofile%\bin\pathman.exe
 | |
| %userprofile%\bin\pathman.exe ~\bin
 | |
| ```
 | |
| 
 | |
| **All Others**
 | |
| 
 | |
| ```
 | |
| chmod a+x ./pathman
 | |
| mkdir -p ~/.local/bin
 | |
| mv ./pathman ~/.local/bin
 | |
| pathman add ~/.local/bin
 | |
| ```
 | |
| 
 | |
| # add
 | |
| 
 | |
| ```bash
 | |
| pathman add ~/.local/bin
 | |
| ```
 | |
| 
 | |
| ```txt
 | |
| Saved PATH changes. To set the PATH immediately, update the current session:
 | |
| 
 | |
| 	export PATH="/Users/me/.local/bin:$PATH"
 | |
| ```
 | |
| 
 | |
| # remove
 | |
| 
 | |
| ```bash
 | |
| pathman remove ~/.local/bin
 | |
| ```
 | |
| 
 | |
| ```txt
 | |
| Saved PATH changes. To set the PATH immediately, update the current session:
 | |
| 
 | |
| 	export PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"
 | |
| ```
 | |
| 
 | |
| # list
 | |
| 
 | |
| ```bash
 | |
| pathman list
 | |
| ```
 | |
| 
 | |
| ```txt
 | |
| pathman-managed PATH entries:
 | |
| 
 | |
| 	$HOME/.local/bin
 | |
| 
 | |
| other PATH entries:
 | |
| 
 | |
| 	/usr/local/bin
 | |
| 	/usr/bin
 | |
| 	/bin
 | |
| 	/usr/sbin
 | |
| 	/sbin
 | |
| 
 | |
| ```
 | |
| 
 | |
| # Windows
 | |
| 
 | |
| You can use `~` as a shortcut for `%USERPROFILE%`.
 | |
| 
 | |
| ```bash
 | |
| pathman add ~\.local\bin
 | |
| ```
 | |
| 
 | |
| The registry will be used, even when your using Node Bash, Git Bash, or MINGW.
 | |
| 
 | |
| # build
 | |
| 
 | |
| ```bash
 | |
| git clone https://git.rootprojects.org/root/pathman.git
 | |
| ```
 | |
| 
 | |
| ```bash
 | |
| go mod tidy
 | |
| go mod vendor
 | |
| go generate -mod=vendor ./...
 | |
| go build -mod=vendor
 | |
| ./pathman list
 | |
| ```
 |