chim

Cross-platform binary shims with optional remote fetching.

Quickstart (make an automatic fetching node wrapper)

Install chim: (see docs for alternate install methods)

$ go install github.com/chimpw/chim@v0.1.0 $ chim --version v0.1.0

Create a chim in ./node:

```toml

!/usr/bin/env chim

[macos-arm64] url = 'https://nodejs.org/dist/v18.7.0/node-v18.7.0-darwin-arm64.tar.xz' path = 'bin/node'

[linux-x64] url = 'https://nodejs.org/dist/v18.7.0/node-v18.7.0-linux-x64.tar.xz' path = 'bin/node' ```

Now make it executable and run it:

$ chmod +x ./node $ ./node -v v18.7.0

The tarball is fetched once from nodejs.org, extracted into a cache directory, then reused on future ./bin/node calls.

What am I supposed to do with this?

Commit a set of chims into your project repo so people can just add it to their $PATH and don't have to manually install each utility. Also run the chims in CI/CD so you have dev/prod parity with your tools!

TODO

This project is a WIP