FSFLA

Sister FSFs

Links

GNU Linux-libre, Free as in Freedo

Linux, the kernel developed and distributed by Linus Torvalds et al, contains non-Free Software, i.e., software that does not respect your essential freedoms, and it induces you to install additional non-Free Software that it doesn't contain.

GNU 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.

Our releases can be easily adopted by 100% Free GNU/Linux distros, as well as by their users, by distros that want to enable their users to choose freedom, and by users of those that don't.

Although UTUTO-e was the first GNU/Linux distro to remove non-Free portions of Linux, GNU Linux-libre follows and improves on the practices established by gNewSense and BLAG.

Downloads

releases: source tarballs tracking upstream releases, from which we removed blobs and code that induces users to install non-Free Software.

SIGNING-KEY: The GnuPG keys used to sign source tarballs, patches, Freed-ora packages, and the keys that sign other repositories. For each repository R, there's a corresponding SIGNING-KEY.R in the download tree.

freesh: .debs for various architectures of the latest sources available. Read more.

News

2015-06-22 - GNU Linux-libre 4.1-gnu

2015-05-05 - lemote/gnewsense is now freeloong

The distribution of GNU Linux-libre .debs for Lemote Yeeloong
notebooks running gNewSense/mipsel, that didn't have a name and was
identified by the lemote/gnewsense directory, is now called freeloong.
To use them, add this line to your sources.list:

deb http://linux-libre.fsfla.org/pub/linux-libre/freeloong metad main

2015-04-27 - DeCentOS RPMs

Robert Musial has managed to build a deblobbed kernel based on CentOS
7's blob-ridden one. It's available from his site.

2015-04-12 - GNU Linux-libre 4.0-gnu

Fixed --force handling in deblob-4.0. Cosmetically deblobbed cyapa
(the default blob name is unused: loading is always user-initiated,
from user-supplied file, so it's fine) and ssp_sensors (blob names
were cleaned up, but no loading machinery was encountered). Updated
deblobbing and checking of nouveau. Dropped tlg2300.

Non-functional changes: standardized formatting of clean_kconfig and
clean_mk commands in deblob-3.19; check that the Kconfig file given
to clean_kconfig contains the named config tag, and fixed the various
typos it caught. Improved EXTRAVERSION -gnuification to ensure there
is a blank after "=".

2015-01-28 - Deblob scripts now have signatures, branches and tags

The deblob scripts are now signed, in past and future source releases.
Scripts published as part of past source releases were verified
against the history stored in the version control repository.

In order to make this easier, and to make it easier for users to
select stable sets of deblob scripts that work together, we now have
per-major-release branches holding the latest version (and past
history) of deblobbing scripts for that release. The first release
coming out after each change to such a branch also gets a tag, so that
every one of our source releases can be easily mapped and compared to
a tag.

See also the README file and the branches and tags subdirs within the
releases
tree in our version control repository.

Freed-ora 8-1 RPM packages were released with an updated
mirror list in the yum repository configuration files in the
freed-ora-release package, and many additions to the freed-ora-freedom
to help you keep your system Free from numerous non-Free kernel
sub-packages and non-Free firmware and microcode packages, included in
the upstream GNU/Linux distribution, but that were not yet recognized
by the previous Freed-ora build. The packages are available in the
testing repositories for F19, F20, F21 and F22.

2014-08-07 - GNU Linux-libre 3.16-gnu

Lots of new blobs and blob requests had to be removed for this
release: ast_dp501, radeon, drx39xyj, m88ds3103, si2168, s5k5baf,
iwlwifi, rsi_91x, rtl8192ee, rtl8723au, rtl8723be, rtl8821ae,
bt_nokia_h4p, mxuport, adau1761, and adau1781; dgap and sst-acpi are
back after rewrites that required new deblobbing patterns too.

2014-06-08 - GNU Linux-libre 3.15-gnu

Upstream dropped it913x and dgap drivers and added a few new blob
names and corresponding requests, all deblobbed in 3.15-gnu. Nouveau
and radeon also grew new longish sequences that turned out not to be
blobs, so those are explicitly retained.

Jan Prunk set up a new mirror. The
server is located in California, USA. Thanks!

2012-04-20 - real-time support in the rt apt repository

