GNU Guix (pronounced like "geeks") is a purely functional package manager for the GNU system.
Dependable. In addition to standard package management features, Guix supports transactional upgrades and roll-backs, unprivileged package management, per-user profiles, garbage collection, and reproducible builds. Read more...
Guix is based on the Nix package manager.
- 2 May 2015 — GNU Guix welcomes three students for GSoC
- 13 Mar. 2015 — GNU Guix recruits for GSoC
- 3 Feb. 2015 — FSF adds Guix System Distribution to list of endorsed distributions
- 29 Jan. 2015 — GNU Guix 0.8.1 released
- 27 Jan. 2015 — GNU Guix at FOSDEM
- 9 Jan. 2015 — GNU Guix ported to ARM and other niceties of the new year
- 18 Nov. 2014 — GNU Guix 0.8 released
- 11 Oct. 2014 — 2014 GNU Hackers Meeting talk on-line
- 16 Sep. 2014 — Join us for a Guix hackathon on Sep. 27-28!
- 4 Sep. 2014 — Emacs as a general-purpose package manager
- 25 July 2014 — GNU Guix 0.7 released
- 13 July 2014 — Guix at OpenBio Codefest 2014
- 8 July 2014 — GNU dmd 0.2 released
- 9 Apr. 2014 — GNU Guix 0.6 released
- 27 Feb. 2014 — Guix looks for GSoC students
- 25 Jan. 2014 — Guix at FOSDEM
- 11 Dec. 2013 — GNU Guix 0.5 released
- 3 Dec. 2013 — GNU dmd 0.1 released
- 29 Oct. 2013 — Port to MIPS64
- 27 Sep. 2013 — GNU Guix 0.4 released, with virtual machine image, 30 years after GNU's initial announcement
- 18 Sep. 2013 — Join Guix for an on-line hackathon on Sep. 28-29!
- 2 Sep. 2013 — GNU Hackers Meeting talks on-line
- 17 July 2013 — GNU Guix 0.3 released
- 26 June 2013 — Cross-compilation support
- 5 June 2013 — European Lisp Symposium talk on-line
- 21 May 2013 — Guix at the European Lisp Symposium
- 13 May 2013 — GNU Guix 0.2 released
- 12 Apr. 2013 — Guix participates in GSoC
- 16 Feb. 2013 — Boot-to-Guile, a dish for Guile's birthday potluck
- 18 Jan. 2013 — GNU Guix 0.1 released
- 23 Nov. 2012 — Guix becomes a GNU project
Alternately, GNU Guix can be installed as an additional package manager on top of an installed Linux-based system, on i686, x86_64, mips64el, and on armv7.
Its salient package management features are implemented. The distribution provides 1,500+ packages transparently available as pre-built binaries. The Guix System Distribution has some limitations but will please the enthusiastic hacker in you. Join us in improving it!
Guix in its early development stages. Source code for Guix as well as USB installation images of the Guix System Distribution can be found on the GNU ftp server for alpha releases: http://alpha.gnu.org/gnu/guix/ (via HTTP) and ftp://alpha.gnu.org/gnu/guix/ (via FTP).
See the installation instructions from the manual.
- Documentation for Guix is available on-line, as is documentation for most GNU software. You may also find more information about Guix by running info guix.
- Functional Package Management with Guix, presented at the 2013 European Lisp Symposium (ELS), describes the rationale, design, and implementation of Guix's packaging API.
- February 2015, FOSDEM: slides, video (WebM; 47 minutes)
- August 2014, GNU Hackers Meeting: slides, video (WebM; 60 minutes)
- July 2014, Open Bioinformatics Codefest 2014: slides
- February 2014, FOSDEM: slides, video (WebM; 55 minutes)
- August 2013, GNU Hackers Meeting
- June 2013, European Lisp Symposium (ELS): slides, audio
- July 2012, GNU Hackers Meeting: slides, video (Ogg/Theora; 84 minutes, 88.1MB)
- Commit notifications
- Security reports
Security reports that should not be made immediately public can be sent directly to the maintainer. If there is no response to an urgent issue, you can escalate to the general security mailing list for advice.
- Internet relay chat
Some Guix users and developers hang out on the #guix channel of the Freenode IRC network (logs).
As the distribution grows (see the package list), so do the computing and storage needs. We are looking for donations of hardware and optionally hosting for the following kinds of machines (they should be usable with exclusively free software):
- x86_64 machines, with on the order of 1 TiB of storage and 4 GiB of RAM;
- armv7 machines that would allow us to provide pre-built binaries for the recently-added ARM port;
- mips64el machines to strengthen this port.
Source code repository
Guix is developed using the Git version control system.
git clone git://git.savannah.gnu.org/guix.git
You can also browse the Git repository with your web browser: http://git.savannah.gnu.org/cgit/guix.git
Commit notifications can be received on the Guix-commits mailing list.
Contributing new code
Guix is implemented in Scheme,
using GNU Guile.
Nonetheless, if you want to dive further into Guix, you will find it useful to browse Guile's manual or other introductory material about Scheme. Also, make sure to read the HACKING files for more details on the development setup, as well as the coding and cooperation conventions used in the Guix project.
A repository with artwork for use in the operating system, such as the logo, background image of the bootloader, etc., is available at git://git.sv.gnu.org/guix/guix-artwork.git. We're always looking for help in this area, so do chime in if you're interested!
Documents, supporting material of previous talks, and auxiliary information useful to hackers and maintainers is available at git://git.sv.gnu.org/guix/maintenance.git.
Development of Guix, and GNU in general, is a volunteer effort, and you can contribute. For information, please read How to help GNU. If you'd like to get involved, it's a good idea to join the mailing lists
Guix is currently being maintained by Ludovic Courtès. Please use the mailing lists for contact.
Guix is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.