‘People world-wide work together in Fedora to advance free software.’
This is the phrase-key from which this post borns.
What is the sense to consider Fedora as fully-free ?
Today our GNU/Linux distribution (like the others) contains more non-free software that expected: non-free-firmware, ‘code not redistributable’, proprietary software; it is certain that without many firmwares we cannot use our PC hardware, very inconvenient but necessary.
(Here GPLCompatible Licenses)
From Fedoraproject website:
Some applications, drivers, and hardware require binary-only firmware to function. Fedora permits inclusion of these files as long as they meet the following requirements:
The files are non-executable (note: this means that the files cannot run on their own, not that they are just chmod -x)
The files are not libraries.
The files are standalone, not embedded in executable or library code.
The files must be necessary for the functionality of open source code being included in Fedora.
The files are available under an acceptable firmware license, which is included with the files in the packaging.
The Fedora Project considers a firmware license acceptable if:
it allows some form of royalty-free use, subject to restrictions that the Fedora Project has determined are acceptable for firmware licenses (see below), and
it does not restrict redistribution in ways that would make a software license unacceptable under Fedora licensing guidelines, except by:
requiring that the firmware be redistributed only as incorporated in the redistributor’s product (or as a maintenance update for existing end users of the redistributor’s product), possibly limited further to those products of the redistributor that support or contain the hardware associated with the licensed firmware; and
requiring the redistributor to pass on or impose conditions on users that are no more restrictive than those authorized by this Fedora firmware licensing policy.
A non-exhaustive list of restrictions on use that Fedora considers acceptable for firmware licenses are:
any restrictions that are found in software licenses that are acceptable for Fedora;
prohibitions on modification;
prohibitions on reverse engineering, disassembly or decompilation;
restricting use to use in conjunction with the hardware associated with the firmware license.
If you are unsure whether or not your files meet these requirements, ask on fedora-devel-list, and we will examine them for you.
The License tag for any firmware that disallows modification must be set to: “Redistributable, no modification permitted”
Quote from Fedora-legal:
And Fedoraproject encourages consumers to make intelligent and thoughful decisions about the hardware they purchase, and to choose hardware which does not depend on proprietary device drivers or binary-only firmware … Since the beginning of the PC era, hardware devices shipped with firmware, written onto flash chips physically attached to those hardware devices. Without these low-level instructions, these devices would not function.
Using proprietary tools/applications (Skype, Adobe FlashPlayer/Reader, Microsoft fonts, …) or driver (nVidia/ATI driver) is a personal issue dependent from individual needs, professional needs, or convenience.
I’ve resolved of use only free software.
What can we do ?
Provide yourself of the right hardware.
FSF provides a list of devices supported by free software; is very important to consult list or update it in way of have not any problem with driver/firmware.
Things to do before (starting from Fedora installation)(Doing as below many devices couldn’t work)
- Remove all proprietary video drivers ensuring yourself which video device works fine with free-driver
- Remove all proprietary plugins (Adobe FlashPlayer, Java, …)
- Remove all non-free driver types (by $rpm -q –info or $yum info command is possible verify licenses)
- Remove all firmware (*-firmware packages)
- If present, remove all packages from RPMFusion-nonfree
- Disable or remove RPMFusion-nonfree
Take Linux-libre kernel fully-free
Linux-libre is a project to maintain and publish 100% Free distributions of Linux, suitable for use in Free System Distributions, removing software that is included without source code, with obfuscated or obscured source code, under non-Free Software licenses, that do not permit you to change the software so that it does what you wish, and that induces or requires you to install additional pieces of non-Free Software.
# rpm --import http://linux-libre.fsfla.org/pub/linux-libre/SIGNING-KEY.linux-libre
# yum localinstall rpm -i http://linux-libre.fsfla.org/pub/linux-libre/freed-ora/freed-ora-release.noarch.rpm
Remove the older kernel (by default yum installs no more of three kernel) and packages linked to it.
# yum install kernel-libre kernel-libre-firmware
And now ?
Probably the most part of your devices doesn’t work (if not supported by free-firmware) because its firmwares are not available.