Juan Jacobo Nájera has built Linux-libre with real-time support for
quite a while, but he's now started uploading his 32- and 64-bit x86
binaries to an apt
repository on our servers. To get easy access to the packages, add
the following line to your sources.list:

deb http://linux-libre.fsfla.org/pub/linux-libre/rt squeeze main

2012-03-19 - 3.3-gnu: “3.3 as in freedom.freedom”

Linux-libre joins the GNU Project, becoming GNU Linux-libre. This
release, 3.3-gnu, marks the transition, although upcoming stable
releases based on earlier -libre releases may become -gnu releases as
well. Deblobbing scripts now support .gz, .lz and .xz compressed
inputs, in addition to .bz2 and uncompressed ones, and tarballs are
now named linux-libre--gnu.tar. Few deblobbing changes were
required for this release: deblobbing of drivers for arm imx, dib0700,
it913x, em28xx-dvb, brcmfmac, iwl3945, iwl4965, and rtl8192e needed
some adjusting, while wl12xx-sdio-test and snd-intel-sst are no longer
present, and sigmadsp code moved about in the tree.

2011-03-15 - gen5 - 2.6.38-libre

Nouveau requested blobs again, large ones this time; radeon required
more blobs for new cards; newly-added wl1273, rtl8192ce, can_softing,
and re-introduced dx_sep depended on blobs; bnx2 and bnx2x had updated
blobs as usual; r8169's blobs were moved out of the sources; dabusb,
vicam, wl1xx, serial_cs, icom, and serial_qe were moved about in the
tree; bcm_wimax and snd_intel_sst required deblobbing updates; 3c359
had its harmlessly-buggy cleaning-up fixed.

2011-01-09 - gen5 - Updated 2.6.27.36

The README blurb, the loading of PCMCIA CIS files and the fix for the
message that recommended the installation of non-Free Software were
all backported to the following releases: 2.6.36.3-libre1,
2.6.35.10-libre3, 2.6.34.8-libre2, 2.6.33.7-libre1, 2.6.32.28-libre2,
2.6.31.14-libre4, 2.6.30.10-libre3, 2.6.29.6-libre3, 2.6.28.10-libre5,
2.6.27.57-libre5, as well as their baselines 2.6.36-libre1,
2.6.35-libre3, 2.6.34-libre2, 2.6.33-libre1, 2.6.32-libre2,
2.6.31-libre4, 2.6.30-libre3, 2.6.29-libre3, 2.6.28-libre5,
2.6.27-libre5. The deblobbing scripts in 2.6.37-libre were updated
with cosmetic changes that did not change the output. Patch files
between base releases and from base to patch release are now
GPG-signed, compressed with both bzip2 and lzip. The tarballs for
older releases, containing the Free Bait freedom bug, were removed,
and the xdeltas and scripts moved to old/gen4.

2011-01-05 - gen5 - 2.6.37-libre

New README blurb about Linux-libre, re-enabled loading of PCMCIA CIS
files found to be available under Free with sources elsewhere,
adjusted Libertas drivers to accept user-specified firmware, fixed
error message that recommended the installation of non-Free Software,
removed the newly-introduced blobs from 5 new drivers, disabled
requests for blobs from 10 new drivers, updated the cleaning up of 5
drivers, removed the deblobbing of 1 blob-dependent and 1
blob-in-sources driver dropped from staging.

2010-11-07 - Linux-libre/planet .debs

Aurélien Desbrières's Linux-libre binaries are now available at an apt
repository on our servers and mirrors. To get easy access to them,
add the following line to your sources.list:

deb http://linux-libre.fsfla.org/pub/linux-libre/planet planet main

2010-10-21 - 2.6.36-libre

Deblobbed 2 new blob-dependent drivers, adjusted the deblobbing of 3
others, dropped deblobbing of nouveau, now blob-free, and of a dropped
driver. Read the
announcement.

2010-08-22 - 2.6.35-libre2

Fixed a deblobbing error in drivers/net/e100.c.

2010-08-03 - 2.6.35-libre1

Fixed a deblobbing error in drivers/media/video/s2255drv.c.

2010-08-02 - 2.6.35-libre, 2.6.34-libre1

Cleaned up 4 new blob-dependent drivers in 2.6.35, fixed a deblobbing
error that caused compile errors in r8192S_firmware.c in 2.6.34-libre.

