Table of Contents
Sanitizing Slackware
The steps to deblob an existing Slackware installation would be quite easy if not for the necessity to replace the non-free kernel. While the task of rebuilding the kernel is arguably easier in Slackware than in many other GNU/Linux distributions, it is not for beginners. If you don't feel like learning to build the kernel, feel welcome to use our free repository to obtain binary kernel packages. As a middle ground, you can use our kernel build script to make your own packages from Linux-libre source.
That being said, you can de-blob Slackware in a completely manual fashion by doing this:
- Use the licensing information we collected to make a list of non-free packages in your version of Slackware.
- Regardless of its status, keep using the stock kernel headers package
kernel-headers
as if it was free. It is in fact free, and replacing it manually is a pain. - Blacklist the offending Slackware packages in
/etc/slackpkg/blacklist
. Make sure package names occupy separate lines, and avoid white space. - Build and install a free kernel together with modules (for example, Linux-libre). The official documentation provides a description of this process. Do not uninstall the stock kernel yet, in case the new kernel throws a fit.
- Boot into the free kernel and remove the non-free Slackware packages with
removepkg
.
Upgrading
We haven't tried this, but we don't know of a reason why it wouldn't work. Make a local copy of the Slackware repository, remove all non-free packages, and then upgrade as usual.
Caveats
Please be aware that as long as you keep using the official repository, non-free packages may still creep in during updates, unlikely as it is. We see no easy cure for this, short of switching to a free repository.