Linux-libre is a modified version of the
Linux kernel
The Linux kernel is a free and open-source, monolithic, modular, multitasking, Unix-like operating system kernel. It was originally authored in 1991 by Linus Torvalds for his i386-based PC, and it was soon adopted as the kernel for the GNU ope ...
that contains no
binary blobs
In the context of free and open-source software, proprietary software only available as a binary executable is referred to as a blob or binary blob. The term usually refers to a device driver module loaded into the kernel of an open-source oper ...
,
obfuscated code
In software development, obfuscation is the act of creating source or machine code that is difficult for humans or computers to understand. Like obfuscation in natural language, it may use needlessly roundabout expressions to compose statement ...
, or code released under
proprietary license
Proprietary software is computer software, software that is deemed within the free and open-source software to be non-free because its creator, publisher, or other rightsholder or rightsholder partner exercises a legal monopoly afforded by modern ...
s. In the Linux kernel, they are mostly used for proprietary
firmware
In computing, firmware is a specific class of computer software that provides the low-level control for a device's specific hardware. Firmware, such as the BIOS of a personal computer, may contain basic functions of a device, and may provide h ...
images. While generally redistributable, binary blobs do not give the user the freedom to audit, modify, or, consequently, redistribute their modified versions. The
GNU Project
The GNU Project () is a free software, mass collaboration project announced by Richard Stallman on September 27, 1983. Its goal is to give computer users freedom and control in their use of their computers and computing devices by collaborati ...
keeps Linux-libre in synchronization with the
mainline Linux kernel
The Linux kernel is a free and open-source, monolithic, modular, multitasking, Unix-like operating system kernel. It was originally authored in 1991 by Linus Torvalds for his i386-based PC, and it was soon adopted as the kernel for the GNU op ...
.
History
The
Linux
Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which ...
kernel started to include binary blobs in 1996. The work to clear out the binary blobs began in 2006 with
gNewSense
gNewSense was a Linux distribution, active from 2006 to 2016. It was based on Debian, and developed with sponsorship from the Free Software Foundation. Its goal was user-friendliness, but with all proprietary (e.g. binary blobs) and non-free ...
's find-firmware and gen-kernel. This work was taken further by the
BLAG Linux distribution in 2007 when deblob and Linux-libre was born.
[jebba]
BLAG :: View topic - Linux Libre
BLAG forums, 2008.
Linux-libre was first released by the
Free Software Foundation Latin America
Free Software Foundation Latin America (FSFLA) is the Latin American sister organisation of the Free Software Foundation. It is the fourth sister organisation of FSF, after Free Software Foundation Europe and Free Software Foundation India. It wa ...
(FSFLA), then endorsed by the
Free Software Foundation
The Free Software Foundation (FSF) is a 501(c)#501(c)(3), 501(c)(3) non-profit organization founded by Richard Stallman on October 4, 1985, to support the free software movement, with the organization's preference for software being distributed ...
(FSF) as a valuable component for the totally free Linux distributions. It became a GNU package in March 2012.
Alexandre Oliva is the project maintainer.
Proprietary firmware removal
Methods
The removal process is achieved by using a
script
Script may refer to:
Writing systems
* Script, a distinctive writing system, based on a repertoire of specific elements or symbols, or that repertoire
* Script (styles of handwriting)
** Script typeface, a typeface with characteristics of handw ...
called ''deblob-main''. This script is inspired by the one used for
gNewSense
gNewSense was a Linux distribution, active from 2006 to 2016. It was based on Debian, and developed with sponsorship from the Free Software Foundation. Its goal was user-friendliness, but with all proprietary (e.g. binary blobs) and non-free ...
. Jeff Moe made subsequent modifications to meet certain requirements for its use with the
BLAG Linux and GNU distribution. There is another script called ''deblob-check'', which is used to check if a kernel source file, a
patch
Patch or Patches may refer to:
Arts, entertainment and media
* Patch Johnson, a fictional character from ''Days of Our Lives''
* Patch (''My Little Pony''), a toy
* "Patches" (Dickey Lee song), 1962
* "Patches" (Chairmen of the Board song) ...
or a compressed sources file still contains software which is suspected of being proprietary.
Benefits
Aside from the primary intended effect of running a system with only
free software
Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, no ...
, the practical consequences of removing device firmware that a user is not allowed to study or modify has both positive and negative effects.
Removal of device firmware can be considered an advantage for security and stability, when the firmware cannot be audited for bugs, for security problems, and for malicious operations such as
backdoors, or when the firmware cannot be fixed by the Linux kernel maintainers themselves, even if they know of problems. It is possible for the entire system to be compromised by a malicious firmware, and without the ability to perform a security audit on manufacturer-provided firmware, even an innocent bug could undermine the safety of the running system.
Hardware support
Removing proprietary firmware from the kernel will cause loss of functionality of certain hardware that does not have a free software replacement available.
This affects certain
sound
In physics, sound is a vibration that propagates as an acoustic wave, through a transmission medium such as a gas, liquid or solid.
In human physiology and psychology, sound is the ''reception'' of such waves and their ''perception'' by the ...
,
video
Video is an electronic medium for the recording, copying, playback, broadcasting, and display of moving visual media. Video was first developed for mechanical television systems, which were quickly replaced by cathode-ray tube (CRT) syste ...
,
TV tuner
A tuner is a subsystem that receives radio frequency (RF) transmissions, such as FM broadcasting, and converts the selected carrier frequency and its associated bandwidth into a fixed frequency that is suitable for further processing, usually be ...
, and
network
Network, networking and networked may refer to:
Science and technology
* Network theory, the study of graphs as a representation of relations between discrete objects
* Network science, an academic field that studies complex networks
Mathematics
...
cards, especially in the case of recent Intel Wi-Fi cards and recent
nVidia
Nvidia CorporationOfficially written as NVIDIA and stylized in its logo as VIDIA with the lowercase "n" the same height as the uppercase "VIDIA"; formerly stylized as VIDIA with a large italicized lowercase "n" on products from the mid 1990s to ...
graphics cards, as well as some other devices. When possible, free software replacement firmware is provided as a substitute,
such as the openfwwf for b43, carl9170 and ath9k_htc
wireless card drivers. Reviewer Ramces Red summarized the issue with Linux-Libre, writing, "it does not always have the best hardware support."
Microcode
Linux-libre does not suggest the user install CPU
microcode
In processor design, microcode (μcode) is a technique that interposes a layer of computer organization between the central processing unit (CPU) hardware and the programmer-visible instruction set architecture of a computer. Microcode is a laye ...
update bundles, since the code is proprietary. Microcode update bundles have been used in the Linux kernel version, among other things, to mitigate
hardware vulnerabilities.
Availability
The source code and
precompiled packages of the deblobbed Linux kernel are available directly from the distributions which use the Linux-libre scripts. Freed-ora is a subproject which prepares and maintains
RPM
Revolutions per minute (abbreviated rpm, RPM, rev/min, r/min, or with the notation min−1) is a unit of rotational speed or rotational frequency for rotating machines.
Standards
ISO 80000-3:2019 defines a unit of rotation as the dimensionl ...
packages based on
Fedora
A fedora () is a hat with a soft brim and indented crown.Kilgour, Ruth Edwards (1958). ''A Pageant of Hats Ancient and Modern''. R. M. McBride Company. It is typically creased lengthwise down the crown and "pinched" near the front on both sides ...
. There are also precompiled packages for
Debian
Debian (), also known as Debian GNU/Linux, is a Linux distribution composed of free and open-source software, developed by the community-supported Debian Project, which was established by Ian Murdock on August 16, 1993. The first version of D ...
and derived distributions such as
Ubuntu
Ubuntu ( ) is a Linux distribution based on Debian and composed mostly of free and open-source software. Ubuntu is officially released in three editions: ''Desktop'', ''Server'', and ''Core'' for Internet of things devices and robots. All the ...
.
Distributions
Distributions in which Linux-libre is the default kernel
*
Dragora GNU/Linux-Libre
*
dyne:bolic
*
GNU Guix System
GNU Guix System or Guix System (previously ''GuixSD'') is a rolling release, free and open source Linux distribution built around the GNU Guix package manager. It enables a declarative operating system configuration and allows reliable syst ...
*
Parabola GNU/Linux-libre
Parabola GNU/Linux-libre is an operating system for the i686, x86-64 and ARMv7 architectures. It is based on many of the packages from Arch Linux and Arch Linux ARM, but distinguishes from the former by offering only free software. It includes th ...
Considered small distributions
*
libreCMC
LibreCMC is a Linux-libre distribution for computers with minimal resources, such as the Ben NanoNote, ath9k-based Wi-Fi routers, and other hardware with emphasis on free software. Based on OpenWrt, the project's goal is to aim for compliance wit ...
ProteanOS(If the underlying hardware is not supported, it must be ported.)
Historical
*
Hyperbola GNU/Linux-libre
*
Musix GNU+Linux
Distributions that compile a free Linux kernel
These distros do not use the packaged Linux-libre but instead completely remove binary blobs from the mainline Linux kernel. The source is then compiled and the resulting free Linux kernel is used by default in these systems:
*
Debian
Debian (), also known as Debian GNU/Linux, is a Linux distribution composed of free and open-source software, developed by the community-supported Debian Project, which was established by Ian Murdock on August 16, 1993. The first version of D ...
:*
PureOS
PureOS is a Linux distribution focusing on privacy and security, using the GNOME desktop environment. It is maintained by Purism for use in the company's Librem laptop computers as well as the Librem 5 smartphone.
PureOS is designed to include ...
*
Trisquel
Trisquel (full name Trisquel GNU/Linux) is a computer operating system, a Linux distribution, derived from another distribution, Ubuntu. The project aims for a fully free software system without proprietary software or firmware and uses a version ...
(The Linux-libre deblob script is used during its development).
:*
Uruk GNU/Linux
*
Ututo
Ututo is a Linux distribution consisting entirely of free software. The distribution is named for a variety of gecko found in northern Argentina.
Ututo was the first fully free Linux-based system recognized by the GNU Project. The founder of ...
Historical
*
BLAG
*
gNewSense
gNewSense was a Linux distribution, active from 2006 to 2016. It was based on Debian, and developed with sponsorship from the Free Software Foundation. Its goal was user-friendliness, but with all proprietary (e.g. binary blobs) and non-free ...
(It was based on Debian.)
*
Canaima (It was based on Debian.)
Linux-libre as an alternative kernel
Distributions in which Linux is the default kernel used and which propose Linux-libre as an alternative kernel:
*
Arch Linux
Arch Linux () is an independently developed, x86-64 general-purpose Linux distribution that strives to provide the latest stable versions of most software by following a Rolling release, rolling-release model. The default installation is a minim ...
*
Fedora
A fedora () is a hat with a soft brim and indented crown.Kilgour, Ruth Edwards (1958). ''A Pageant of Hats Ancient and Modern''. R. M. McBride Company. It is typically creased lengthwise down the crown and "pinched" near the front on both sides ...
*
Gentoo Linux
Gentoo Linux (pronounced ) is a Linux distribution built using the Portage package management system. Unlike a binary software distribution, the source code is compiled locally according to the user's preferences and is often optimized for the ...
* Mandriva-derived (PCLinuxOS, Mageia, OpenMandrivaLx, ROSA Fresh)
*
openSUSE
openSUSE () is a free and open-source software, free and open source RPM Package Manager, RPM-based Linux distribution developed by the openSUSE project.
The initial release of the community project was a beta version of SUSE Linux 10.0.
Addi ...
Tumbleweed (via OpenBuildService)
*
Slackware
Slackware is a Linux distribution created by Patrick Volkerding in 1993. Originally based on Softlanding Linux System, Slackware has been the basis for many other Linux distributions, most notably the first versions of SUSE Linux distributions ...
See also
*
GNU Hurd
GNU Hurd is a collection of microkernel servers written as part of GNU, for the GNU Mach microkernel. It has been under development since 1990 by the GNU Project of the Free Software Foundation, designed as a replacement for the Unix kernel, and ...
, an operating system kernel developed by GNU, which follows the microkernel paradigm
*
Libreboot
Libreboot (briefly known as GNU Libreboot) is a free software project based on coreboot, aimed at replacing the proprietary BIOS firmware contained by most computers. Libreboot is a lightweight system designed to perform only the minimum number ...
*
LibrePlanet
LibrePlanet (literally, "Free Planet") is a community project created and supported by the Free Software Foundation. Its objective is the promotion of free software around the world by bringing every year an international conference to local comm ...
*
List of computing mascots
This is a list of computing mascots. A mascot is any person, animal, or object thought to bring luck, or anything used to represent a group with a common public identity. In case of computing mascots, they either represent software, hardware, or an ...
*
Open-source hardware
Open-source hardware (OSH) consists of physical artifacts of technology designed and offered by the open-design movement. Both free and open-source software (FOSS) and open-source hardware are created by this open-source culture movement and a ...
*
:Computing mascots
References
External links
*
{{GNU
2008 software
Free software programmed in C
GNU Project software
Linux kernel
Operating system kernels