Skip to content

About

Docs, Channels, example configs and more - Guix is Awesome

Topics

Resources

Contributing

Stars

148 stars

Watchers

3 watching

Forks

Latest commit

 

History

132 Commits

Folders and files

Repository files navigation

Awesome Guix Awesome

Package manager and distribution of the GNU system with reproducible, transactional upgrades.

Guix

GNU Guix is a functional package manager and a distribution of the GNU operating system. Every package is built in an isolated environment and stored under a hash of all its inputs, so the same definition produces the same result on any machine, and pre-built substitutes can stand in for local builds. Packages, services, home environments and whole operating systems are declared in Guile Scheme. Every change is a transaction: an upgrade either completes or leaves the system untouched, and each generation can be rolled back, down to the boot menu. Guix runs as a standalone package manager on top of any GNU/Linux distribution, or as Guix System, where the entire machine is configured from a single file. The distribution ships only free software and is bootstrapped from a small, auditable binary seed.

Contents

Docs and Videos

Articles and Videos

Tools

  • Guix Packager - Write a package definition in a breeze.
  • System Config Generator - Config generator for PantherX OS (similar to Guix).
  • guix-install - Guix System installer: libre, nonguix, panther, or enterprise.
  • guix-rs - Unofficial GUI for day-to-day Guix usage.
  • esquema - Rootless, daemon-free container runtime written in Scheme, integrating with Guix and Shepherd.
  • Guix Data Service - Query packages, derivations and lint warnings for any revision of Guix.
  • Guix QA - Build status of the team branches queued for merge into master.

Channels

  • guix - The primary channel. Legacy repository on GNU Savannah.
  • nonguix - Packages that can't be included upstream.
  • pantherx - System and packages for PantherX.
  • games - Collection of non-free game packages.
  • guix-android - Experimental packages for Android development.
  • guix-past - Packages from the past.
  • guix-hpc - Extensions for high-performance computing.
  • guix-hpc-non-free - Non-free HPC software, or free software with non-free dependencies.
  • guix-science - Free scientific packages.
  • guix-science-nonfree - Non-free scientific packages.
  • guix-ost - Software recipes for the HPC-RJ Cluster.
  • sops-guix - Secure secret management with Guix.
  • gocix - Community managed library of Guix services.
  • small-guix - Small Guix.
  • guix-cn - Channel of the Guix China community.
  • bin-guix - Binary packages.
  • rosenthal - Experiments.
  • giuliano108/guix-packages - Guix on WSL2, packages and notes.
  • guix-wigust - Extra packages.
  • guix-rustup - Rustup toolchains on Guix.
  • guix-tailscale - Provides tailscale, tailscaled, and tailscale-service-type.
  • guixrus - Channel maintained by the whereiseveryone community.
  • guix-crypto - Crypto and Blockchain related packages and services.
  • gundroid - Android tools packages.
  • divya-lambda - Haskell, Rust packages and toolchain, libre audio software, emacs-next, among others.
  • guix-cran - All R packages not available in Guix yet.
  • guix-bioc - The entire Bioconductor collection, generated like guix-cran.
  • saayix - Personal channel for developing and sharing services and packages.
  • radix - Personal channel, which contains Free Software only.
  • abbe - Many up-to-date Rust and Go apps built with custom nix-like build systems, and more.
  • emacs-master - The latest Emacs from the master branch.
  • guix-telegram-desktop - Latest version of telegram-desktop.
  • asahi-guix/channel - Run the GNU operating system with the Asahi Linux kernel on Apple Silicon devices.
  • dariqq/guix-surface - Implementation of linux-surface for GNU Guix.
  • kolev/guix-channel - Chromebook audio configuration and SUPDUP.
  • ROCKTAKEY/roquix - Roquix Guix channel.
  • minkieyume/chiko-guix-channel - Minkie Chiko's Guix channel.
  • Jonabron - Provides osu!lazer, Vicinae, Discord, and more.
  • guix-eda - Electronic design automation, with pinned versions for specific purposes.
  • guix-bitcoin - Bitcoin ecosystem: nodes, wallets, Lightning, indexers and block explorers.
  • guix-astro - Astrophysics-adjacent codes which are not yet included upstream.
  • guix-discord - Discord, and some Discord related packages.
  • aagl-guix - Run an-anime-team launchers on Guix.
  • Jasmine - Application and desktop themes.

Package Indexes

Wishlist

  • Guix/Wishlist - Software that users of GNU Guix would like to see packaged.
  • Codeberg/Wishlist - Feature and update requests users would like to see implemented in GNU Guix.

Issue Trackers

  • guix - Issues for Guix itself.
  • nonguix - Issues for the nonguix channel.
  • pantherx - Issues for the PantherX channel.

Distributions

  • Guix System - The GNU operating system built on Guix.
  • PantherX - Guix-based distribution with its own channel and tooling.
  • rde - Developer and power-user environment built on Guix.

Build Servers

Substitutes (aka pre-built software) come from here:

Love the quote, from the last one; though it seems Firefox has fallen into this category too.

Only malware, such as Chromium, will never be distributed.

Want to run your own substitute server? Check out Cuirass.

Config Examples

When you're stuck, it's super helpful to see what others are doing.

  • tyreunom/system-configuration - Personal system configuration.
  • aurtzy/guix-config - System and home configuration modularized with "mods", an extension to Guix records.
  • hiecaq/guix-config - Literate Org configuration covering system, home and channels.
  • podiki/dot.me - Guix configuration in literate dotfiles, tangled from Org and linked with GNU Stow.
  • anemofilia/zero - Modular system and home environments that keep desktop concerns out of the operating system.
  • hako/Testament - Literate Guix System configurations, dotfiles and live CD images, built with BLUE.
  • look/misako - Modular system and home configurations, companion to the saayix channel.
  • VnPower/rkgk - Lisp-machine-style desktop on Guix System.
  • mrh/dotfiles - Per-machine Guix System configurations alongside an Emacs setup.
  • franzos/dotfiles - Two-host Guix System configuration with a shared module and system hardening.
  • berkeley/guix-config - Hardened, minimal system and home configuration with XMonad, River and Sway desktops.
  • fishinthecalculator/guix-deployments - Opinionated operating-system definitions, distributed as a signed channel.
  • aartaka/guix-config - System configuration and a large development manifest.

Misc

Communities

Guix on Other Distros

Related Lists

Footnotes

Unmaintained and archived entries, still useful as references, are listed in unmaintained.md.

About

Docs, Channels, example configs and more - Guix is Awesome

Topics

Resources

Contributing

Stars

148 stars

Watchers

3 watching

Forks

Contributors