Author(s): The GNU Guix Developers
Edition: 1.3.0
Year: 2021
Language: English
Pages: 542
GNU Guix
Introduction
Managing Software the Guix Way
GNU Distribution
Installation
Binary Installation
Requirements
Running the Test Suite
Setting Up the Daemon
Build Environment Setup
Using the Offload Facility
SELinux Support
Installing the SELinux policy
Limitations
Invoking guix-daemon
Application Setup
Locales
Name Service Switch
X11 Fonts
X.509 Certificates
Emacs Packages
Upgrading Guix
System Installation
Limitations
Hardware Considerations
USB Stick and DVD Installation
Copying to a USB Stick
Burning on a DVD
Booting
Preparing for Installation
Guided Graphical Installation
Manual Installation
Keyboard Layout, Networking, and Partitioning
Keyboard Layout
Networking
Disk Partitioning
Proceeding with the Installation
After System Installation
Installing Guix in a Virtual Machine
Building the Installation Image
Building the Installation Image for ARM Boards
Getting Started
Package Management
Features
Invoking guix package
Substitutes
Official Substitute Server
Substitute Server Authorization
Getting Substitutes from Other Servers
Substitute Authentication
Proxy Settings
Substitution Failure
On Trusting Binaries
Packages with Multiple Outputs
Invoking guix gc
Invoking guix pull
Invoking guix time-machine
Inferiors
Invoking guix describe
Invoking guix archive
Channels
Specifying Additional Channels
Using a Custom Guix Channel
Replicating Guix
Channel Authentication
Channels with Substitutes
Creating a Channel
Package Modules in a Sub-directory
Declaring Channel Dependencies
Specifying Channel Authorizations
Primary URL
Writing Channel News
Development
Invoking guix environment
Invoking guix pack
The GCC toolchain
Invoking guix git authenticate
Programming Interface
Package Modules
Defining Packages
package Reference
origin Reference
Defining Package Variants
Build Systems
Build Phases
Build Utilities
Dealing with Store File Names
File Types
File Manipulation
File Search
Build Phases
The Store
Derivations
The Store Monad
G-Expressions
Invoking guix repl
Utilities
Invoking guix build
Common Build Options
Package Transformation Options
Additional Build Options
Debugging Build Failures
Invoking guix edit
Invoking guix download
Invoking guix hash
Invoking guix import
Invoking guix refresh
Invoking guix lint
Invoking guix size
Invoking guix graph
Invoking guix publish
Invoking guix challenge
Invoking guix copy
Invoking guix container
Invoking guix weather
Invoking guix processes
System Configuration
Using the Configuration System
Bootloader
Globally-Visible Packages
System Services
Instantiating the System
The Programming Interface
operating-system Reference
File Systems
Btrfs file system
Mapped Devices
User Accounts
Keyboard Layout
Locales
Locale Data Compatibility Considerations
Services
Base Services
Scheduled Job Execution
Log Rotation
Networking Services
Unattended Upgrades
X Window
Printing Services
Desktop Services
Sound Services
Database Services
Mail Services
Messaging Services
Telephony Services
File-Sharing Services
Monitoring Services
Kerberos Services
LDAP Services
Web Services
Certificate Services
DNS Services
VPN Services
Network File System
Continuous Integration
Power Management Services
Audio Services
Virtualization Services
Version Control Services
Game Services
PAM Mount Service
Guix Services
Linux Services
Hurd Services
Miscellaneous Services
Setuid Programs
X.509 Certificates
Name Service Switch
Initial RAM Disk
Bootloader Configuration
Invoking guix system
Invoking guix deploy
Running Guix in a Virtual Machine
Connecting Through SSH
Using virt-viewer with Spice
Defining Services
Service Composition
Service Types and Services
Service Reference
Shepherd Services
Documentation
Installing Debugging Files
Separate Debug Info
Rebuilding Debug Info
Security Updates
Bootstrapping
The Reduced Binary Seed Bootstrap
Preparing to Use the Bootstrap Binaries
Building the Build Tools
Building the Bootstrap Binaries
Reducing the Set of Bootstrap Binaries
Porting to a New Platform
Contributing
Building from Git
Running Guix Before It Is Installed
The Perfect Setup
Packaging Guidelines
Software Freedom
Package Naming
Version Numbers
Synopses and Descriptions
Snippets versus Phases
Emacs Packages
Python Modules
Specifying Dependencies
Perl Modules
Java Packages
Rust Crates
Fonts
Coding Style
Programming Paradigm
Modules
Data Types and Pattern Matching
Formatting Code
Submitting Patches
Sending a Patch Series
Tracking Bugs and Patches
Commit Access
Updating the Guix Package
Acknowledgments
GNU Free Documentation License
Concept Index
Programming Index