2010-05-18 - 2.6.34-libre

Cleaned up 9 new blob-dependent drivers in 2.6.34, updated cleaning up
of a couple others.

2010-02-24 - 2.6.33-libre, generation 4

New, much faster deblob-check, based on Python, GNU awk, PERL or GNU
sed, at your choice. Updated for 2.6.33. Blobs are growing faster
than Linux. Read the
announcement.

2009-12-13 - Linux-libre for Lemote Yeeloong with Freedo

Linux-libre binaries (.deb)
for gNewSense metad/mipsel (for Lemote Yeeloong) are available.
Compared with the gNewSense binaries, they add a number of modules,
and display Freedo as the boot-time logo. Add this line to sources.list:

2009-12-10 - gen3 - 2.6.27-libre3

Released 2.6.27 baseline and 2.6.27.41 deblobbed with updated
deblob-check and deblob-2.6.27 scripts.

2009-12-08 - gen3 - 2.6.32-libre, 2.6.31-libre2, 2.6.30-libre1

Updated for 2.6.32, fixed deblobbing bugs (some cosmetic issues, some
compile errors in a few drivers in staging, such as ME4000, RT2670,
RT2680, and RT3070) in 2.6.31 and 2.6.30. Backported the newer
deblobbing of Radeon, R128, and BNX2X to 2.6.30. Untested backports
to earlier kernel releases are in the SVN repository.

2009-09-21 - gen3 - 2.6.31-libre1

Fixes deblobbing errors in usbdux staging drivers, reworks the
deblobbing of Radeon, R128 and MGA drivers, in preparation for removal
of the firmware from upstream, and improves operation with --force for
better operation with already-deblobbed kernels and other variants.

2009-09-12 - gen3 - 2.6.31-libre

It's out! 'nuff said.

2009-06-12 - gen3 - 2.6.30-libre

Broadcom b43 WiFi should now work with the Free reverse-engineered
firmware. Other than that,
this
release just updates to the deblobbing machinery to deal with all
the upstream shuffling and addition of non-Free firmware and of
dependencies on non-Free firmware.

2009-06-09 - gen3 - 2.6.29-libre1, 2.6.28-libre3 and 2.6.27-libre2

This release fixes regressions in e100 and radeon introduced in the
gen2 releases, and fixes a few deblobbing errors. Read the
announcement.

“Free as in Freedo” T-shirts are on the way

We're going to print T-shirts with Freedo. Check out the design and
colors
here.
Get them first at FISL 10.

2009-04-02 - gen2 - 2.6.27-libre1 released

This release makes the 2.6.27 series suitable for use in Free System
Distributions, after backporting and adjusting the clean-ups already
available in 2.6.28-libre2 and 2.6.29-libre. 2.6.27.21-libre1 is also
available.

2009-03-31 - gen2 - 2.6.28-libre2 and 2.6.29-libre released

The 2.6.28-libre2 release fixes a number of problems in 2.6.28-libre1:
some compile errors caused by deblobbing, a few missed non-Free
firmware names and references to non-Free firmware, and some shell
scripting portability issues. 2.6.28.9-libre2 is also available.

The 2.6.29-libre release uses the same deblobbing infrastructure as
2.6.28-libre2, but it's updated for 2.6.29, and adapted to deal with
the pieces of non-Free firmware and drivers that require external
non-Free firmware added to the upstream release.

This is the first release completely suitable for Free System
Distributions: not only does it remove non-Free Software (and brings
back some data tables that used to be removed in earlier release), it
also removes requests for and documentation that induced users to
install and use non-Free Software.

gNewSense ships Linux-libre kernels.
They used to be cleaned up with an older approach, but current
releases use current deblobbing technology. For Lemote Yeeloong
mipsel notebooks, see our repository.

Alexandre Oliva combined Freedo with GNU, creating the image at the
top of the page (vectorial). Binaries published
by the Linux-libre project are going to be configured to display this
logo at boot up. If you want to use it too, look for patches named
100gnu+freedo.patch, in directories named after Linux-libre builds
within SVN repository.
A few kernels used an older variant
(vectorial).

Guillaume
Pasquet drew Lux, the holy free penguin (thanks!), based on Larry
Ewing's original tux; both must be credited for this art work. Here's
a vectorial version.