# GNU Guix System

> Linux distribution

**Wikidata**: [Q19597382](https://www.wikidata.org/wiki/Q19597382)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/GNU_Guix_System)  
**Source**: https://4ort.xyz/entity/gnu-guix-system

## Summary
GNU Guix System is a Linux distribution developed by the GNU Project that uses the GNU Guix package manager and is endorsed by the Free Software Foundation. It is unique among Linux distributions for its purely functional package management approach and commitment to free software, supporting both Linux-libre and GNU/Hurd kernels.

## Key Facts
- GNU Guix System is a Linux distribution that is part of the FSF-endorsed operating systems category
- Developed by the GNU Project, which was founded on September 27, 1983
- Uses GNU Guile as its programming language and GNU Guix as its package management system
- Supports multiple architectures: i686, x86-64, ARMv7, and A64
- Latest stable version is 1.4.0, released on December 19, 2022
- Based on Linux since 2015 and GNU/Hurd since 2020
- Inspired by NixOS and uses Linux-libre kernel starting from 2015
- Also known as Guix System, GuixSD, and Guix系統
- Requires Pentium Pro or compatible processors
- Licensed under free software license

## FAQs
### Q: What makes GNU Guix System different from other Linux distributions?
A: GNU Guix System uses a purely functional package manager that allows for transactional upgrades, rollbacks, and reproducible system configurations. It emphasizes free software exclusively and is one of the few distributions endorsed by the Free Software Foundation.

### Q: Can GNU Guix System run on non-Linux kernels?
A: Yes, while it started as a Linux-based distribution in 2015, GNU Guix System has supported GNU/Hurd kernel since 2020, making it one of the few modern operating systems to offer Hurd support.

### Q: What desktop environments does GNU Guix System support?
A: According to the manual, GNU Guix System supports multiple GUI toolkits and desktop environments including Xfce, Enlightenment, and LXDE.

### Q: Is GNU Guix System self-hosting?
A: Yes, GNU Guix System has the characteristic of being self-hosting, meaning it can build and reproduce itself without external dependencies.

## Why It Matters
GNU Guix System represents a significant advancement in the philosophy of software freedom and system administration. As one of the few distributions that meets the Free Software Foundation's strict criteria for free software endorsement, it provides users with complete control over their computing environment. The system's purely functional package management approach revolutionizes how we think about system maintenance, allowing users to reliably reproduce system states, perform atomic upgrades and rollbacks, and manage multiple system generations. This is particularly valuable for developers, researchers, and system administrators who need reproducible environments. By supporting both Linux-libre and GNU/Hurd kernels, GNU Guix System also serves as a platform for exploring alternative operating system architectures, keeping alive the vision of the GNU Project's original goal of creating a completely free operating system.

## Notable For
- One of the few FSF-endorsed Linux distributions that exclusively uses free software
- Pioneered purely functional package management in Linux distributions, allowing for reproducible system configurations
- Supports both Linux-libre and GNU/Hurd kernels, making it unique among modern distributions
- Uses GNU Guile Scheme implementation for system configuration and package definitions
- Offers atomic system upgrades and rollbacks through its functional package manager
- Self-hosting capability allows the system to build itself from source

## Body
### Development and History
GNU Guix System emerged from the GNU Project's efforts to create a completely free operating system. The project began supporting Linux-libre in 2015, marking its entry as a modern Linux distribution. In 2020, it expanded to support GNU/Hurd, demonstrating its commitment to the GNU Project's original vision of a microkernel-based operating system.

### Technical Architecture
The system is built around GNU Guix, a purely functional package manager written in GNU Guile, a Scheme implementation designed for extensions. This architecture allows for unique features like transactional upgrades, rollbacks, and reproducible builds. The system configuration is defined in Scheme, making it programmable and version-controllable.

### Platform Support
GNU Guix System supports multiple processor architectures including i686 (32-bit x86), x86-64 (64-bit x86), ARMv7, and A64 (64-bit ARM). This broad support makes it suitable for various hardware platforms, from older computers to modern ARM-based systems.

### Package Management
The heart of GNU Guix System is its functional package manager, which treats packages as values in a functional programming paradigm. This approach ensures that package installations and system configurations are reproducible and conflict-free. The system maintains multiple generations of packages, allowing users to roll back to previous states if needed.

### Community and Resources
The project maintains an active community with resources including an IRC channel on Freenode (#guix), mailing lists, and comprehensive documentation. Users can access help through multiple channels including the official website, user manual, and community forums.

## Schema Markup
```json
{
  "@context": "https://schema.org",
  "@type": "Thing",
  "name": "GNU Guix System",
  "description": "A Linux distribution developed by the GNU Project that uses GNU Guix package manager and is endorsed by the Free Software Foundation",
  "url": "https://guix.gnu.org/",
  "sameAs": ["https://www.wikidata.org/wiki/Q207571", "https://en.wikipedia.org/wiki/GNU_Guix_System"],
  "additionalType": "Linux distribution"
}

## References

1. [Deprecating support for the Linux kernel. 2020](https://guix.gnu.org/blog/2020/deprecating-support-for-the-linux-kernel/)
2. [GNU Guix 1.0.0 released. 2019](https://www.gnu.org/software/guix/blog/2019/gnu-guix-1.0.0-released/)
3. [GNU Guix 1.0.1 released. 2019](https://www.gnu.org/software/guix/blog/2019/gnu-guix-1.0.1-released/)
4. [GNU Guix 1.1.0 released. 2020](https://guix.gnu.org/blog/2020/gnu-guix-1.1.0-released/)
5. [GNU Guix 1.2.0 released. 2020](https://guix.gnu.org/en/blog/2020/gnu-guix-1.2.0-released/)
6. [GNU Guix 1.3.0 released. 2021](https://guix.gnu.org/en/blog/2021/gnu-guix-1.3.0-released/)
7. [GNU Guix 1.4.0 released (English). 2022](https://guix.gnu.org/en/blog/2022/gnu-guix-1.4.0-released/)
8. [Source](https://guix.gnu.org/ru/manual/devel/en/guix.html#Limitations)
9. [Source](https://www.gnu.org/distros/free-distros.html)
10. [Source](https://github.com/elogind/elogind)