This project is discontinued in favor of homebrew and my own tap.
Installer for tools I use regularly on Linux
I am many tools which are either not included in my favourite Linux distribution or which are not updated fast enough. These tools are also used in my talks and workshops where I need to install them in environments provided to participants.
For a few years, I have maintained a list of commands to download and install these tools. But I ended up with outdated versions and duplicate instructions.
So, I started working on an installer for these tools.
Yes, this project seems to be competing with other tools:
- bin by marcosnils - I wanted to be able to cover projects which are not publishing precompiled binaries
- homebrew - This felt too complex for my use case
- Install a tool with dependencies
- Automatically track latest version
- Configure and start daemons
- Track installed tools and versions
Most functionality is available with bash
, curl
and jq
The subcommands list
and search
also require column
for formatting the output
Several packages require Docker and/or Git to compile the binaries from source
Some packages require some logic to install which is based on envsubst
, make
, xz
, bzip2
and unzip
Install the package manager:
curl --silent https://pkg.dille.io/pkgctl | bash -s bootstrap
Download or update the package definitions:
pkgctl update
List available packages:
pkgctl list
Search packages:
pkgctl search docker
pkgctl search --tags docker
Install a package:
pkgctl install kind
Install a specific version of a package:
pkgctl install kind@v0.9.0
Install a package that is already installed:
pkgctl install --force kind
Install multiple packages:
pkgctl install kind kubectl
Install multiple packages from a file:
$ cat packages.txt
kind
kubectl
$ pkgctl install --file packages.txt
pkgctl
includes completion:
source scripts/completion.sh