Introduction
Having all the hardware of a given computer being able to work with only free software is not enough as you also need to be able to run an FSDG compliant distribution on that computer.
This article is meant to summarize the hardware requirement of FSDG compliant distributions.
General purpose GNU/Linux distributions
General information
Distribution
|
Audience
|
Release type
|
GuixSD
|
Technical users with good command line knowledge (or willing to learn it)
|
?
|
Hyperbola
|
Technical users with good command line knowledge (or willing to learn it)
|
Stable releases
|
Parabola
|
Technical users with good command line knowledge (or willing to learn it)
|
Rolling releases
|
PureOS
|
Everybody
|
Rolling release
|
Trisquel 8
|
Everybody
|
Stable releases
|
Architectures support
Distribution or software
|
x86 32bit
|
x86 64bit
|
ARM 32bit
|
ARM 64bit
|
PowerPC 64bit little endian
|
GuixSD
|
i686
|
Yes
|
armhf
|
Yes
|
?
|
Hyperbola
|
i686
|
Yes
|
No
|
No
|
No
|
Parabola
|
i686
|
Yes
|
armv7h
|
No
|
Unfinished/WIP?
|
PureOS
|
No
|
Yes
|
No
|
can be installed with debootstrap
|
No
|
Trisquel
|
i686
|
Yes
|
No
|
No
|
No
|
Small distributions
Distribution or software
|
Usage
|
Audience
|
Release type
|
libreCMC
|
- WiFi access point and small network equipements
|
|
Stable releases
|
ProteanOS
|
|
|
|
Replicant
|
- Android distribution for smartphones and tablets
|
Extremely basic command line knowledge required for the installation
|
Stable releases
|
Architectures support
Distribution or software
|
x86 32bit
|
x86 64bit
|
ARM 32bit
|
ARM 64bit
|
MIPS
|
libreCMC
|
Requires to build from source
|
Requires to build from source
|
Requires to build from source
|
No
|
Yes
|
ProteanOS
|
?
|
?
|
?
|
?
|
?
|
Replicant
|
No
|
No
|
Yes
|
No
|
No
|
Adding support for a device
Distribution or software
|
Adding support for a device
|
General purpose GNU/Linux distributions
|
- You may need to package device specific software like bootloaders for non-x86 devices
- You may need to update or write installation instructions for the device if the existing ones do not support the device
- You need to upstream the code that makes the hardware work if it's not already done
|
libreCMC
|
|
ProteanOS
|
|
Replicant
|
- You need to add a vendor/device/the-vendor/the-device repository with the hardware configuration
- You may need to package the code that makes the hardware work if it's not already done
|
TODO