Void is a general purpose operating system, based on the monolithic Linux® kernel. Its package system allows you to quickly install, update and remove software; software is provided in binary packages or can be built directly from sources with the help of the XBPS source packages collection.
It is available for the Intel x86®, ARM® and MIPS® processor architectures; Software packages can be built natively or cross compiling through the XBPS source packages collection.
Void Linux is an independent distribution, developed entirely by volunteers.
Unlike trillions of other existing distros, Void is not a modification of an existing distribution. Void's package manager and build system have been written from scratch.
Install once, update daily. Your system will always be up-to-date.
Thanks to our continuous build system, new software is built into binary packages as soon as the changes are pushed to the void-packages repository.
We were the first distribution to switch to LibreSSL by default, replacing OpenSSL.
xbps is the native system package manager, written from scratch with a 2-clause BSD license.
xbps allows you to quickly install/update/remove software in your system and features detection of incompatible shared libraries and dependencies while updating or removing packages (among others). See the usage page for a brief introduction.
xbps-src is the xbps package builder, written from scratch with a 2-clause BSD license.
This builds the software in containers through the use of Linux namespaces, providing isolation of processes and bind mounts (among others). No root required!
Additionally xbps-src can build natively or cross compile for the target machine, and supports multiple C libraries (glibc and musl currently).
‘Twas the Night Before Christmas,
When all through the cluster, not a build was running, not even a revbump. The packages were all signed by the server with care, in hopes that an upgrade soon would be there.
The maintainers were nestled all snug at their desks, while visions of waterfalls danced in their heads; and Gottox in his home and I in mine, had just settled our brains for a long winter break; when out on the frontends there arose such a clatter, I sprang to my terminal to see what was the matter.
Away to my console I flew like a flash, called for my tmux and threw open the logstash. The status page on my screen lent a luster of midday to errors below, when what to my wondering eyes should appear, but a stuck qt5 build and 8 staged SONAMEs.
With a large webengine so slow and so massive, I knew in an instant it must be chromium. More rapid than runit my commands to the system: “Now Ansible! now Grafana! now buildbot and xbulk! On rindex! on snooze! on, ext4 and repo-cleaner! To the top of the graph to the top of the stack now build, build away, build away all!
As disk platters that before the online scrub fly, when they meet with an obstacle always retry, so up to the servers the tasks they all flew, with their mirror of toys and BDFL, too.
And then in a twinkling, I saw in reply the server starting and launching of each single build. As I drew in my buffers, and was closing up shop, down the pipe the json came with a stop. It was padded with null bytes from its start to its end, and its braces were all tarnished with codepages and parity bits; a slice of package it contained in its body, and it looked like a startup just opening its reply. The descriptors how they twinkled, the keys how merry!
A close of a brace and a retcode of 0 soon gave me to know I had
nothing to dread. Buildbot said not a word but went straight to its
work, and filled the mirrors with packages. Waiting for but a moment
before confirming my intent, the BuildBot went on its way; indexes
sprang to their clients, and to the fleet I did signal and away they
all built like the sight seldom seen. But before I
C-b d I exclaim
to all users:
Happy Christmas to all, and to all a Good Night!
We hope you’ve enjoyed the Advent of Void. This is a fun project that we’ve done now for two years to try and shed some light on lesser known packages. We’ve got a few honorable mentions that may make their way to the feed over the next few days, but this post concludes the series. Void is a volunteer effort that we enjoy sharing with you, and hopefully you’ve learned some neat new tips and tricks these last 24 days. Our volunteers don’t just make packages and manage infrastructure, we also write fun posts like these (though I recognize I’m a quite poor poet). If you want to become involved and help us keep Void going, join us in #xbps on freenode, but maybe wait until after the holidays to do so.
Enjoy the winter season and the updates that just keep rolling!
Have you ever wanted to doodle on a screenshot? Ever? Just a single underline, or an arrow, or something to help point out something about a screenshot? Or maybe during a presentation, on the fly, suddenly you want to point out a particular thing… wouldn’t it be nice to have a tool to help?
Turns out, there is one, a very simple tool to do this. I use it every month.
Gromit-mpx is simple.
<F9> to start being able to draw,
clear everything you drew, and
Ctrl-<F9> to stop being able to draw (but
leave everything on the screen). Just make sure
gromit-mpx is running in the
background, and you are set for all your drawing and annotating needs. Even
people like me, who just run
dwm and not with any compositor, I can annotate
my screen quickly.
But with just a few lines, I can clarify what I meant to share. I won’t be winning any art awards, but it works.
Do note that the annotations stick around, even after you scroll the window, or switch to a different screen entirely.
gromit-mpx around, it might be useful someday.
For more information, there is always the gromit-mpx(1) manpage.