| 1 | -*- org -*- |
| 2 | #+TITLE: Guix NEWS – history of user-visible changes |
| 3 | #+STARTUP: content hidestars |
| 4 | |
| 5 | Copyright © 2013 Ludovic Courtès <ludo@gnu.org> |
| 6 | |
| 7 | Copying and distribution of this file, with or without modification, |
| 8 | are permitted in any medium without royalty provided the copyright |
| 9 | notice and this notice are preserved. |
| 10 | |
| 11 | Please send Guix bug reports to bug-guix@gnu.org. |
| 12 | |
| 13 | |
| 14 | * Changes in 0.2 (since 0.1) |
| 15 | |
| 16 | ** Package management |
| 17 | |
| 18 | *** Guix commands are now sub-commands of the “guix” program |
| 19 | |
| 20 | Instead of typing “guix-package”, one now has to type “guix package”, and so |
| 21 | on. This has allowed us to homogenize the user interface and initial program |
| 22 | setup, and to allow commands to be upgradable through “guix pull”. |
| 23 | |
| 24 | *** New “guix package --upgrade” option |
| 25 | |
| 26 | As the name implies, this option atomically upgrades all the packages |
| 27 | installed in a profile. See “Invoking guix package” in the manual. |
| 28 | |
| 29 | *** New “guix pull” command |
| 30 | |
| 31 | The command pulls the latest version of Guix–both the package management |
| 32 | modules and the distribution. See the manual for details. |
| 33 | |
| 34 | *** New binary substituter |
| 35 | |
| 36 | The “substituter” mechanism allows pre-built binaries to be transparently |
| 37 | downloaded instead of performing a build locally. Currently binaries are |
| 38 | available for x86_64 Linux-based GNU systems from http://hydra.gnu.org. See |
| 39 | the manual for details. |
| 40 | |
| 41 | *** New “guix refresh” command |
| 42 | |
| 43 | The command is used by Guix maintainers. It automatically updates the |
| 44 | distribution to the latest upstream releases of GNU software. |
| 45 | |
| 46 | *** New “guix hash” command |
| 47 | |
| 48 | Convenience command to compute the hash of a file. See the manual for |
| 49 | details. |
| 50 | |
| 51 | *** (guix download) now supports HTTPS, using GnuTLS |
| 52 | |
| 53 | It allows package source tarballs to be retrieved over HTTPS. |
| 54 | |
| 55 | ** Programming interfaces |
| 56 | |
| 57 | *** New ‘native-search-path’ and ‘search-path’ package fields |
| 58 | |
| 59 | Packages can define in their ‘native-search-path’ field environment variables |
| 60 | that define search paths and need to be set for proper functioning of the |
| 61 | package. For instance, GCC has ‘CPATH’ and ‘LIBRARY_PATH’ in its |
| 62 | ‘native-search-path’, Perl has ‘PERL5LIB’, Python has ‘PYTHONPATH’, etc. |
| 63 | These environment variables are automatically set when building a package that |
| 64 | uses one of these. |
| 65 | |
| 66 | *** Package inputs can be a function of the target system type |
| 67 | |
| 68 | The ‘inputs’ field of a package can now be conditional on the value of |
| 69 | (%current-system). This is useful for packages that take system-dependent |
| 70 | tarballs as inputs, such as GNU/MIT Scheme. |
| 71 | |
| 72 | *** New build systems |
| 73 | |
| 74 | The ‘perl-build-system’, ‘python-build-system’, and ‘cmake-build-system’ have |
| 75 | been added. They implement the standard build systems for Perl, Python, and |
| 76 | CMake packages. |
| 77 | |
| 78 | ** GNU distribution |
| 79 | |
| 80 | Many updates and additions have been made to the distribution. Here are the |
| 81 | highlights. |
| 82 | |
| 83 | *** Major updates |
| 84 | |
| 85 | GCC 4.7.3 (the default) and GCC 4.8.0, Binutils 2.23.2, Guile 2.0.9, |
| 86 | Coreutils 8.20, GDB 7.6, Texinfo 5.1. |
| 87 | |
| 88 | *** Noteworthy new packages |
| 89 | |
| 90 | TeXLive, Xorg, GNU Parted, QEMU and QEMU-KVM, Avahi, Hugs, Python, Lua, Samba. |