There are different reasons people use Unix-like operating systems, including configurable, availability free of charge, powerful command line interface an many more. Some people are motivated by the moral issue: they reject non-free software. Specifically for such users Free Software Foundation developed Guidelines for Free System Distributions and created the list of absolutely free (“as in freedom”) distributions. In this article we are going to look at the most recent entry on the list – Parabola GNU/Linux.

Arch legacy

Parabola GNU/Linux is based on Arch Linux with differences being subtle:

It doesn’t allow installation of non-free software (obviously).

Additional repository “libre” is used for completely free versions of packages that are non-free in Arch.

It has its own download locations.

It has its own branding elements (eg., Arch’s blue color is replaced with purple for console messages’ decorations).

The installer features the additional message about the download locations being the only sources of “libre” repository packages.

This list is fairly complete. Effectively, long term Arch user won’t feel any difference in user experience unless the hardware support is concerned. The compatibility of distributions even allows the Arch users to migrate from Arch without re-installing system by emitting 6 commands in terminal.

Hardware and firmwares

Some hardware (including most WiFi and Bluetooth adapters) uses closed-source software (commonly referred to as “firmware”) for its operation. The device drivers on start load such firmware into the actual hardware, where it runs invisibly for operating system. Historically the firmware was stored on ROMs inside the hardware and didn’t require any handling from operating system; but more and more devices that need firmware load operations handling in driver emerge these days.

In BSD community such firmware is regarded as part of hardware. Eg., the OpenBSD’s campaign against blobs didn’t target firmware, and the base system of OpenBSD includes the firmware for all the supported devices unless there are legal concerns regarding redistribution. FSF’s position on this issue is completely different: every binary without source code available must be removed. The Latin American branch of FSF maintains the “Linux-libre” project with all the in-kernel non-free firmwares removed and loading of separately available firmware is disabled. Parabola GNU/Linux sticks with that kernel. The binary drivers for ATi/AMD and NVIDIA video adapters are also not included for the same reasons.

That effectively means that many devices are not supported in Parabola. Eg., after installing it on my Acer Aspire One 531h netbook I couldn’t use my Broadcom bluetooth module and Intel’s WiFi/WiMax Link 5150 adapter. (I still could use my HTC Magic with a custom Gingerbread ROM as a USB 3G/WiFi modem, though having something always connected to USB port is pretty annoying on laptop and specifically on netbook.)

Walled garden

As in Arch, after installing Parabola GNU/Linux you only get bare system. The distribution doesn’t pre-install any desktop environment or tools apart from those used in init scripts and pacman – the package manager.

The choice of software in Parabola is also limited to free software only. Regarding the amount of free software available for Unix-like systems, this limitation is by far less painful then the firmware issues though. Unless one relies on Skype or Adobe Flash, this shouldn’t be a big deal (especially with Gnash and Lightspark addressing the later issue available in repositories).

Parabola developers chose a refreshing approach to limiting the availability of non-free software while maintaining the ability to use Arch mirrors: all the “liberated” (built with special options or otherwise stripped off the non-free parts) packages are included in a separate “libre” repository; the blacklisting of non-free packages is done with a virtual “your-freedom” package that doesn’t install any files but conflicts with a long list of packages. Installing this package makes pacman (package manager) remove all the non-free software to resolve conflict or replace it with free analogues if required.

For the rest of the system one can use the Arch’s mirrors, though this option requires editing the “ /etc/pacman.conf ” configuration file and splitting the mirrorlists.

The backlisted packages are:

abyssws

acetoneiso2

alienarena

alienarena-data

alsa-firmware

angband

aqua-data-studio

arch-artwork

archboot

arch-firefox-search

archlinux-artwork

archlinux-menus

archlinux-themes-kde

archlinux-themes-kdm

archlinux-themes-slim

archlinux-wallpaper

arch-wiki-docs

arch-wiki-lite

assaultcube

b43-fwcutter

bass

blobwars

blobwars-data

bluez-firmware

boinc

boinc-nox

chromium

chromium-bsu

crafty

d4x

dangerdeep

dangerdeep-data

desmume

dina-font

dosemu

faac

fceux

fcpci

fcpcmcia

firefox-adblock-plus

firefox-i18n

firefox-i18n-af

firefox-i18n-ak

firefox-i18n-ar

firefox-i18n-ast

firefox-i18n-be

firefox-i18n-bg

firefox-i18n-bn-bd

firefox-i18n-bn-in

firefox-i18n-br

firefox-i18n-bs

firefox-i18n-ca

firefox-i18n-cs

firefox-i18n-cy

firefox-i18n-da

firefox-i18n-de

firefox-i18n-el

firefox-i18n-en-gb

firefox-i18n-eo

firefox-i18n-es-ar

firefox-i18n-es-cl

firefox-i18n-es-es

firefox-i18n-es-mx

firefox-i18n-et

firefox-i18n-eu

firefox-i18n-fa

firefox-i18n-fi

firefox-i18n-fr

firefox-i18n-fy-nl

firefox-i18n-ga-ie

firefox-i18n-gl

firefox-i18n-gu-in

firefox-i18n-he

firefox-i18n-hi-in

firefox-i18n-hr

firefox-i18n-hu

firefox-i18n-hy-am

firefox-i18n-id

firefox-i18n-is

firefox-i18n-it

firefox-i18n-ja

firefox-i18n-kk

firefox-i18n-kn

firefox-i18n-ko

firefox-i18n-ku

firefox-i18n-lg

firefox-i18n-lt

firefox-i18n-lv

firefox-i18n-mai

firefox-i18n-mk

firefox-i18n-ml

firefox-i18n-mr

