Skip to content

Getting Started

Karialo edited this page Aug 3, 2026 · 1 revision

Getting Started

Noob mode

Install BinMan from a clone of the repository:

git clone https://github.com/karialo/binman.git
cd binman
bash binman.sh install binman.sh

Refresh the current shell if BinMan asks:

rehash 2>/dev/null || hash -r 2>/dev/null || true
binman

If the command is still missing:

export PATH="$HOME/.local/bin:$PATH"

For a persistent PATH fix:

binman doctor --fix-path

Common workflows

# Install a script
binman install ./cleanup.sh

# Install a project
binman install ./MyApp

# Give a tool a nicer command name
binman install ./ridiculously-long-name.sh --name tidy

# Browse bundled utilities
binman scripts

# Inspect installed tools
binman list
binman verify

Pro mode

BinMan runs through Bash, but it can be called from Bash, Zsh, Fish, and other shells. It cannot modify the parent shell's in-memory command hash table from inside a child process. That is why it prints rehash for shells that use it and hash -r for shells that use the POSIX-style command cache.

Interactive installs require a TTY. Non-interactive installs work well for single files; project directories may need an explicit entry command:

binman install ./MyApp --entry 'python3 src/main.py' --workdir src

The default user destinations are:

~/.local/bin/<command>
~/.local/share/binman/apps/<app>

Use --system for /usr/local/bin and /usr/local/share/binman/apps; system installs may re-exec through sudo.

Clone this wiki locally