GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • 1.5.0
  • development
  • single page
  • PDF
  • Deutsch
  • Español
  • Français
  • Italiano
  • Português
  • русский
  • 中文; 汉语; 华语
  • ⊕

This view

  • Original page
  • New address

GeezerVison is showing guix.gnu.org — Top (GNU Guix Reference Manual)

Next: Introduction, Up: (dir)   [Contents][Index]


GNU Guix ¶

This document describes GNU Guix version daf439c, a functional package management tool written for the GNU system.

This manual is also available in Simplified Chinese (see GNU Guix参考手册), French (see Manuel de référence de GNU Guix), German (see Referenzhandbuch zu GNU Guix), Spanish (see Manual de referencia de GNU Guix), Italian (see Manuale di riferimento di GNU Guix), Brazilian Portuguese (see Manual de referência do GNU Guix), and Russian (see Руководство GNU Guix). If you would like to translate it in your native language, consider joining Weblate (see Translating Guix).

Table of Contents

  • 1 Introduction
    • 1.1 Managing Software the Guix Way
    • 1.2 GNU Distribution
  • 2 Installation
    • 2.1 Binary Installation
      • 2.1.1 Installation with a pre-mounted store
    • 2.2 Setting Up the Daemon
      • 2.2.1 Build Environment Setup
        • Daemon Running as Root
        • Daemon Running Without Privileges
        • Migrating to the Unprivileged Daemon
        • The Isolated Build Environment
      • 2.2.2 Using the Offload Facility
      • 2.2.3 SELinux Support
        • 2.2.3.1 Installing the SELinux policy
        • 2.2.3.2 Limitations
      • 2.2.4 AppArmor Support
        • 2.2.4.1 Installing the AppArmor profile
    • 2.3 Invoking guix-daemon
    • 2.4 Application Setup
      • 2.4.1 Locales
      • 2.4.2 Name Service Switch
      • 2.4.3 X11 Fonts
      • 2.4.4 X.509 Certificates
      • 2.4.5 Emacs Packages
    • 2.5 Upgrading Guix
  • 3 System Installation
    • 3.1 Limitations
    • 3.2 Hardware Considerations
    • 3.3 USB Stick and DVD Installation
      • Copying to a USB Stick
      • Burning on a DVD
      • Booting
    • 3.4 Preparing for Installation
    • 3.5 Guided Graphical Installation
    • 3.6 Manual Installation
      • 3.6.1 Keyboard Layout, Networking, and Partitioning
        • 3.6.1.1 Keyboard Layout
        • 3.6.1.2 Networking
        • 3.6.1.3 Disk Partitioning
      • 3.6.2 Proceeding with the Installation
    • 3.7 After System Installation
    • 3.8 Installing Guix in a Virtual Machine
    • 3.9 Building the Installation Image
    • 3.10 Building the Installation Image for ARM Boards
  • 4 Getting Started
  • 5 Package Management
    • 5.1 Features
    • 5.2 Invoking guix package
    • 5.3 Substitutes
      • 5.3.1 Official Substitute Servers
      • 5.3.2 Volunteer Run Mirrors
      • 5.3.3 Substitute Server Authorization
      • 5.3.4 Getting Substitutes from Other Servers
      • 5.3.5 Substitute Authentication
      • 5.3.6 Proxy Settings
      • 5.3.7 Substitution Failure
      • 5.3.8 On Trusting Binaries
    • 5.4 Packages with Multiple Outputs
    • 5.5 Invoking guix locate
    • 5.6 Invoking guix gc
    • 5.7 Invoking guix pull
    • 5.8 Invoking guix time-machine
    • 5.9 Inferiors
    • 5.10 Invoking guix describe
    • 5.11 Invoking guix archive
  • 6 Channels
    • 6.1 Specifying Additional Channels
    • 6.2 Using a Custom Guix Channel
    • 6.3 Replicating Guix
    • 6.4 Downloading a List of Channels
    • 6.5 Customizing the System-Wide Guix
    • 6.6 Channel Authentication
    • 6.7 Channels with Substitutes
    • 6.8 Creating a Channel
    • 6.9 Package Modules in a Sub-directory
    • 6.10 Declaring Channel Dependencies
    • 6.11 Specifying Channel Authorizations
    • 6.12 Primary URL
    • 6.13 Writing Channel News
  • 7 Development
    • 7.1 Invoking guix shell
    • 7.2 Invoking guix environment
    • 7.3 Invoking guix pack
    • 7.4 The GCC toolchain
    • 7.5 Invoking guix git authenticate
  • 8 Programming Interface
    • 8.1 Package Modules
    • 8.2 Defining Packages
      • 8.2.1 package Reference
      • 8.2.2 origin Reference
    • 8.3 Defining Package Variants
    • 8.4 Writing Manifests
    • 8.5 Build Systems
    • 8.6 Build Phases
    • 8.7 Build Utilities
      • 8.7.1 Dealing with Store File Names
      • 8.7.2 File Types
      • 8.7.3 File Manipulation
      • 8.7.4 File Search
      • 8.7.5 Program Invocation
      • 8.7.6 Build Phases
      • 8.7.7 Wrappers
    • 8.8 Search Paths
    • 8.9 The Store
    • 8.10 Derivations
    • 8.11 The Store Monad
    • 8.12 G-Expressions
    • 8.13 Invoking guix repl
    • 8.14 Using Guix Interactively
  • 9 Utilities
    • 9.1 Invoking guix build
      • 9.1.1 Common Build Options
      • 9.1.2 Package Transformation Options
      • 9.1.3 Additional Build Options
      • 9.1.4 Debugging Build Failures
    • 9.2 Invoking guix edit
    • 9.3 Invoking guix download
    • 9.4 Invoking guix hash
    • 9.5 Invoking guix import
    • 9.6 Invoking guix refresh
    • 9.7 Invoking guix style
    • 9.8 Invoking guix lint
    • 9.9 Invoking guix size
    • 9.10 Invoking guix graph
    • 9.11 Invoking guix publish
    • 9.12 Invoking guix challenge
    • 9.13 Invoking guix copy
    • 9.14 Invoking guix container
    • 9.15 Invoking guix weather
    • 9.16 Invoking guix processes
    • 9.17 Extending Guix
  • 10 Foreign Architectures
    • 10.1 Cross-Compilation
    • 10.2 Native Builds
  • 11 System Configuration
    • 11.1 Getting Started
    • 11.2 Using the Configuration System
      • Bootloader
      • Globally-Visible Packages
      • System Services
      • Inspecting Services
      • Instantiating the System
      • The Programming Interface
    • 11.3 operating-system Reference
    • 11.4 File Systems
      • 11.4.1 Btrfs file system
    • 11.5 Mapped Devices
    • 11.6 Swap Space
    • 11.7 User Accounts
    • 11.8 Keyboard Layout
    • 11.9 Locales
      • 11.9.1 Locale Data Compatibility Considerations
    • 11.10 Services
      • 11.10.1 Base Services
      • 11.10.2 Scheduled Job Execution
        • 11.10.2.1 Shepherd Timers
        • 11.10.2.2 Mcron
      • 11.10.3 Log Rotation
      • 11.10.4 Networking Setup
      • 11.10.5 Authorization Services
      • 11.10.6 Networking Services
      • 11.10.7 Unattended Upgrades
      • 11.10.8 X Window
      • 11.10.9 Printing Services
      • 11.10.10 Desktop Services
      • 11.10.11 Sound Services
      • 11.10.12 File Search Services
      • 11.10.13 Database Services
      • 11.10.14 Mail Services
      • 11.10.15 Messaging Services
      • 11.10.16 Telephony Services
      • 11.10.17 File-Sharing Services
      • 11.10.18 Monitoring Services
      • 11.10.19 Kerberos Services
      • 11.10.20 LDAP Services
      • 11.10.21 Web Services
      • 11.10.22 High Availability Services
      • 11.10.23 Certificate Services
      • 11.10.24 DNS Services
      • 11.10.25 VNC Services
      • 11.10.26 VPN Services
      • 11.10.27 DAV Services
      • 11.10.28 Network File System
      • 11.10.29 Samba Services
      • 11.10.30 Continuous Integration
      • 11.10.31 Power Management Services
      • 11.10.32 Audio Services
      • 11.10.33 Virtualization Services
      • 11.10.34 Version Control Services
      • 11.10.35 Game Services
      • 11.10.36 PAM Mount Service
      • 11.10.37 Guix Services
      • 11.10.38 Linux Services
      • 11.10.39 Hurd Services
      • 11.10.40 Miscellaneous Services
    • 11.11 Privileged Programs
    • 11.12 X.509 Certificates
    • 11.13 Name Service Switch
    • 11.14 Initial RAM Disk
    • 11.15 Bootloader Configuration
      • Automatic LUKS Master Key Passing
      • Additional Boot Entries
      • Themes
    • 11.16 Invoking guix system
    • 11.17 Invoking guix deploy
    • 11.18 Running Guix in a Virtual Machine
      • 11.18.1 Connecting Through SSH
      • 11.18.2 Using virt-viewer with Spice
    • 11.19 Defining Services
      • 11.19.1 Service Composition
      • 11.19.2 Service Types and Services
      • 11.19.3 Service Reference
      • 11.19.4 Shepherd Services
      • 11.19.5 Complex Configurations
        • 11.19.5.1 Serializing to environment variables
  • 12 System Troubleshooting Tips
    • 12.1 Chrooting into an existing system
  • 13 Home Configuration
    • 13.1 Declaring the Home Environment
    • 13.2 Configuring the Shell
    • 13.3 home-environment Reference
    • 13.4 Home Services
      • 13.4.1 Essential Home Services
      • 13.4.2 Shells
      • 13.4.3 Scheduled User’s Job Execution
      • 13.4.4 Power Management Home Services
      • 13.4.5 Managing User Daemons
      • 13.4.6 Secure Shell
      • 13.4.7 GNU Privacy Guard
      • 13.4.8 Desktop Home Services
      • 13.4.9 XDG Home Services
      • 13.4.10 Guix Home Services
      • 13.4.11 Backup Services
      • 13.4.12 Fonts Home Services
      • 13.4.13 Sound Home Services
      • 13.4.14 Mail Home Services
      • 13.4.15 Messaging Home Services
      • 13.4.16 Media Home Services
      • 13.4.17 mpv Media Player
      • 13.4.18 Niri window manager
      • 13.4.19 River Wayland compositor
      • 13.4.20 Sway window manager
      • 13.4.21 Networking Home Services
      • 13.4.22 Secrets Home Services
      • 13.4.23 Miscellaneous Home Services
    • 13.5 Invoking guix home
  • 14 Documentation
  • 15 Platforms
    • 15.1 platform Reference
    • 15.2 Supported Platforms
  • 16 Creating System Images
    • 16.1 image Reference
      • 16.1.1 partition Reference
    • 16.2 Instantiate an Image
    • 16.3 image-type Reference
    • 16.4 Image Modules
  • 17 Installing Debugging Files
    • 17.1 Separate Debug Info
    • 17.2 Rebuilding Debug Info
  • 18 Using TeX and LaTeX
  • 19 Security Updates
  • 20 Bootstrapping
    • 20.1 The Full-Source Bootstrap
    • 20.2 Preparing to Use the Bootstrap Binaries
    • Building the Build Tools
    • Building the Bootstrap Binaries
    • Reducing the Set of Bootstrap Binaries
  • 21 Porting to a New Platform
  • 22 Contributing
    • 22.1 Requirements
    • 22.2 Building from Git
    • 22.3 Running the Test Suite
    • 22.4 Running Guix Before It Is Installed
    • 22.5 The Perfect Setup
      • 22.5.1 Emacs
        • Submitting Pull Requests Following the AGit Workflow
        • Taming Boilerplate with Templates
        • Updating Copyright Lines
        • Referencing Bug Reports
      • 22.5.2 Guile Studio
      • 22.5.3 Vim and NeoVim
    • 22.6 Source Tree Structure
    • 22.7 Packaging Guidelines
      • 22.7.1 Software Freedom
      • 22.7.2 Extracting Bundled Dependencies
      • 22.7.3 Package Naming
      • 22.7.4 Version Numbers
      • 22.7.5 Synopses and Descriptions
      • 22.7.6 Snippets versus Phases
      • 22.7.7 Cyclic Module Dependencies
      • 22.7.8 Bulk Updates
      • 22.7.9 Emacs Packages
      • 22.7.10 Python Modules
        • 22.7.10.1 Specifying Dependencies
      • 22.7.11 Perl Modules
      • 22.7.12 Java Packages
      • 22.7.13 Rust Crates
        • 22.7.13.1 Commit messages
        • 22.7.13.2 Resolving merge conflicts in Pull Requests
      • 22.7.14 Elm Packages
      • 22.7.15 Fonts
    • 22.8 Coding Style
      • 22.8.1 Programming Paradigm
      • 22.8.2 Modules
      • 22.8.3 Data Types and Pattern Matching
      • 22.8.4 Formatting Code
    • 22.9 Copyright Matters
      • 22.9.1 Copyright Notices
      • 22.9.2 Coding Assistants (LLM) Policy
    • 22.10 Submitting Patches
      • 22.10.1 Configuring Git
    • 22.11 Tracking Bugs and Changes
      • 22.11.1 The Issue Tracker
      • 22.11.2 Managing Patches and Branches
      • 22.11.3 Cuirass Build Notifications
    • 22.12 Teams
    • 22.13 Making Decisions
    • 22.14 Commit Access
      • 22.14.1 Applying for Commit Access
      • 22.14.2 Commit Policy
      • 22.14.3 Addressing Issues
        • 22.14.3.1 Reverting commits
      • 22.14.4 Commit Revocation
      • 22.14.5 Helping Out
    • 22.15 Reviewing the Work of Others
    • 22.16 Updating the Guix Package
    • 22.17 Deprecation Policy
    • 22.18 Writing Documentation
    • 22.19 Translating Guix
    • 22.20 Contributing to Guix’s Infrastructure
      • 22.20.1 Coding
      • 22.20.2 System Administration
      • 22.20.3 Day-to-Day System Administration
      • 22.20.4 On-Site Intervention
      • 22.20.5 Hosting
      • 22.20.6 Administrative Tasks
  • 23 Acknowledgments
  • Appendix A GNU Free Documentation License
  • Concept Index
  • Programming Index

Next: Introduction   [Contents][Index]

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.