firefox-i18n-nb-no

firefox-i18n-nl

firefox-i18n-nn-no

firefox-i18n-nso

firefox-i18n-or

firefox-i18n-pa-in

firefox-i18n-pl

firefox-i18n-pt-br

firefox-i18n-pt-pt

firefox-i18n-rm

firefox-i18n-ro

firefox-i18n-ru

firefox-i18n-si

firefox-i18n-sk

firefox-i18n-sl

firefox-i18n-son

firefox-i18n-sq

firefox-i18n-sr

firefox-i18n-sv-se

firefox-i18n-ta

firefox-i18n-ta-lk

firefox-i18n-te

firefox-i18n-th

firefox-i18n-tr

firefox-i18n-uk

firefox-i18n-vi

firefox-i18n-zh-cn

firefox-i18n-zh-tw

firefox-i18n-zu

firefox-noscript

firefox-spell-pt-br

firefox-spell-ru

flashplugin

fmodex

font-mathematica

foomatic-db-nonfree

freepascal

frogatto

frogatto-data

gsopcast

handbrake

hplip-plugin

ipw2100-fw

ipw2200-fw

isdn4k-utils

iwlwifi-1000-ucode

iwlwifi-3945-ucode

iwlwifi-4965-ucode

iwlwifi-5000-ucode

iwlwifi-5150-ucode

iwlwifi-6000-ucode

java-sun

jdk

jdk6

jre

jre6

kdebase-konqueror

kdenetwork-kopete

kernel26-firmware

krusader

lha

lib32-libflashsupport

lib32-mesa-demos

lib32-nvidia-utils

libcl

libflashsupport

linux-firmware

mac

madwifi

madwifi-utils

martian

martian-utils

mednafen

microcode_ctl

mod_fastcgi

monaco-linux-font

moonlight

mp32ogg

mupen64plus

ndiswrapper

ndiswrapper-lts

ndiswrapper-utils

nestopia

netperf

nouveau-drm-lts

nouveau-firmware

nppangband

nvidia

nvidia-173xx

nvidia-173xx-utils

nvidia-96xx

nvidia-96xx-utils

nvidia-cg-toolkit

nvidia-lts

nvidia-utils

nxclient

ogre

opencl-nvidia

openttd-opensfx

opera

paintown

pcsxr

povray

poweriso

profont

pypy

qingy-theme-arch

qsopcast

qstat

r8168

rt2870usb-fw

rt2x00-rt61-fw

rt2x00-rt71w-fw

rt3562sta

sane-gt68xx-firmware

sauerbraten

sauerbraten-data

screenlets

sdlmame

sfarkxtc

skype

skype-call-recorder

skype-oss

skype-staticqt

slim-themes

slmodem

snes9x

sopcast

speedtouch

sqlite3-doc

syslog-ng

tarsnap

tiacx

tiacx-firmware

tiacx-lts

ttf-hannom

ttf-ms-fonts

ufoai

ufoai-data

unetbootin

urbanterror

urbanterror-data

vbaexpress

virtualbox-additions

virtualbox-additions-modules

visualboyadvance

warsow-data

winetricks

xdm-archlinux

xf86-input-vmmouse

xf86-video-vmware

xorg-xlsfonts

xpdf-chinese-simplified

xpdf-chinese-traditional

xpdf-japanese

xpdf-korean

xsnow

xv

zd1211-firmware

zsnes



Apart from non-free software the list also includes some packages that are build with optional non-free dependencies/



Note, that non-free packages also include Mozilla Firefox. The home site of Parabola GNU/Linux gives the following explanation:



We recently added the Debian Iceweasel web-browser to the [libre] repo (actually “iceweasel-libre”), and encourage IceCat users to switch. For a long time our primary browser was GNU IceCat. Both are based on the Mozilla Firefox browser, which we don’t include because it recommends non-free addons, encourages the use of non-free Software as a service (Google SafeBrowsing), and has non-free trademark licensing.

After installing “gnome” and “gnome-extra” package groups (Arch’s analogues of gnome metapackage elsewhere) I got a fully function GNOME 3 environment. Though some stock Arch’s packages (cdrkit, file-roller, ghostscript, gstreamer0.10-bad, gstreamer0.10-bad-plugins, lame, python2 and sdl) got replaced with “libre” versions, I didn’t hit any functionality loss regarding my everyday tasks.

Documentation

Just like in Arch and most of other distributions, all the software comes with the manual pages one would generally expect, with some packages including the additional documentation in other formats. The online documentation of the Parabola is currently virtually non-existing: the sparse articles that mostly are just the stripped-down copies of the Arch Wiki content leave the impression that the distribution was first released earlier this morning. Though the Arch Wiki itself contains a lot of information that can be successfully reused in Parabola, I found no links there.

A simple example to illustrate my point: as the Arch-based system, Parabola includes the easy-to-use ABS package building system, that can be used to rebuild the packages with addition configuration options or add the software that is missing in stock repositories. The use (and even the availability!) of ABS is not covered in Parabola documentation at all! The instructions to use the Arch User Repository, containing a lot of additional software, are also not available. As I come from OpenBSD land, where everything is well documented and any answer can be found just after a couple of minutes reading of online FAQ and relevant manual pages, I find this lack of information pretty puzzling, specifically regarding the overall state of Linux-specific documentation.

Conclusion

The overall impression of the Parabola GNU/Linux user experience exactly matches the one of Arch: a system with easy and flexible installation and configuration process and good choice of free software packages. Though the lack of documentation spoils the user experience, the Arch Linux resources can be used to further configure and extend the distribution.

If my hardware would allow, I would probably stick with Parabola. How about you?