packages.redbeardlab.com is a FUSE filesystem, easy to mount on any *nix machine, that provides a stable and reliable filesystem structures. Its main advantage is the stability of its structures.
Once the filesystem is mounted, the user will find all the binaries it needs in predetermined PATHs. It does not matter if the OS is a Debian or CentOS or Ubuntu or Fedora. All the binaries inside the /cvmfs/packaged.redbeardlab.com
will work and will load only internal dependencies.
It allows to easily and quickly distribute software all around the world in very heterogeneous systems providing to the users a read-only directory where the software is installed.
Today we announce our support for the Golang community.
We decide to distribute with packages.redbeardlab.com
all the Golang compilers, starting from go1.5.4
up to the latest beta go1.16beta1
We believe this will help both professional Golang developers and students or developers that are just approaching the language.
Distribution through packages.redbeardlab.com
will allow developer to try new and old version of the compiler without installing anything.
Getting started
The first step to use packages.redbeardlab.com
is to install the CVMFS client and the relative configuration.
Installation instruction are provided with the associate github repository.
After having installed CVMFS and packages.redbeardlab.com
it will be possible to access the global directory /cvmfs/packages.redbeardlab.com
in your local *nix system.
In that directory the subdirectory golang/
will contains all the Golang compilers in golang/bin
The fastest way to use the repository for Golang is to source the setup script in the root of the repository:
source /cvmfs/packages.redbeardlab.com/setup.sh
This will add /cvmfs/packages.redbeardlab.com/golang/bin
to the local $PATH
giving access to all the compilers.
Walkthrough with Asciinema
Below a walkthrough of /cvmfs/packages.redbeardlab.com
with a focus on the golang tools provided.
Caveats
Software distributed with CVMFS need to be first downloaded from the network.
This implies that we can have HUGE (in the order of Terabyte) repository, but the downside is that, the very first time we use a new tool, the download need to happens.
In the walkthrough above you can see the sensible difference between the very first invocation of the compilers that takes ~4 secs against the next invocations that are immediate.
A similar issue happens when compiling source code. Golang need access to its standard library. Hence, the first time you compile the software from packages.redbeardlab.com
it will take quite a bit more than the second or third time.
The internal cache of CVMFS is persistent in the filesystem, this means that even when you reboot your machine, the files already downloaded will be available.
Adding tools
More tools can be installed in packages.redbeardlab.com
to help the Golang community.
Feel free to requests those tools opening a github issue, or over twitter.