2013-05-08 10:08:25 -04:00
|
|
|
|
-*- org -*-
|
|
|
|
|
#+TITLE: Guix NEWS – history of user-visible changes
|
|
|
|
|
#+STARTUP: content hidestars
|
2013-04-27 11:10:41 -04:00
|
|
|
|
|
|
|
|
|
Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
|
|
|
|
|
|
|
|
|
|
Copying and distribution of this file, with or without modification,
|
|
|
|
|
are permitted in any medium without royalty provided the copyright
|
|
|
|
|
notice and this notice are preserved.
|
|
|
|
|
|
|
|
|
|
Please send Guix bug reports to bug-guix@gnu.org.
|
|
|
|
|
|
2013-12-10 15:53:59 -05:00
|
|
|
|
* Changes in 0.5 (since 0.4)
|
|
|
|
|
** Package management
|
|
|
|
|
*** GNU package descriptions synchronized with the ‘gnumaint’ repository
|
|
|
|
|
|
|
|
|
|
In addition to synopses, descriptions of GNU packages are now kept in sync
|
|
|
|
|
with the ‘gnumaint’ repository, which is the canonical place for GNU package
|
|
|
|
|
meta-data.
|
|
|
|
|
|
|
|
|
|
** Programming interfaces
|
|
|
|
|
*** Patches are now listed as part of ‘origin’
|
|
|
|
|
|
|
|
|
|
The ‘origin’ form supports two new fields: ‘patches’ (list of patches), and
|
|
|
|
|
‘snippet’ (code snippet to modify the source.) These are applied when running
|
|
|
|
|
‘guix build --source’. See “Defining Packages” in the manual.
|
|
|
|
|
|
|
|
|
|
*** New (guix monads) monadic interface to operate on the store
|
|
|
|
|
|
|
|
|
|
See “The Store Monad” in the manual. The (gnu system …) modules have been
|
|
|
|
|
rewritten to use this monadic interface.
|
|
|
|
|
|
|
|
|
|
*** New (guix profiles) module
|
|
|
|
|
|
|
|
|
|
It provides an API for dealing with profiles, as with the ‘guix package’
|
|
|
|
|
command.
|
|
|
|
|
|
|
|
|
|
*** New (gnu system) module
|
|
|
|
|
|
2013-12-10 16:14:23 -05:00
|
|
|
|
This module provides a generic way to describe the system’s configuration,
|
|
|
|
|
and to instantiate it, regardless of the final medium (QEMU image, etc.)
|
2013-12-10 15:53:59 -05:00
|
|
|
|
See “System Configuration” in the manual.
|
|
|
|
|
|
|
|
|
|
This is work in progress. Send feedback to guix-devel@gnu.org!
|
|
|
|
|
|
|
|
|
|
*** ‘build-expression->derivation’ uses more parameters
|
|
|
|
|
|
|
|
|
|
Some positional parameters have been changed to keyword parameters.
|
|
|
|
|
See “Derivations” in the manual.
|
|
|
|
|
|
|
|
|
|
** GNU distribution
|
|
|
|
|
*** New port to the Loongson MIPS64 processors, n32 ABI (‘mips64el-linux’)
|
|
|
|
|
|
2013-12-10 16:14:23 -05:00
|
|
|
|
Bootstrap binaries have been built for that architecture, and several
|
2013-12-10 15:53:59 -05:00
|
|
|
|
Loongson-specific patches not yet available upstream have been applied to core
|
|
|
|
|
packages. See “GNU Distribution” and “Porting” in the manual.
|
|
|
|
|
|
|
|
|
|
Pre-built binaries are not yet available via hydra.gnu.org, so Guix will
|
2013-12-10 16:14:23 -05:00
|
|
|
|
build from source on this platform.
|
2013-12-10 15:53:59 -05:00
|
|
|
|
|
2013-12-11 07:06:19 -05:00
|
|
|
|
*** 110 new packages
|
|
|
|
|
|
|
|
|
|
acct, alive, alsa-utils, apl, at-spi2-atk, at-spi2-core, atkmm, autogen,
|
|
|
|
|
automoc4, brasero, bridge-utils, cairomm, catkin, complexity, evince, ffmpeg,
|
|
|
|
|
fftw, ftgl, gcc-objc, gcc-objc++, gccgo, gcl, gfortran, glibmm, glpk,
|
|
|
|
|
gnome-icon-theme, gnu-pw-mgr, gp2c, gpgme, gsettings-desktop-schemas, gtkmm,
|
|
|
|
|
gtksourceview, guile-ssh, guile-wm, gvpe, hicolor-icon-theme, httpd, icecat,
|
|
|
|
|
icon-naming-utils, json-c, lapack, libcanberra, libcap, libgnome-keyring,
|
|
|
|
|
libmikmod, libnl, libnotify, libsamplerate, libsigc++, libsndfile, libssh,
|
|
|
|
|
libtheora, libxkbcommon, mercurial, mtools, netcat, pangomm, parallel,
|
|
|
|
|
pavucontrol, pciutils, pem, perl-encode-locale, perl-file-list,
|
|
|
|
|
perl-file-listing, perl-html-parser, perl-html-tagset, perl-http-cookies,
|
|
|
|
|
perl-http-daemon, perl-http-date, perl-http-message, perl-http-negotiate,
|
|
|
|
|
perl-io-html, perl-libwww, perl-libxml, perl-lwp-mediatypes, perl-net-http,
|
|
|
|
|
perl-uri, perl-www-robotrules, perl-xml-dom, perl-xml-regexp, perl-xml-simple,
|
|
|
|
|
phonon, powertop, pulseaudio, python2-dogtail, python2-empy, qemu-headless,
|
|
|
|
|
qt, qt, raptor2, scons, sdl, sdl-gfx, sdl-image, sdl-mixer, sdl-net, sdl-ttf,
|
|
|
|
|
sdl2, serveez, shared-mime-info, sharutils, skribilo, slim, soprano, swig,
|
|
|
|
|
xcb-util, xcb-util-image, xcb-util-keysyms, xcb-util-renderutil, xcb-util-wm
|
|
|
|
|
|
|
|
|
|
*** 47 package updates
|
|
|
|
|
|
|
|
|
|
atk 2.10.0, bison 3.0.2, cmake 2.8.12, dmd 0.1, freeipmi 1.3.3, gcc 4.8.2,
|
|
|
|
|
gcc 4.8.2, gcc-cross-mips64el-linux-gnuabi64 4.8.2, gcc-stripped-tarball 4.8.2,
|
|
|
|
|
gdb 7.6.2, gettext 0.18.3.1, glib 2.38.0, global 6.2.9, gmp 5.1.3,
|
|
|
|
|
gnupg 2.0.22, gobject-introspection 1.38.0, grep 2.15, gsl 1.16,
|
|
|
|
|
gtk+ 2.24.21, gtk+ 3.10.1, guile 2.0.9, guile 2.0.9, guile-xcb 1.2,
|
|
|
|
|
harfbuzz 0.9.22, hello 2.9, iproute2 3.12.0, libdrm 2.4.46,
|
|
|
|
|
libextractor 1.2, libjpeg 9, libmicrohttpd 0.9.32, lightning 2.0.2,
|
|
|
|
|
linux-libre 3.12, lzip 1.15, make 4.0, mit-krb5 1.11.3, pari-gp 2.5.5,
|
|
|
|
|
pixman 0.32.4, python 3.3.2, qemu 1.6.1,
|
|
|
|
|
qemu-with-multiple-smb-shares 1.6.1, rcs 5.9.2, recutils 1.6, rsync 3.1.0,
|
|
|
|
|
tar 1.27.1, texinfo 5.2, units 2.02, xorriso 1.3.2
|
2013-12-10 15:53:59 -05:00
|
|
|
|
|
|
|
|
|
*** Packages are now built with GCC 4.8.2 by default (was 4.7.3)
|
|
|
|
|
|
|
|
|
|
** Native language support
|
|
|
|
|
*** New ‘sr’ (Serbian) translation
|
|
|
|
|
*** New ‘vi’ (Vietnamese) translation
|
|
|
|
|
*** Updated ‘pt_BR’ (Brazilian Portuguese) translation
|
|
|
|
|
** Bugs fixed
|
2013-12-10 16:14:23 -05:00
|
|
|
|
*** ‘guix pull’ compiles Guix deterministically and correctly
|
2013-12-10 15:53:59 -05:00
|
|
|
|
|
|
|
|
|
Previously, the build environment was not cleared in between ‘compile-file’
|
|
|
|
|
calls, leading to build errors due to Guile bug http://bugs.gnu.org/15602 .
|
|
|
|
|
|
|
|
|
|
*** ‘guix package’ allows removal of a specific package output
|
|
|
|
|
(http://bugs.gnu.org/15756)
|
2013-12-11 07:06:19 -05:00
|
|
|
|
*** ‘guix-daemon’ always sets umask to 022
|
|
|
|
|
(http://lists.gnu.org/archive/html/bug-guix/2013-07/msg00033.html)
|
2013-12-10 15:53:59 -05:00
|
|
|
|
*** Files referenced by environment variables are protected from GC
|
2013-12-11 07:06:19 -05:00
|
|
|
|
*** Yet unbuilt packages get correctly installed (http://bugs.gnu.org/15283)
|
2013-12-10 15:53:59 -05:00
|
|
|
|
*** ‘bootstrap-graph.{png,eps,pdf}’ built in srcdir (http://bugs.gnu.org/15640)
|
|
|
|
|
|
2013-09-25 11:27:10 -04:00
|
|
|
|
* Changes in 0.4 (since 0.3)
|
|
|
|
|
|
|
|
|
|
** Package management
|
|
|
|
|
|
|
|
|
|
*** New ‘--list-generations’ and ‘--delete-generations’ options
|
|
|
|
|
|
|
|
|
|
The ‘guix package’ command has these two new options, which make it easier to
|
|
|
|
|
deal with a profile’s generation. See “Invoking guix package” in the manual.
|
|
|
|
|
|
|
|
|
|
*** New ‘guix-register’ program
|
|
|
|
|
|
|
|
|
|
This program allows the meta-data of a new store to be initialized, by
|
|
|
|
|
copying info from an existing store. It is mostly an internal tool.
|
|
|
|
|
|
|
|
|
|
** Programming interfaces
|
|
|
|
|
|
|
|
|
|
*** New API to bootstrap Autotools-based packages
|
|
|
|
|
|
|
|
|
|
The (guix build-system gnu) has a new ‘dist-package’ procedure that takes a
|
|
|
|
|
package object and source directory, and returns a new package object that
|
|
|
|
|
runs ‘./bootstrap && make dist’ or anything similar.
|
|
|
|
|
|
|
|
|
|
*** ‘derivation’ and related procedures have a #:references-graphs parameter
|
|
|
|
|
|
|
|
|
|
This parameter instructs the build daemon to populate the derivation’s build
|
|
|
|
|
tree with files containing the list of references of the given store files.
|
|
|
|
|
This is useful to write code that copies a packages and all its dependencies
|
|
|
|
|
to another storage device, such as a QEMU disk image.
|
|
|
|
|
|
|
|
|
|
*** Extended API to build a GNU system virtual machine image
|
|
|
|
|
|
|
|
|
|
The (gnu system vm) module has been augmented in many ways: the ‘qemu-image’
|
|
|
|
|
procedure can now populate and initialize the image’s store; the new
|
|
|
|
|
‘system-qemu-image’ procedure returns a QEMU image that runs dmd as its init
|
|
|
|
|
system, has ‘login’ running on several consoles, has a set of installed
|
|
|
|
|
packages, and where Guix can be used.
|
|
|
|
|
|
|
|
|
|
New (gnu system …) modules have been added to handle the configuration of the
|
|
|
|
|
various parts of a GNU/Linux system. For instance, (gnu system dmd) provides
|
|
|
|
|
support for instantiating dmd services; (gnu system linux) helps with Linux
|
|
|
|
|
PAM configuration; and so on.
|
|
|
|
|
|
|
|
|
|
*** <derivation> objects supersede .drv file names in the API
|
|
|
|
|
|
|
|
|
|
‘derivation’ and similar procedures no longer return two values (a
|
|
|
|
|
<derivation> and a .drv file name); they now return a single value, which is
|
|
|
|
|
a <derivation> object. The <derivation> object embeds the corresponding .drv
|
|
|
|
|
file name. See “Derivations” in the manual for details.
|
|
|
|
|
|
|
|
|
|
** GNU distribution
|
|
|
|
|
|
2013-09-26 19:50:59 -04:00
|
|
|
|
*** 60 new packages
|
|
|
|
|
|
|
|
|
|
apr, apr-util, cdparanoia, dbus-glib, dfc, dmd, dvdisaster, exiv2, fetchmail,
|
|
|
|
|
freefont-ttf, freeglut, geeqie, git, gkrellm, glu, gnome-doc-utils,
|
|
|
|
|
gst-plugins-base, gstreamer, guile-cairo, guile-lib, guile-xcb, guix, htop,
|
|
|
|
|
itstool, lame, libextractor, libmicrohttpd, lightning, lzip, mingetty, mutt,
|
|
|
|
|
net-base, net-tools, ocrad, pspp, python-babel, python-dateutil, python-pytz,
|
|
|
|
|
python-setuptools, python-simplejson, python-wrapper, python2-babel,
|
|
|
|
|
python2-dateutil, python2-mechanize, python2-pyicu, python2-pysqlite,
|
|
|
|
|
python2-pytz, python2-setuptools, python2-simplejson, qemu-system-initrd,
|
|
|
|
|
qemu-with-multiple-smb-shares, ripperx, shadow, ttf-bitstream-vera, units,
|
|
|
|
|
valgrind, xmlto, xnee, yasm
|
|
|
|
|
|
|
|
|
|
*** 27 package updates
|
|
|
|
|
|
|
|
|
|
bigloo 4.0b, cairo 1.12.16, ddrescue 1.17, fontconfig 2.10.93, fplll 4.0.4,
|
|
|
|
|
gcc 4.7.3, gcc 4.7.3, glibc 2.18, glibc 2.18, glibc-stripped-tarball 2.18,
|
|
|
|
|
gnupg 2.0.21, gnutls 3.2.4, guile 2.0.9, guile 2.0.9, harfbuzz 0.9.21,
|
|
|
|
|
imagemagick 6.8.6-9, libdrm 2.4.46, libgcrypt 1.5.3, libjpeg 9, libksba 1.3.0,
|
|
|
|
|
linux-libre 3.11, m4 1.4.17, mpfrcx 0.4.2, pari-gp 2.5.4, python 2.7.5, python
|
|
|
|
|
3.3.2, texlive 2013
|
2013-09-25 11:27:10 -04:00
|
|
|
|
|
|
|
|
|
*** Fontconfig font search path made more convenient
|
|
|
|
|
|
|
|
|
|
Fontconfig, the library used by many graphical applications, such as those
|
|
|
|
|
based on GTK+, now knows where to find the default set of fonts. Additional
|
|
|
|
|
fonts installed in the user profile are automatically picked up.
|
|
|
|
|
|
|
|
|
|
*** More GUI applications
|
|
|
|
|
|
|
|
|
|
The ‘emacs’ and ‘racket’ packages are now linked against GTK+. New GTK+
|
|
|
|
|
applications have been added (see above.)
|
|
|
|
|
|
|
|
|
|
*** Packaging guidelines
|
|
|
|
|
|
|
|
|
|
The documentation of packaging guidelines has been augmented. See the manual
|
|
|
|
|
under “GNU Distribution”.
|
|
|
|
|
|
|
|
|
|
*** Support for Python 3 along with Python 2
|
|
|
|
|
|
|
|
|
|
Python 3 has been added to the distribution, and Python packages that support
|
|
|
|
|
it are now built for both Python 2 and Python 3. See the “Python Modules”
|
|
|
|
|
section of the manual for details.
|
|
|
|
|
|
|
|
|
|
** Internationalization
|
|
|
|
|
|
|
|
|
|
Updated translations: eo.
|
|
|
|
|
|
|
|
|
|
** Bugs fixed
|
|
|
|
|
|
2013-09-26 19:50:59 -04:00
|
|
|
|
*** Workarounds for Guile 2.0.5 now work on Debian derivatives
|
2013-09-25 11:27:10 -04:00
|
|
|
|
*** The dependency graph image has correct size in PDF output
|
2013-09-26 19:50:59 -04:00
|
|
|
|
*** 'ldd' now works correctly on x86_64
|
2013-09-25 11:27:10 -04:00
|
|
|
|
*** Xorg server test suite no longer fails (http://bugs.gnu.org/15392)
|
2013-09-27 02:44:55 -04:00
|
|
|
|
*** module-init-tools now builds (http://bugs.gnu.org/15182, http://bugs.gnu.org/15187)
|
2013-09-26 19:50:59 -04:00
|
|
|
|
*** Hop 2.4 builds with newer Bigloo (http://bugs.gnu.org/15194)
|
2013-01-20 16:51:34 -05:00
|
|
|
|
|
2013-05-20 12:30:55 -04:00
|
|
|
|
* Changes in 0.3 (since 0.2)
|
|
|
|
|
|
|
|
|
|
** Package management
|
2013-06-01 18:13:00 -04:00
|
|
|
|
|
|
|
|
|
*** Cross-compilation support
|
|
|
|
|
|
|
|
|
|
Guix can now cross-build packages. On the command-line, this is achieved with
|
|
|
|
|
the new ‘--target’ command-line option of ‘guix build’. At the Scheme level,
|
|
|
|
|
the guts of this is the ‘package-cross-derivation’ procedure. Core packages
|
|
|
|
|
of the distribution can already be cross-compiled. See the manual for
|
|
|
|
|
details.
|
|
|
|
|
|
2013-05-20 12:30:55 -04:00
|
|
|
|
*** New ‘--max-silent-time’ option for “guix build” and “guix package”
|
|
|
|
|
|
|
|
|
|
See the manual for details.
|
|
|
|
|
|
2013-06-01 18:13:00 -04:00
|
|
|
|
*** New ‘--fallback’ option for “guix build” and “guix package”
|
|
|
|
|
|
|
|
|
|
This option instructs to fall back to local builds when the substituter fails
|
|
|
|
|
to download a substitute.
|
|
|
|
|
|
2013-06-13 16:15:41 -04:00
|
|
|
|
*** New ‘--requisites’ option for “guix gc”
|
|
|
|
|
|
|
|
|
|
See the manual for details.
|
|
|
|
|
|
2013-07-16 17:46:01 -04:00
|
|
|
|
*** New ‘--key-download’ option for “guix refresh”
|
|
|
|
|
|
|
|
|
|
See the manual for details.
|
2013-07-02 16:58:50 -04:00
|
|
|
|
|
|
|
|
|
** Programming interfaces
|
|
|
|
|
|
2013-07-16 17:46:01 -04:00
|
|
|
|
*** New ‘package-cross-derivation’ procedure in (guix derivations)
|
|
|
|
|
|
|
|
|
|
See the manual for details.
|
|
|
|
|
|
|
|
|
|
*** New ‘%current-target-system’ SRFI-39 parameter
|
|
|
|
|
|
|
|
|
|
This parameter is like ‘%current-system’, but for cross-compilation. It
|
|
|
|
|
allows code in package definitions (such as in the ‘arguments’ field) to know
|
|
|
|
|
whether it is being cross-compiled, and what the target system is.
|
|
|
|
|
|
2013-07-02 16:58:50 -04:00
|
|
|
|
*** New (guix hash) module; new ‘open-sha256-port’ and ‘sha256-port’ procedures
|
|
|
|
|
|
|
|
|
|
This improves performance of SHA256 computations.
|
|
|
|
|
|
2013-07-16 17:46:01 -04:00
|
|
|
|
|
|
|
|
|
** GNU distribution
|
|
|
|
|
|
2013-07-17 09:33:48 -04:00
|
|
|
|
*** 33 new packages
|
2013-07-16 17:46:01 -04:00
|
|
|
|
|
2013-07-17 09:33:48 -04:00
|
|
|
|
alsa-lib, babel, cairo, cvs, gcal, gcc-cross-mips64el-linux-gnuabi64, gd,
|
|
|
|
|
gdk-pixbuf, graphviz, grue-hunter, gtk+, gts, harfbuzz, imagemagick, iproute2,
|
|
|
|
|
iptables, libspectre, mpg321, noweb, pango, plotutils, privoxy, pytz, racket,
|
|
|
|
|
rubber, rush, strace, tk, torsocks, unrtf, vc-dwim, wordnet, xlockmore
|
2013-07-16 17:46:01 -04:00
|
|
|
|
|
2013-07-17 09:33:48 -04:00
|
|
|
|
*** 25 package updates
|
2013-07-16 17:46:01 -04:00
|
|
|
|
|
2013-07-17 09:33:48 -04:00
|
|
|
|
automake 1.14, ed 1.9, freeipmi 1.2.8, gawk 4.1.0, gcc 4.8.1, gettext 0.18.3,
|
|
|
|
|
glib 2.37.1, gmp 5.1.2, gnutls 3.2.1, gzip 1.6, help2man 1.43.3, libapr 1.4.8,
|
|
|
|
|
libaprutil 1.5.2, libassuan 2.1.1, libffi 3.0.13, libgc 7.2d, libgpg-error
|
|
|
|
|
1.12, libidn 1.28, libpng 1.5.17, lout 3.40, lsh 2.1, nettle 2.7.1, qemu
|
|
|
|
|
1.5.1, tzdata 2013d, xorriso 1.3.0
|
2013-07-16 17:46:01 -04:00
|
|
|
|
|
|
|
|
|
*** Binary packages now available for i686-linux
|
|
|
|
|
|
|
|
|
|
The build farm at http://hydra.gnu.org now provides 32-bit GNU/Linux binaries
|
|
|
|
|
(i686-linux), in addition to the x86_64-linux binaries. Both can be
|
|
|
|
|
transparently used as substitutes for local builds on these platforms.
|
|
|
|
|
|
|
|
|
|
*** Debug info packages
|
|
|
|
|
|
|
|
|
|
Some packages now have a “debug” output containing debugging information. The
|
|
|
|
|
“debug” output can be used by GDB, and can be installed separately from the
|
|
|
|
|
other outputs of the package. See “Installing Debugging Files” in the manual.
|
|
|
|
|
|
|
|
|
|
*** Bootstrap binaries can be cross-compiled
|
|
|
|
|
|
|
|
|
|
The distribution can now be ported to new architectures (currently
|
|
|
|
|
GNU/Linux-only) by cross-compiling the “bootstrap binaries”. See “Porting”
|
|
|
|
|
in the manual.
|
|
|
|
|
|
|
|
|
|
*** Bootstrapping documented
|
|
|
|
|
|
|
|
|
|
See “Bootstrapping” in the manual, for information on how the GNU
|
|
|
|
|
distribution builds “from scratch”.
|
|
|
|
|
|
|
|
|
|
** Internationalization
|
|
|
|
|
|
|
|
|
|
New translations: eo, pt_BR.
|
|
|
|
|
|
2013-05-20 12:30:55 -04:00
|
|
|
|
** Bugs fixed
|
|
|
|
|
*** “guix --help” now works when using Guile 2.0.5
|
|
|
|
|
*** Binary substituter multi-threading and pipe issues fixed
|
|
|
|
|
|
|
|
|
|
These could lead to random substituter crashes while substituting a binary.
|
|
|
|
|
See commits 0332386 and 101d9f3 for details.
|
|
|
|
|
|
2013-06-01 18:13:00 -04:00
|
|
|
|
*** Binary substituter gracefully handles lack of network connectivity
|
|
|
|
|
|
2013-06-14 11:05:32 -04:00
|
|
|
|
*** Daemon properly handles rebuilds of multiple-output derivations
|
|
|
|
|
|
|
|
|
|
Previously it would fail when rebuilding a multiple-output derivation when
|
|
|
|
|
some (but not all) of its outputs were already present. See
|
|
|
|
|
http://lists.gnu.org/archive/html/bug-guix/2013-06/msg00038.html and
|
|
|
|
|
https://github.com/NixOS/nix/issues/122 .
|
|
|
|
|
|
2013-07-16 17:46:01 -04:00
|
|
|
|
*** ‘guix package -i foo:out’ no longer removes other outputs of ‘foo’
|
|
|
|
|
|
|
|
|
|
Previously only the ‘out’ output of package ‘foo’ would be kept in the
|
|
|
|
|
profile.
|
|
|
|
|
|
2013-07-17 09:33:48 -04:00
|
|
|
|
*** Replacement (srfi srfi-37) provided if the user’s one is broken
|
|
|
|
|
|
|
|
|
|
When the user’s (srfi srfi-37) is affected by http://bugs.gnu.org/13176 (Guile
|
|
|
|
|
< 2.0.9), a replacement with the bug fix is provided. This bug would affect
|
|
|
|
|
command-line argument processing in some cases.
|
|
|
|
|
|
2013-01-20 16:51:34 -05:00
|
|
|
|
* Changes in 0.2 (since 0.1)
|
|
|
|
|
|
2013-04-27 11:10:41 -04:00
|
|
|
|
** 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”.
|
|
|
|
|
|
2013-05-08 10:08:25 -04:00
|
|
|
|
*** New “guix package --upgrade” option
|
|
|
|
|
|
|
|
|
|
As the name implies, this option atomically upgrades all the packages
|
2013-05-10 17:05:00 -04:00
|
|
|
|
installed in a profile or the set of packages matching a given regexp.
|
|
|
|
|
See “Invoking guix package” in the manual.
|
2013-05-08 10:08:25 -04:00
|
|
|
|
|
2013-05-12 10:35:08 -04:00
|
|
|
|
*** 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.
|
|
|
|
|
|
2013-04-27 11:10:41 -04:00
|
|
|
|
*** 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
|
2013-05-12 10:35:08 -04:00
|
|
|
|
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.
|
2013-04-27 11:10:41 -04:00
|
|
|
|
|
|
|
|
|
*** 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.
|
|
|
|
|
|
2013-05-12 10:35:08 -04:00
|
|
|
|
*** Nix daemon code updated
|
2013-04-27 11:10:41 -04:00
|
|
|
|
|
2013-05-12 10:35:08 -04:00
|
|
|
|
The daemon code from Nix, used by the ‘guix-daemon’ command, has been updated
|
|
|
|
|
to current Nix ‘master’.
|
2013-04-27 11:10:41 -04:00
|
|
|
|
|
|
|
|
|
** Programming interfaces
|
|
|
|
|
|
2013-05-12 10:35:08 -04:00
|
|
|
|
*** (guix download) now supports HTTPS, using GnuTLS
|
|
|
|
|
|
|
|
|
|
It allows package source tarballs to be retrieved over HTTPS.
|
|
|
|
|
|
2013-04-27 11:10:41 -04:00
|
|
|
|
*** 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.
|
|
|
|
|
|
2013-05-11 16:50:01 -04:00
|
|
|
|
*** 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.
|
|
|
|
|
|
2013-04-27 11:10:41 -04:00
|
|
|
|
** 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
|
|
|
|
|
|
2013-05-12 10:35:08 -04:00
|
|
|
|
TeXLive, Xorg, GNU GRUB, GNU Parted, QEMU and QEMU-KVM, Avahi, Bigloo,
|
|
|
|
|
CHICKEN, Scheme48, Hugs, Python, Lua, Samba.
|