Zeus. A simple AUR helper which utilizes docker containers allowing developers and users alike to benefit from it's reproducible, clean and flexible builds.
Table of contents
Usage
This will explain everything.
$ zeus --help
The structure for the command arguments mimics pacman
.
Some examples:
Installing a package
$ zeus -S package_name
Upgrading a package
$ zeus -Su package_name
Removing a package
# pacman -R package_name
Note the
#
, this means the command must be ran asroot
to work properly
Getting shell completions
$ zeus misc --shell your_shell
For a list of supported shells, see zeus misc --help
.
Installing
Currently there are 2 packages in the AUR.
zeus
- Which builds from the latest releasezeus-bin
- Which unpacks prebuilt binaries from the latest release.
Package | Version |
---|---|
zeus |
|
zeus-bin |
NOTE: The binaries for
zeus-bin
are built in Github Actions
After installing one of the 2 packages, there is one final step towards getting up and running.
Building the actual builder container.
$ zeus -B
If your user does not have access to the docker socket, you will have to run the previous command as root and subsequently every time you want to use the program.
Building
After cloning the repository, use the build
target in the Makefile
to build everything.
$ make build
By default the
build
target builds the debug version, if you wish to build the release version setBUILD_TYPE=release
.
$ export BUILD_TYPE=release
$ make build
Testing local changes can be done in 2 ways.
Not installing locally
This method involves no extra steps.
Running the built binary is as simple as:
$ ./target/$BUILD_TYPE/zeus
Remember to specify the builder image archive with
--archive ./builder.tar.gz
Installing locally
Installing locally for easier testing is possible with the install
target.
# make install
DESTDIR
andPREFIX
can be used to alter the installation.
After all this you should be able to just run zeus
directly in the terminal.
$ zeus