- Your Comprehensive Guide to Exclusively GNU-Supported Free Software
- Understanding What "GNU Supported" Really Means
- Step 1: Start with a Fully Free GNU/Linux Distribution
- Step 2: Essential Free Software Replacements
- Step 3: Understanding the High Priority Projects
- Step 4: Advanced Tools for the Committed Free Software User
- Step 5: Finding More Software
- Step 6: Hardware Considerations
- Common Pitfalls and How to Avoid Them
- Your First Steps: A Practical Checklist
- Getting Help and Community
- Conclusion
Your Comprehensive Guide to Exclusively GNU-Supported Free Software
Welcome to the world of free software, where “free” refers to liberty, not price. This guide will help you transition to an exclusively free software environment endorsed by the GNU Project and the Free Software Foundation (FSF).
Understanding What “GNU Supported” Really Means
Before diving in, it’s crucial to understand that when we talk about “GNU-supported software,” we’re referring to software that respects your four essential freedoms:
- Freedom 0: Run the program as you wish, for any purpose
- Freedom 1: Study how the program works, and change it to do what you wish
- Freedom 2: Redistribute copies to help others
- Freedom 3: Distribute copies of your modified versions to others
The Free Software Directory is the authoritative source for vetted free software. It contains thousands of programs that have been checked for licensing compliance and technical functionality.
Step 1: Start with a Fully Free GNU/Linux Distribution
The most important decision you’ll make is choosing a distribution (distro) that is endorsed by the GNU Project. These distros follow the GNU Free System Distribution Guidelines (GNU FSDG), meaning they contain and only propose free software.
Recommended Free Distributions for PCs and Workstations
Here are the fully free distros you can install today:
| Distribution | Best For | Key Features |
|---|---|---|
| Trisquel GNU/Linux | Beginners & small businesses | Based on Ubuntu, user-friendly, excellent hardware support |
| PureOS | Privacy-focused users | Based on Debian, emphasis on security and convenience |
| Parabola GNU/Linux-libre | Arch Linux enthusiasts | Rolling release, simple package management |
| Guix System | Advanced users & developers | Functional package manager, reproducible environments |
| Dragora GNU/Linux-Libre | Minimalists | Independent distro, simplicity-focused |
| Hyperbola GNU/Linux-libre | Long-term stability | Based on Arch, LTS support |
| Ututo S | Historical significance | First fully free GNU/Linux system recognized by GNU |
Quick start: If you’re new to free software, start with Trisquel. It’s designed to be easy to use and works on most hardware.
Why These and Not Ubuntu/Fedora/Debian?
Popular distros like Ubuntu, Fedora, and even standard Debian include non-free firmware, drivers, and software repositories. The FSF maintains a page explaining why certain popular distros aren’t endorsed. To be truly free, you must avoid these.
Step 2: Essential Free Software Replacements
Once you have your free distro installed, you’ll need to know which applications to use. The Free Software Directory maintains a comprehensive collection of replacements for proprietary software.
Office & Productivity
| Task | Free Software | Replaces |
|---|---|---|
| Office suite | LibreOffice | Microsoft Office 365 |
| Desktop publishing | Scribus | Adobe InDesign |
| Diagramming | Dia | Microsoft Visio |
| Document viewer | Evince | Adobe Reader |
| Email client | Claws Mail | Outlook, Thunderbird* |
*Note: Thunderbird is not considered free software due to Mozilla’s trademark restrictions
Graphics & Media
| Task | Free Software | Replaces |
|---|---|---|
| Raster graphics | GIMP | Adobe Photoshop |
| Vector graphics | Inkscape | Adobe Illustrator |
| 3D modeling | Blender | Autodesk Maya, 3ds Max |
| Video editing | Kdenlive | Adobe Premiere |
| Audio editing | Audacity | Adobe Audition |
Internet & Communication
| Task | Free Software | Replaces |
|---|---|---|
| Web browser | GNU IceCat | Firefox*, Chrome |
| Instant messaging | Pidgin | WhatsApp, Telegram |
| VoIP/Video calls | Jami | Skype, Zoom |
| Decentralized social | Mastodon | Twitter/X |
| Media server | Jellyfin | Plex |
*Firefox is not free software due to trademark restrictions; IceCat is the freedom-respecting fork
Development & Technical
| Task | Free Software | Replaces |
|---|---|---|
| Text editor | GNU Emacs | Sublime Text, VS Code |
| Numerical computing | GNU Octave | MATLAB |
| Compiler | GCC | Various proprietary compilers |
| Version control | Git | Subversion, Perforce |
Step 3: Understanding the High Priority Projects
The FSF maintains a list of High Priority Projects - software areas where free software is critically needed. Supporting these projects helps advance software freedom:
High Priority Free Software Projects
| Project | Purpose | Why It’s a Priority |
|---|---|---|
| Jami | Distributed communication | Need for decentralized, encrypted calls |
| GNU Octave | Scientific computing | Replacement for MATLAB |
| GIMP | Image editing | Professional graphics without Adobe |
| OpenVPN | VPN client | Secure, free networking |
| LibreOffice | Office suite | Complete Microsoft Office replacement |
| GNU Privacy Guard | Encryption | Email and file security |
The full list includes 97 high-priority projects that need developers, testers, and users.
Step 4: Advanced Tools for the Committed Free Software User
GNU Guix: The Functional Package Manager
GNU Guix is more than just a package manager - it’s a complete approach to software management that guarantees reproducible environments.
Installation on an existing Linux system:
cd /tmp wget https://guix.gnu.org/install.sh -O guix-install.sh chmod +x guix-install.sh sudo ./guix-install.sh
Basic Guix commands:
# Update package definitions $ guix pull # Install a package $ guix install hello # Create a reproducible environment $ guix shell python -- python # Search for packages $ guix search libreoffice
Guix is particularly powerful for developers and scientists because it allows you to create isolated, reproducible environments that work identically across different machines.
Using Channels for Extended Software
Guix channels allow you to access specialized software. For scientific computing, you can add the Guix-Science channel:
;; In ~/.config/guix/channels.scm (append (list (channel (name 'guix-science) (url "https://codeberg.org/guix-science/guix-science.git"))) %default-channels)
Step 5: Finding More Software
The Free Software Directory
The Free Software Directory is your primary resource for finding free software. You can browse by category:
- Audio (377 packages)
- Business (536 packages)
- Chat (195 packages)
- Database (350 packages)
- Education (248 packages)
- Games (380 packages)
- Graphics (374 packages)
- Library (1,210 packages)
- Security (493 packages)
- Video (231 packages)
Pro tip: Use the search function and filter by license type to find software that meets your specific needs.
Checking Software Freedom
Before installing any software, verify its license. The FSF maintains a list of free software licenses. Safe licenses include:
- GNU General Public License (GPL)
- GNU Lesser General Public License (LGPL)
- GNU Affero General Public License (AGPL)
- BSD 3-Clause (with restrictions)
- MIT/Expat license
Step 6: Hardware Considerations
Free software only works fully with hardware that doesn’t require proprietary drivers or firmware. The FSF’s Respects Your Freedom (RYF) certification program certifies hardware that works with 100% free software.
Finding Compatible Hardware
- Check the h-node database for hardware compatibility
- Look for RYF-certified products
- Avoid hardware from manufacturers known for proprietary drivers (NVIDIA, Broadcom, some Intel WiFi chips)
Common free-friendly manufacturers:
- ThinkPenguin - Sells RYF-certified computers and accessories
- Technoethical - RYF-certified hardware
- Minifree - Free BIOS and software laptops
- Raptor Computing Systems - POWER9 systems with free firmware
Common Pitfalls and How to Avoid Them
1. The “Non-Free Firmware” Problem
Many devices require firmware blobs to function. Free distros exclude these, so some hardware may not work. Solution: Research hardware compatibility before purchasing, or use the h-node database.
2. Dependency Chains
Some free software may recommend non-free dependencies. Solution: Always use packages from your free distro’s official repositories - they’ve been vetted.
3. Web Services
Using a free browser to access non-free web services (Google Docs, Figma, etc.) is a gray area called SaaSS (Service as a Software Substitute). Solution: Use free alternatives like LibreOffice Online, CryptPad, or Nextcloud.
Your First Steps: A Practical Checklist
Week 1: Preparation
- ☐ Read the GNU Philosophy
- ☐ Identify your essential applications
- ☐ Find free replacements using the Free Software Directory
- ☐ Back up your data
Week 2: Installation
- ☐ Choose a free distro (recommended: Trisquel or PureOS)
- ☐ Download the ISO from mirror.fsf.org
- ☐ Verify the checksum for security
- ☐ Create a live USB and test on your hardware
- ☐ Install alongside or replace your current OS
Week 3: Setup
- ☐ Configure your free software replacements
- ☐ Learn GNU Emacs or another free editor
- ☐ Set up GnuPG for email encryption
- ☐ Join free software communities (LibrePlanet, GNU mailing lists)
Month 1-3: Deepening
- ☐ Learn to use the command line effectively
- ☐ Explore GNU Guix for reproducible environments
- ☐ Contribute to a free software project (even just bug reports help!)
- ☐ Upgrade to RYF-certified hardware when possible
Getting Help and Community
The free software community is welcoming and supportive:
- LibrePlanet - Community and conference (libreplanet.org)
- GNU Help - help-gnu@gnu.org mailing list
- FSF Membership - Join at fsf.org/join to support software freedom
- IRC Channels - #gnu, #fsf, #libreplanet on Libera.Chat
Conclusion
Moving to exclusively free software is a journey, not a destination. Start with a free distribution like Trisquel, learn the essential replacements for your daily tools, and gradually deepen your engagement with the free software philosophy. The resources above - particularly the Free Software Directory and the high-priority projects list - will guide you at every step.
Remember: every time you choose free software, you’re supporting a world where software serves users, not the other way around. Welcome to the community of freedom!