Installation Options
- Download a prebuilt binary from the releases
- Go path installation
- Build from source
- Homebrew manual installation
Go path installation
sh
go install github.com/jc21/lsgo@latestBuild from source
Clone the repository and build the binary:
sh
git clone https://github.com/jc21/lsgo.git
cd lsgo
go build -o lsgo .This produces a single lsgo executable in the current directory with no runtime dependencies. Move it anywhere on your PATH, for example:
sh
sudo mv lsgo /usr/local/bin/Homebrew manual installation
bash
export HOMEBREW_NO_INSTALL_FROM_API=1
brew update
brew tap --force homebrew/core
cd $(brew --repo homebrew/core)
git remote add jc21 https://github.com/jc21/homebrew-core.git
git fetch --all
git checkout jc21/lsgo
brew install --build-from-source lsgo
# and if you need to rebuild:
brew reinstall --build-from-source lsgo
# Switch back to homebrew-core master
git checkout masterVerifying the install
sh
lsgo --versionCross-compiling
Since lsgo has no cgo dependencies on Linux (Darwin's extended-attribute support shells out to the xattr CLI tool rather than using cgo — see the project's CLAUDE.md for why), standard Go cross-compilation works as expected:
sh
GOOS=linux GOARCH=arm64 go build -o lsgo-linux-arm64 .Using lsgo as your default ls
Once it's on your PATH, an alias is the easiest way to reach for it out of habit. Add this to your shell's rc file (.bashrc, .zshrc, etc.):
sh
alias ls='lsgo'