Hermes is a decentralized, time traveling package manager, build tool, and deployment tool that ...
And more ...
There are two main choices when installing hermes:
The recommended full system install, which enables proper package build sandboxing and a secure shared package store for all users.
The alternative, single user mode with a non standard package store path, for when you do not have the ability to install with root privileges. The major downsides for single user unprivileged installs is that you will need rebuild packages for your own chosen store path and manage your own package cache. Another downside is that your user account may not have sufficient privileges to do fully sandboxed package builds, so the sandbox is disabled by default.
Once you have decided what mode you would like you can proceed as follows...
First install go, a C compiler and make, which are necessary to build hermes.
Glibc does not statically link properly, causing issues with sandboxing, so we highly recommend building hermes with musl libc. If you are unsure about this, prebuilt binaries are a better choice for you.
$ ./configure --prefix="/hermes" $ sudo make install $ export PATH="$PATH:/hermes/bin" $ useradd --system --no-create-home --home /homeless hermes_build_user $ sudo hermes init
Inspect "/hermes/store.cfg" for any configuration you would like to change.
$ ./configure --prefix="$HOME/hermes" $ make install $ export PATH="$PATH:$HOME/hermes/bin" $ hermes init --single-user --store "$HOME/hermes" $ cat > $HOME/.config/hermes/hermes.cfg <<EOF store_path="$HOME/hermes" EOF
Inspect "$HOME/hermes/store.cfg" for any configuration you would like to change.
$ make uninstall
Which will remove the hermes binaries from $PREFIX/bin and $PREFIX/libexec.
Then you can manually:
Remove the hermes store, the default is in
/hermes. Remove any build
users you have created.
For more information see the book