gnu linux-librelxoliva/fsfla/linux-libre.en.pdfgnu linux-libre and the prisoners’ dilemmaalexandre...
TRANSCRIPT
![Page 1: GNU Linux-librelxoliva/fsfla/Linux-libre.en.pdfGNU Linux-libre and the prisoners’ dilemmaAlexandre Oliva3 History 1983GNU 1991Linux (non-Free) 1992Linux (GNU GPLv2), Yggdrasil Linux/GNU/X](https://reader036.vdocuments.us/reader036/viewer/2022081612/5f35ad0d66b31e1b843db385/html5/thumbnails/1.jpg)
1
GNU Linux-libreand the prisoners’ dilemma
http://linux-libre.fsfla.org/
Alexandre Oliva <[email protected]> Twister, Pump.io: @lxoliva
http://www.fsfla.org/~lxoliva/
Copyright 2009-2015 FSFLA (last changed November 2015)
This work is licensed under the Creative Commons BY-SA 4.0 International License.
http://www.fsfla.org/svn/fsfla/site/blogs/lxo/pres/linux-libre/
http://www.fsfla.org/blogs/lxo/pub/linux-libre
![Page 2: GNU Linux-librelxoliva/fsfla/Linux-libre.en.pdfGNU Linux-libre and the prisoners’ dilemmaAlexandre Oliva3 History 1983GNU 1991Linux (non-Free) 1992Linux (GNU GPLv2), Yggdrasil Linux/GNU/X](https://reader036.vdocuments.us/reader036/viewer/2022081612/5f35ad0d66b31e1b843db385/html5/thumbnails/2.jpg)
GNU Linux-libre and the prisoners’ dilemma Alexandre Oliva 2
Summary
• History
• “Be Free!” campaign
• Liberating Linux (again)
• Next steps
• Adoption
• Challenges
![Page 3: GNU Linux-librelxoliva/fsfla/Linux-libre.en.pdfGNU Linux-libre and the prisoners’ dilemmaAlexandre Oliva3 History 1983GNU 1991Linux (non-Free) 1992Linux (GNU GPLv2), Yggdrasil Linux/GNU/X](https://reader036.vdocuments.us/reader036/viewer/2022081612/5f35ad0d66b31e1b843db385/html5/thumbnails/3.jpg)
GNU Linux-libre and the prisoners’ dilemma Alexandre Oliva 3
History1983 GNU
1991 Linux (non-Free)
1992 Linux (GNU GPLv2), Yggdrasil Linux/GNU/X
1996 Blobs in Linux (non-Free again)
2006 gNewSense: find-firmware and gen-kernel
2007 BLAG: deblob and Linux-libre
2008 FSFLA: deblob-check
2012 GNU Linux-libre
![Page 4: GNU Linux-librelxoliva/fsfla/Linux-libre.en.pdfGNU Linux-libre and the prisoners’ dilemmaAlexandre Oliva3 History 1983GNU 1991Linux (non-Free) 1992Linux (GNU GPLv2), Yggdrasil Linux/GNU/X](https://reader036.vdocuments.us/reader036/viewer/2022081612/5f35ad0d66b31e1b843db385/html5/thumbnails/4.jpg)
GNU Linux-libre and the prisoners’ dilemma Alexandre Oliva 4
Be Free!
• Promoting Free Software?
• Promoting Software Freedom!
• Social responsibility
You must be the change you wish to see in the world.
Mahatma Mohandas Karamchand Gandhi
The more people resist [non-Free Software],
the more people will be Free, and
the more people will be free to be Free.
Free Software Foundation Latin America
http://fsfla.org/se-libre/
![Page 5: GNU Linux-librelxoliva/fsfla/Linux-libre.en.pdfGNU Linux-libre and the prisoners’ dilemmaAlexandre Oliva3 History 1983GNU 1991Linux (non-Free) 1992Linux (GNU GPLv2), Yggdrasil Linux/GNU/X](https://reader036.vdocuments.us/reader036/viewer/2022081612/5f35ad0d66b31e1b843db385/html5/thumbnails/5.jpg)
GNU Linux-libre and the prisoners’ dilemma Alexandre Oliva 5
But how could we “Be Free”?
• GNU et al are Free, but Linux isn’t!
• Code without sources, various licenses
This [GPLed] file contains firmware data derived from proprietary un-
published source code, Copyright (c) 2004, 2005, 2006, 2007 [vendor]
Permission is hereby granted for the distribution of this firmware data in
hexadecimal or equivalent format, [...]
Network driver, 100+Kb of actual binary executable code
Notwithstanding the [GPLv2 terms] above, under no circumstances may
you combine this software in any way with any other [vendor] software
provided under a license other than the GPL, [...]
2008’s network driver from the same vendor, 300Kb “data”
![Page 6: GNU Linux-librelxoliva/fsfla/Linux-libre.en.pdfGNU Linux-libre and the prisoners’ dilemmaAlexandre Oliva3 History 1983GNU 1991Linux (non-Free) 1992Linux (GNU GPLv2), Yggdrasil Linux/GNU/X](https://reader036.vdocuments.us/reader036/viewer/2022081612/5f35ad0d66b31e1b843db385/html5/thumbnails/6.jpg)
GNU Linux-libre and the prisoners’ dilemma Alexandre Oliva 6
Liberating Linux
• Clean up all that doesn’t serve (the user):
– Sourceless code
– Incompatibly-licensed portions
– Requests for non-Free Software
– Documentation that recommends it
– Incomprehensible code/data?
• “Holy” Free systems
![Page 7: GNU Linux-librelxoliva/fsfla/Linux-libre.en.pdfGNU Linux-libre and the prisoners’ dilemmaAlexandre Oliva3 History 1983GNU 1991Linux (non-Free) 1992Linux (GNU GPLv2), Yggdrasil Linux/GNU/X](https://reader036.vdocuments.us/reader036/viewer/2022081612/5f35ad0d66b31e1b843db385/html5/thumbnails/7.jpg)
GNU Linux-libre and the prisoners’ dilemma Alexandre Oliva 7
Liberating Linux
• Shell scripts deblob-*
• -main: Untar, deblob-4.*, tar, xdelta, gpg
• -4.*: deblob-check -d known files, adjust
• -check: hunts and kills blobs
– Source files, patches and tarballs
– Heuristically recognize suspected blobs
– Leave alone known false positives
– Recognize known unsuitable sequences
![Page 8: GNU Linux-librelxoliva/fsfla/Linux-libre.en.pdfGNU Linux-libre and the prisoners’ dilemmaAlexandre Oliva3 History 1983GNU 1991Linux (non-Free) 1992Linux (GNU GPLv2), Yggdrasil Linux/GNU/X](https://reader036.vdocuments.us/reader036/viewer/2022081612/5f35ad0d66b31e1b843db385/html5/thumbnails/8.jpg)
GNU Linux-libre and the prisoners’ dilemma Alexandre Oliva 8
Next steps
• Integrate in deblob-check:
– Generic substitutions
– List of files to clean
• Compatible but clean git history
• Support dynamically loading blobs
– But not inducing their use!
– Unidirectional cryptographic hashes?
Help? <[email protected]>
![Page 9: GNU Linux-librelxoliva/fsfla/Linux-libre.en.pdfGNU Linux-libre and the prisoners’ dilemmaAlexandre Oliva3 History 1983GNU 1991Linux (non-Free) 1992Linux (GNU GPLv2), Yggdrasil Linux/GNU/X](https://reader036.vdocuments.us/reader036/viewer/2022081612/5f35ad0d66b31e1b843db385/html5/thumbnails/9.jpg)
GNU Linux-libre and the prisoners’ dilemma Alexandre Oliva 9
I want GNU Linux-libre!
• Source tarballs tracking upstream Linux
– linux-libre-4.*-gnu*.tar.lz
• Binary builds
– Freesh, Freeloong, Freed-ora (BLAG)
– LibrePlanet, rt, Freedom Shoppe
– DeCentOS! Huru-buntu? Freed-ebian?
– Several distros (next page)
Help? <[email protected]>
![Page 10: GNU Linux-librelxoliva/fsfla/Linux-libre.en.pdfGNU Linux-libre and the prisoners’ dilemmaAlexandre Oliva3 History 1983GNU 1991Linux (non-Free) 1992Linux (GNU GPLv2), Yggdrasil Linux/GNU/X](https://reader036.vdocuments.us/reader036/viewer/2022081612/5f35ad0d66b31e1b843db385/html5/thumbnails/10.jpg)
GNU Linux-libre and the prisoners’ dilemma Alexandre Oliva 10
Adoption
• gNewSense, BLAG, FREEEEE
• Trisquel, Venenux, Dragora GNU/Linux
• Parabola, Dyne:bolic, gnu.org/distros
• VegnuX NeonatoX, ConnochaetOS
• Kongoni, Tlamaki, RMS, Amagi
• Ututo, Musix GNU+Linux
• Gentoo, Arch, Ubuntu, Debian?, you?
![Page 11: GNU Linux-librelxoliva/fsfla/Linux-libre.en.pdfGNU Linux-libre and the prisoners’ dilemmaAlexandre Oliva3 History 1983GNU 1991Linux (non-Free) 1992Linux (GNU GPLv2), Yggdrasil Linux/GNU/X](https://reader036.vdocuments.us/reader036/viewer/2022081612/5f35ad0d66b31e1b843db385/html5/thumbnails/11.jpg)
GNU Linux-libre and the prisoners’ dilemma Alexandre Oliva 11
Challenges
• Distros want/need popularity
• Blobs attract more users?
• Incentive to betray users, weaken communities
• Prisoners’ dilemma, iterated
• Defection feeds the aggressors
• Tragedy of the commons
![Page 12: GNU Linux-librelxoliva/fsfla/Linux-libre.en.pdfGNU Linux-libre and the prisoners’ dilemmaAlexandre Oliva3 History 1983GNU 1991Linux (non-Free) 1992Linux (GNU GPLv2), Yggdrasil Linux/GNU/X](https://reader036.vdocuments.us/reader036/viewer/2022081612/5f35ad0d66b31e1b843db385/html5/thumbnails/12.jpg)
GNU Linux-libre and the prisoners’ dilemma Alexandre Oliva 12
How can we change this picture?
• Break the myth of breakage
• Lead by example, “Be Free!”
• Educate users, to shift the incentives
• Seek credible commitment among distros
• Take it upstream, uphill?
Suggestions?
![Page 13: GNU Linux-librelxoliva/fsfla/Linux-libre.en.pdfGNU Linux-libre and the prisoners’ dilemmaAlexandre Oliva3 History 1983GNU 1991Linux (non-Free) 1992Linux (GNU GPLv2), Yggdrasil Linux/GNU/X](https://reader036.vdocuments.us/reader036/viewer/2022081612/5f35ad0d66b31e1b843db385/html5/thumbnails/13.jpg)
GNU Linux-libre and the prisoners’ dilemma Alexandre Oliva 13
Thank you!
Twister, Pump.io: @lxoliva
http://linux-libre.fsfla.org/
irc://irc.gnu.org/#linux-libre