On Mon, May 13, 2013 at 5:59 AM, Ludovic Courtès <l...@gnu.org> wrote: > We are pleased to announce GNU Guix version 0.2, the second alpha > release, representing 580 commits by 5 people over 4 months.
Great news, *thanks* to everyone involved! > • About > > GNU Guix is a functional package manager and distribution of > the GNU system. > > In addition to standard package management features, Guix supports > transactional upgrades and roll-backs, unprivileged package > management, per-user profiles, and garbage collection. Guix uses > mechanisms from the Nix package management tool, with a Guile Scheme > programming interface. > > http://www.gnu.org/software/guix/ > > > • Download > > Here are the compressed sources and a GPG detached signature[*]: > ftp://alpha.gnu.org/gnu/guix/guix-0.2.tar.gz > ftp://alpha.gnu.org/gnu/guix/guix-0.2.tar.gz.sig > > Use a mirror for higher download bandwidth: > http://www.gnu.org/order/ftp.html > > Here are the MD5 and SHA1 checksums: > > 4bdbbd736d0bbcb6cd7e28220c4ea1fe guix-0.2.tar.gz > 051a65d1d7aa9a0ea69fe97d6d9a8b93fe09cca0 guix-0.2.tar.gz > > [*] Use a .sig file to verify that the corresponding file (without the > .sig suffix) is intact. First, be sure to download both the .sig file > and the corresponding tarball. Then, run a command like this: > > gpg --verify guix-0.2.tar.gz.sig > > If that command fails because you don't have the required public key, > then run this command to import it: > > gpg --keyserver keys.gnupg.net --recv-keys EA52ECF4 > > and rerun the 'gpg --verify' command. > > This release was bootstrapped with the following tools: > Autoconf 2.69 > Automake 1.13.1 > Makeinfo 5.1 > > > • Changes since version 0.1 (excerpt from the NEWS file) > > ** Package management > > *** Guix commands are now sub-commands of the “guix” program > > Instead of typing “guix-package”, one now has to type “guix package”, and so > on. This has allowed us to homogenize the user interface and initial > program > setup, and to allow commands to be upgradable through “guix pull”. > > *** New “guix package --upgrade” option > > As the name implies, this option atomically upgrades all the packages > installed in a profile or the set of packages matching a given regexp. > See “Invoking guix package” in the manual. > > *** New “guix package --search” option > > Performs a full text search in package synopses and descriptions, and > returns > the matching packages in recutils format. See “Invoking guix package” in > the > manual, for details. > > *** New “guix pull” command > > The command pulls the latest version of Guix–both the package management > modules and the distribution. See the manual for details. > > *** New binary substituter > > The “substituter” mechanism allows pre-built binaries to be transparently > downloaded instead of performing a build locally. Currently binaries are > available for x86_64 Linux-based GNU systems from http://hydra.gnu.org. The > distribution is continuously built and binaries are made available from > there. > > See http://hydra.gnu.org/jobset/gnu/master under “Job status” for the list > of > available binary packages. > > *** New “guix refresh” command > > The command is used by Guix maintainers. It automatically updates the > distribution to the latest upstream releases of GNU software. > > *** New “guix hash” command > > Convenience command to compute the hash of a file. See the manual for > details. > > *** Nix daemon code updated > > The daemon code from Nix, used by the ‘guix-daemon’ command, has been > updated > to current Nix ‘master’. > > ** Programming interfaces > > *** (guix download) now supports HTTPS, using GnuTLS > > It allows package source tarballs to be retrieved over HTTPS. > > *** New ‘native-search-path’ and ‘search-path’ package fields > > Packages can define in their ‘native-search-path’ field environment > variables > that define search paths and need to be set for proper functioning of the > package. For instance, GCC has ‘CPATH’ and ‘LIBRARY_PATH’ in its > ‘native-search-path’, Perl has ‘PERL5LIB’, Python has ‘PYTHONPATH’, etc. > These environment variables are automatically set when building a package > that > uses one of these. > > *** Package inputs can be a function of the target system type > > The ‘inputs’ field of a package can now be conditional on the value of > (%current-system). This is useful for packages that take system-dependent > tarballs as inputs, such as GNU/MIT Scheme. > > *** New build systems > > The ‘perl-build-system’, ‘python-build-system’, and ‘cmake-build-system’ > have > been added. They implement the standard build systems for Perl, Python, and > CMake packages. > > *** Tools to build Linux initrds, QEMU images, and more > > The (gnu packages linux-initrd) module provides a procedure to build a Linux > initrd (“initial RAM disk”). The initrd embeds Guile, which is used to > evaluate the given expression. The example below returns an initrd that > mounts the /proc file system and starts a REPL: > > (expression->initrd > '(begin > (mkdir "/proc") > (mount "none" "/proc" "proc") > ((@ (system repl repl) start-repl)))) > > More examples in the linux-initrd.scm file. > > Experimental interfaces to produce and use QEMU images are provided by the > (gnu system vm) module. For instance, the > ‘expression->derivation-in-linux-vm’ evaluates the given Scheme expression > in > a QEMU virtual machine running the Linux kernel and Guile. > > ** GNU distribution > > Many updates and additions have been made to the distribution. Here are the > highlights. > > *** Major updates > > GCC 4.7.3 (the default) and GCC 4.8.0, Binutils 2.23.2, Guile 2.0.9, > Coreutils 8.20, GDB 7.6, Texinfo 5.1. > > *** Noteworthy new packages > > TeXLive, Xorg, GNU GRUB, GNU Parted, QEMU and QEMU-KVM, Avahi, Bigloo, > CHICKEN, Scheme48, Hugs, Python, Lua, Samba. > > > Please report bugs to bug-g...@gnu.org. > > Ludovic, on behalf of the Guix team. -- Best regards, Xue Fuqiao. http://www.gnu.org/software/emacs/