gnu: Add Camlp4.
[jackhill/guix/guix.git] / NEWS
CommitLineData
06504acb
LC
1 -*- org -*-
2#+TITLE: Guix NEWS – history of user-visible changes
3#+STARTUP: content hidestars
4056b828 4
43faf869 5Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
4056b828
LC
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
11Please send Guix bug reports to bug-guix@gnu.org.
12
617372ef
LC
13* Changes in 0.8.3 (since 0.8.2)
14
15** Package management
16
17*** New ‘guix edit’ and ‘guix size’ commands
18*** New ‘--manifest’ option for ‘guix package’, for declarative profiles
19*** Similarly, new ‘M-x guix-apply-manifest’ for the Emacs UI
20*** Emacs support now includes completion for ‘guix’ commands in shell-mode
21*** ‘guix package --search-paths’ now takes an optional argument
22*** ‘guix environment --ad-hoc’ creates a custom development environment
23*** New ‘--system’ option for ‘guix environment’
24*** ‘guix environment’ defines $GUIX_ENVIRONMENT, useful to adjust ‘PS1’
25*** New ‘--optimize’ and ‘--verify’ options to ‘guix gc’
26*** ‘guix build --with-source’ can now be passed a directory
27*** New ‘elpa’ importer for ‘guix import’
28*** ‘guix import pypi’ determines the list of dependencies
29*** New ‘--substitute-urls’ option for ‘guix build’ and other commands
30*** ‘guix substitute’ can now alternate between different substitute URLs
31*** New “Running Guix Before It Is Installed” section in the manual
32*** Basic manual pages for the ‘guix’ commands are now shipped
33*** Building the daemon now necessitates a C++11 compiler
34
35** Distribution
36
37*** New ‘%base-user-accounts’ variable, for common system accounts
38*** New ‘--on-error’ option for ‘guix system’
39*** New ‘plain-file’ construct, for use in ‘operating-system’ declarations
40*** ‘sudoers’ field of ‘operating-system’ renamed to ‘sudoers-file’
41*** ‘sudoers-file’ and ‘hosts-file’ fields now take file-like objects
42*** File systems under /sys/fs/cgroup are now mounted by default
43*** Default compiler is now GCC 4.9.3 (was 4.8.4)
44*** ARMv7 port now requires NEON
45*** The disk footprint of a dozen key packages has been reduced
46
47*** XXX new packages
48
49*** XXX package updates
50
51** Programming interfaces
52
53*** New “package Reference” and “origin Reference” sections in the manual
54*** monads: ‘foldm’, ‘mapm’, and ‘anym’ now take a list of regular values
55*** monads: Allow n-ary ‘>>=’ expressions
56*** New (guix cpio) module, used to produce Linux initrds deterministically
57*** New ‘clone’, ‘setns’, and ‘pivot_root’ bindings in (guix build syscalls)
58*** New ‘dependencies’ field in <file-system>
59*** New #:gem-flags parameter for ‘ruby-build-system’
60
61** Noteworthy bug fixes
62
63*** Binary installation tarball now has files root-owned, with zeroed mtime
64*** GRUB background image is always available (<http://bugs.gnu.org/20591>)
65*** ‘guix system’ catches references to non-existent user groups
66*** Ignore trailing components for ‘guix gc -d’ (<http://bugs.gnu.org/19757>)
67*** ‘guix lint’ warns only when all the URIs are unreachable
68*** ‘guix system init’ overwrites the items in the target store
69 (<http://bugs.gnu.org/20722>)
70*** ‘guix-register’ performs deduplication even when --prefix is passed
71 (<http://bugs.gnu.org/19044>)
72*** The ‘location’ of packages is no longer preserved by ‘inherit’
73*** GuixSD installation image has udev rules for device-mapper
74 (<http://bugs.gnu.org/20791>)
75*** Daemon distinguishes between “substitutable” and “offloadable” derivations
76 (<http://bugs.gnu.org/18747>)
77*** Avoid infinite loop in ‘guix substitute’
78*** ‘guix environment’ now returns the exit code of its command
79*** ‘file-system’ declarations can now really use UUIDs
80 (<http://bugs.gnu.org/19778>)
81*** Daemon preserves build user groups (<http://bugs.gnu.org/18994>)
82*** Fix quadratic behavior when building packages with many propagated inputs
83*** Tarballs for origins with patches/snippet are now build deterministically
84
85** Native language support
86
87*** Updated translations: da, eo
88
6b832e4d
LC
89* Changes in 0.8.2 (since 0.8.1)
90
91** Package management
92
93*** New “binary tarball” installation method is available
94
95See “Binary Installation” in the manual.
96
97*** New ‘guix publish’ command, to publish one’s store
98
99See “Invoking guix publish” in the manual.
100
101*** ‘guix package’ runs “profile creation hooks” as needed
102
103It creates X.509 certificate bundles in the profile’s etc/ssl directory, if
104needed, generates a package database cache for GHC if the profile includes GHC
105(the Haskell compiler), and generates an Info ‘dir’ file (this part was
106already done before.)
107
108*** ‘guix package’ creates an ‘etc/profile’ file in the profile
109
110See “Invoking guix package” in the manual.
111
112*** Commands understand version prefixes, such as ‘gcc-5’ for ‘gcc-5.1.0’
113
114*** ‘guix package --search’ now sorts packages by name and version
115
116*** Substitute information is now fetched using HTTP pipelining
117
118Before that the “substituter” used threads. Using HTTP pipelining means that
119resource consumption is reduced on both the client and server sides. As a
120side effect, a progress report is displayed as substitute info is downloaded.
121
122*** ‘guix package’ warns when a $GUIX_PACKAGE_PATH module cannot be loaded
123
124*** New ‘--sources’ option to ‘guix build’
125
126*** New Bash completion file, installed in $sysconfdir/bash_completion.d
127
128*** New ‘guix import hackage’ command
129
130See “Invoking guix import” in the manual.
131
132*** ‘guix lint’ supports FTP for the ‘source’ and ‘home-page’ checkers
133
134*** ‘guix lint’ has a new ‘derivation’ checker
135
136*** ‘guix import cpan’ better handles dependencies and licenses
137
138*** Packages are now build in an environment with a UTF-8 locale
139
140** Distribution
141
142*** C library's name service switch (NSS) is now fully configurable
143
144See “Name Service Switch” in the manual.
145
d423ac60 146*** New services: wicd, lirc, colord, upower, console-keymap, postgresql
6b832e4d
LC
147
148*** Xorg service supports new drivers, such as Nouveau
149
150*** lsh service has new options, initializes its seed by default
151
152*** /etc/ssl symlink is created, for X.509 certificates
153
154See “X.509 Certificates” in the manual.
155
156*** ‘guix system’ reports duplicate service identifiers
157
158*** New /etc/bashrc file that loads Bash completion when available
159
160*** SLiM service uses sessions from /run/current-system/profile/share/xsessions
161
162See “X Window” in the manual.
163
164*** The Linux “YAMA” restricting policy on PTRACE_ATTACH is now disabled
165
166*** /etc/shells now lists all the user accounts’ shells
167
168*** /gnu/store is now remounted read-only, to avoid accidental modification
169
170*** /etc/profile is sources each profile’s ‘etc/profile’ file
171
ec6b5a99
LC
172*** 718 new packages
173
174aalib, aarddict, acpid, agg, aisleriot, alsa-modular-synth, ant, ardour,
175ardour, argtable, arpack-ng, aspell-dict-ru, aubio, audacity, avidemux,
176avidemux, azr3, bamtools, bash-completion, bedops, bind-utils, bluez, bool,
177brdf-explorer, bwa, calf, calibre, catch, ccl, chibi-scheme, chmlib,
178clalsadrv, clipper, clisp, clustal-omega, colord, colordiff, cpufrequtils,
179crossmap, csound, ctl, cunit, cutadapt, desktop-file-utils, djvulibre,
180dnsmasq, dosfstools, double-conversion, dovecot, ecl, efl, elementary,
181elogind, emacs-no-x, emotion-generic-players, enca, enlightenment,
182evas-generic-loaders, exim, express, extremetuxracer, faad2, fastx-toolkit,
183fcitx, fdupes, flexbar, fluidsynth, font-adobe-source-han-sans,
184font-wqy-zenhei, freepats, gambit-c, ganv, geda-gaf, geoclue, geocode-glib,
185ghc, ghc-case-insensitive, ghc-containers, ghc-fgl, ghc-hashable, ghc-http,
186ghc-hunit, ghc-mtl, ghc-network, ghc-network-uri, ghc-parallel, ghc-parsec,
187ghc-paths, ghc-primitive, ghc-quickcheck, ghc-random, ghc-split, ghc-stm,
188ghc-syb, ghc-text, ghc-tf-random, ghc-unordered-containers, ghc-vector,
189ghc-zlib, girara, gitolite, glib-networking, glibc-locales,
190glibc-utf8-locales, glibc-utf8-locales, glm, gnome-mines,
191gnome-settings-daemon, gnome-terminal, gnucash, gnugo, grit, gst-libav,
192guile-minikanren, guile-reader, hdparm, hisat, htseq, htsjdk, hunspell,
193hyphen, i2c-tools, ibus, icecast, icedtea6, icedtea7, ilmbase, ir, isync,
194ixion, jack2, jalv, jansson, jemalloc, julia, key-mon, ladspa, lash,
195leptonica, liba52, libabw, libaio, libass, libavc1394, libbluray, libbs2b,
196libcaca, libcap-ng, libcdio-paranoia, libcdr, libdca, libdv, libdvdcss,
197libe-book, libedit, libepoxy, libetonyek, libexttextcat, libffcall,
198libfreehand, libgnomecanvasmm, libgtextutils, libgweather, libical,
199libiec61883, libinput, liblo, libmodplug, libmspack, libmspub, libmtp,
200libmwaw, libodfgen, libpagemaker, libqtxdg, libquvi, libquvi-scripts,
201libraw1394, librecad, librep, librevenge, libsbsms, libsecret, libshout,
202libsoup, libsrtp, libtocc, libungif, libva, libvisio, libwacom, libwebp,
203libwpd, libwpg, libwps, libxklavier, libxmp, libyaml, lilv, lilypond, lirc,
204livestreamer, ltrace, lv2, lv2-mda-epiano, lv2-mda-piano, lvtk, macs, mariadb,
205markdown, mdadm, mdds, mesa-headers, mesa-utils, miredo, miso, moreutils,
206mpd-mpc, mpdscribble, mplayer2, mpv, muparser, mythes, ncbi-vdb, ngircd,
207ngs-java, ngs-sdk, npth, nss-certs, openblas, openexr, openlibm, openntpd,
208openspecfun, openvpn, orc, orcus, p11-kit, patchage, pbtranscript-tofu, pcb,
209perl-algorithm-c3, perl-algorithm-diff, perl-aliased,
210perl-apache-logformat-compiler, perl-appconfig, perl-b-hooks-endofscope,
211perl-base, perl-bit-vector, perl-boolean, perl-cache-cache,
212perl-cache-fastmmap, perl-capture-tiny, perl-carp-assert,
213perl-carp-assert-more, perl-carp-clan, perl-catalyst-action-renderview,
214perl-catalyst-action-rest, perl-catalyst-component-instancepercontext,
215perl-catalyst-devel, perl-catalyst-dispatchtype-regex,
216perl-catalyst-model-dbic-schema, perl-catalyst-plugin-accesslog,
217perl-catalyst-plugin-authentication, perl-catalyst-plugin-captcha,
218perl-catalyst-plugin-configloader, perl-catalyst-plugin-session,
219perl-catalyst-plugin-session-state-cookie,
220perl-catalyst-plugin-session-store-fastmmap, perl-catalyst-plugin-stacktrace,
221perl-catalyst-plugin-static-simple, perl-catalyst-runtime,
222perl-catalyst-traitfor-request-proxybase, perl-catalyst-view-download,
223perl-catalyst-view-json, perl-catalyst-view-tt,
224perl-catalystx-component-traits, perl-catalystx-roleapplicator,
225perl-catalystx-script-server-starman, perl-cgi-simple, perl-cgi-struct,
226perl-class-accessor, perl-class-accessor-chained, perl-class-accessor-grouped,
227perl-class-c3, perl-class-c3-adopt-next, perl-class-c3-componentised,
228perl-class-data-inheritable, perl-class-date, perl-class-factory-util,
229perl-class-inspector, perl-class-load, perl-class-load-xs,
230perl-class-method-modifiers, perl-class-methodmaker, perl-class-singleton,
231perl-class-tiny, perl-class-unload, perl-class-xsaccessor, perl-common-sense,
232perl-compress-raw-bzip2, perl-compress-raw-zlib, perl-config-any,
233perl-config-autoconf, perl-config-general, perl-context-preserve,
234perl-cpan-meta, perl-cpan-meta-check, perl-cpan-meta-requirements,
235perl-cpan-meta-yaml, perl-cpanel-json-xs, perl-crypt-randpasswd,
236perl-data-dump, perl-data-dumper-concise, perl-data-optlist, perl-data-page,
237perl-data-stream-bulk, perl-data-tumbler, perl-data-visitor, perl-date-calc,
238perl-date-calc-xs, perl-datetime, perl-datetime-event-ical,
239perl-datetime-event-recurrence, perl-datetime-format-builder,
240perl-datetime-format-flexible, perl-datetime-format-http,
241perl-datetime-format-ical, perl-datetime-format-natural,
242perl-datetime-format-strptime, perl-datetime-locale, perl-datetime-set,
243perl-datetime-timezone, perl-datetimex-easy, perl-dbd-pg, perl-dbix-class,
244perl-dbix-class-cursor-cached, perl-dbix-class-introspectablem2m,
245perl-dbix-class-schema-loader, perl-devel-caller, perl-devel-checkbin,
246perl-devel-globaldestruction, perl-devel-lexalias, perl-devel-overloadinfo,
247perl-devel-partialdump, perl-devel-stacktrace, perl-devel-stacktrace-ashtml,
248perl-devel-symdump, perl-digest-hmac, perl-digest-md5-file,
249perl-dist-checkconflicts, perl-email-abstract, perl-email-address,
250perl-email-date-format, perl-email-messageid, perl-email-mime,
251perl-email-mime-contenttype, perl-email-mime-encodings, perl-email-sender,
252perl-email-simple, perl-error, perl-eval-closure, perl-exception-class,
253perl-exporter-tiny, perl-extutils-config, perl-extutils-helpers,
254perl-extutils-installpaths, perl-file-changenotify, perl-file-copy-recursive,
255perl-file-find-rule, perl-file-find-rule-perl, perl-file-homedir,
256perl-file-remove, perl-file-sharedir, perl-file-sharedir-install,
257perl-file-slurp, perl-file-temp, perl-gd, perl-gd-securityimage,
258perl-getopt-long-descriptive, perl-hash-merge, perl-hash-multivalue,
259perl-html-form, perl-html-lint, perl-html-tree, perl-http-body,
260perl-http-cookiejar, perl-http-parser, perl-http-parser-xs,
261perl-http-request-ascgi, perl-http-server-simple, perl-http-tiny,
262perl-image-magick, perl-import-into, perl-inc-latest, perl-io-compress,
263perl-io-interactive, perl-io-socket-ip, perl-io-stringy, perl-ipc-run,
264perl-ipc-sharelite, perl-json, perl-json-any, perl-json-maybexs, perl-json-xs,
265perl-lingua-en-findnumber, perl-lingua-en-inflect,
266perl-lingua-en-inflect-number, perl-lingua-en-inflect-phrase,
267perl-lingua-en-number-isordinal, perl-lingua-en-tagger,
268perl-lingua-en-words2nums, perl-lingua-pt-stemmer, perl-lingua-stem,
269perl-lingua-stem-fr, perl-lingua-stem-it, perl-lingua-stem-ru,
270perl-lingua-stem-snowball-da, perl-list-allutils, perl-list-moreutils,
271perl-lwp-protocol-https, perl-lwp-useragent-determined,
272perl-memoize-expirelru, perl-mime-types, perl-module-build,
273perl-module-build-tiny, perl-module-find, perl-module-implementation,
274perl-module-install, perl-module-runtime, perl-module-runtime-conflicts,
275perl-module-scandeps, perl-module-util, perl-moo, perl-moose,
276perl-moosex-emulate-class-accessor-fast, perl-moosex-getopt,
277perl-moosex-markasmethods, perl-moosex-methodattributes, perl-moosex-nonmoose,
278perl-moosex-params-validate, perl-moosex-relatedclassroles,
279perl-moosex-role-parameterized, perl-moosex-role-withoverloading,
280perl-moosex-semiaffordanceaccessor, perl-moosex-strictconstructor,
281perl-moosex-traits-pluggable, perl-moosex-types, perl-moosex-types-datetime,
282perl-moosex-types-datetime-morecoercions, perl-moosex-types-loadableclass,
283perl-moox-types-mooselike, perl-mro-compat, perl-namespace-autoclean,
284perl-namespace-clean, perl-net-amazon-s3, perl-net-server,
285perl-number-compare, perl-object-signature, perl-package-anon,
286perl-package-deprecationmanager, perl-package-stash, perl-package-stash-xs,
287perl-padwalker, perl-par-dist, perl-params-util, perl-params-validate,
288perl-parent, perl-parse-cpan-meta, perl-path-class, perl-plack,
289perl-plack-middleware-fixmissingbodyinredirect,
290perl-plack-middleware-methodoverride,
291perl-plack-middleware-removeredundantbody, perl-plack-middleware-reverseproxy,
292perl-plack-test-externalserver, perl-pod-coverage,
293perl-posix-strftime-compiler, perl-readonly, perl-role-tiny, perl-safe-isa,
294perl-scalar-list-utils, perl-scope-guard, perl-set-infinite, perl-set-scalar,
295perl-snowball-norwegian, perl-snowball-swedish, perl-spiffy,
296perl-sql-abstract, perl-sql-splitstatement, perl-sql-tokenizer,
297perl-stream-buffered, perl-strictures, perl-string-camelcase,
298perl-string-rewriteprefix, perl-string-toidentifier-en, perl-sub-exporter,
299perl-sub-exporter-progressive, perl-sub-identify, perl-sub-install,
300perl-sub-name, perl-sub-uplevel, perl-svg, perl-sys-hostname-long,
301perl-task-weaken, perl-template-timer, perl-template-toolkit,
302perl-term-encoding, perl-term-progressbar, perl-term-progressbar-quiet,
303perl-term-progressbar-simple, perl-term-readkey, perl-test-base,
304perl-test-cleannamespaces, perl-test-differences, perl-test-directory,
305perl-test-exception, perl-test-fatal, perl-test-harness, perl-test-leaktrace,
306perl-test-longstring, perl-test-mockobject, perl-test-mocktime,
307perl-test-most, perl-test-output, perl-test-pod, perl-test-pod-coverage,
308perl-test-requires, perl-test-sharedfork, perl-test-tcp, perl-test-trap,
309perl-test-utf8, perl-test-warn, perl-test-warnings, perl-test-without-module,
310perl-test-writevariants, perl-test-www-mechanize,
311perl-test-www-mechanize-catalyst, perl-test-www-mechanize-psgi,
312perl-test-yaml, perl-text-aligner, perl-text-balanced, perl-text-csv,
313perl-text-diff, perl-text-german, perl-text-glob, perl-text-simpletable,
314perl-text-table, perl-text-unidecode, perl-throwable, perl-tie-ixhash,
315perl-tie-toobject, perl-time-duration, perl-time-duration-parse,
316perl-time-local, perl-time-mock, perl-timedate, perl-tree-simple,
317perl-tree-simple-visitorfactory, perl-try-tiny, perl-types-serialiser,
318perl-universal-can, perl-universal-isa, perl-uri-find, perl-uri-ws,
319perl-variable-magic, perl-www-mechanize, perl-xml-libxml,
320perl-xml-namespacesupport, perl-xml-sax, perl-xml-sax-base, perl-yaml,
321perl-yaml-tiny, ploticus, polipo, portaudio, pumpa, python-apsw,
322python-biopython, python-cssselect, python-dbus, python-decorator,
323python-drmaa, python-h5py, python-lxml, python-netifaces, python-networkx,
324python-pyxdg, python-pyyaml, python-requests, python-scikit-learn,
325python-singledispatch, python-sphinx-rtd-theme, python-sympy, python-testlib,
326python-tornado, python-urwid, python-waf, python2-apsw,
327python2-backport-ssl-match-hostname, python2-biopython, python2-bx-python,
328python2-cssselect, python2-cssutils, python2-dbus, python2-decorator,
329python2-drmaa, python2-h5py, python2-lxml, python2-netifaces,
330python2-networkx, python2-pbcore, python2-pil, python2-pybedtools,
331python2-pycairo, python2-pyxdg, python2-pyyaml, python2-rdflib, python2-rsvg,
332python2-scikit-learn, python2-singledispatch, python2-six,
333python2-sphinx-rtd-theme, python2-sympy, python2-testlib, python2-tornado,
334python2-urwid, python2-waf, python2-xlib, quvi, r, rdesktop, recode, rep-gtk,
335rseqc, rsound, rubberband, ruby-hoe, rxvt-unicode, s2tc, sawfish, sbcl, seqan,
336serd, serf, sfml, shogun, sloccount, smartmontools, snakemake, soil, solfege,
337sord, soundtouch, soxr, sra-tools, sratom, srt2vtt, star, starman, stow,
338subread, suil, suitesparse, swt, sysfsutils, sysfsutils, taskwarrior, tbb,
339terminology, tesseract-ocr, texlive-bin, texlive-texmf, the-silver-searcher,
340tidy, tig, timidity++, tocc, totem-pl-parser, tree, tuxguitar, tvtime,
341twolame, txt2man, unqlite, upower, utf8proc, vamp, vapoursynth, vcftools,
342vigra, wavpack, webkitgtk, webkitgtk, weex, wicd, wpa-supplicant-light,
343wxwidgets, wxwidgets, xbindkeys, xcape, xdg-utils, xf86-input-libinput,
344xf86-input-wacom, xf86-video-nouveau, xfce, xmp, xosd, xournal, xvid, zathura,
345zathura-cb, zathura-djvu, zathura-pdf-poppler, zathura-ps, zeromq,
346zita-alsa-pcmi, zita-convolver
347
348*** 189 package updates
349
350acpica-20150410, apl-1.5, apr-1.5.2, arb-2.3.0, at-spi2-atk-2.16.0,
351at-spi2-core-2.16.0, atk-2.16.0, autogen-5.18.5, bison-3.0.4, boost-1.57.0,
352cairo-1.14.2, ccrtp-2.1.2, check-0.9.14, clang-3.6.0, cmake-3.2.2,
353complexity-1.2, cups-filters-1.0.68, curl-7.42.1, dbus-1.8.16,
354dbus-glib-0.104, dejagnu-1.5.3, docbook-xml-4.4, docbook-xml-4.5,
355e2fsck-static-1.42.12, e2fsprogs-1.42.12, ed-1.11, eigen-3.2.4,
356elfutils-0.161, emacs-24.5, emacs-no-x-toolkit-24.5, exo-0.10.3, ffmpeg-2.6.2,
357fish-2.1.2, flac-1.3.1, flint-2.4.5, fltk-1.3.3, freetype-2.5.5, garcon-0.4.0,
358gcc-5.1.0, gcc-toolchain-5.1.0, gdb-7.9, geiser-0.7, glib-2.44.0, glibc-2.21,
359glibc-2.21, glibc-stripped-tarball-2.21, glibmm-2.44.0, global-6.4,
360gnome-desktop-3.16.0, gnome-icon-theme-3.12.0, gnome-themes-standard-3.16.0,
361gnu-pw-mgr-1.3, gnubik-2.4.2, gnumach-headers-1.5, gnunet-0.10.1,
362gnupg-1.4.19, gnupg-2.0.27, gnupg-2.1.4, gnutls-3.4.0,
363gobject-introspection-1.44.0, gpgme-1.5.4, gsettings-desktop-schemas-3.16.0,
364gst-plugins-base-1.4.5, gst-plugins-good-1.4.5, gstreamer-1.4.5, gtk+-3.16.2,
365gtkmm-2.24.4, gtkmm-3.16.0, guile-ssh-0.7.2, guix-0.8.1, guix-0.8.1.fc34dee,
366help2man-1.46.6, httpd-2.4.12, hurd-headers-0.6, icecat-31.6.0-gnu1,
367icu4c-55.1, imagemagick-6.9.0-4, imlib2-1.4.7, inetutils-1.9.3, inkscape-0.91,
368isc-dhcp-4.3.1, itstool-2.0.2, kbd-2.0.2, libgcrypt-1.6.3, libgpg-error-1.18,
369libidn-1.30, libltdl-2.4.6, libmicrohttpd-0.9.40, libmikmod-3.3.7,
370libotr-4.1.0, libsigc++-2.4.1, libtasn1-4.5, libtool-2.4.6,
371libunistring-0.9.5, libuv-1.4.2, libvorbis-1.3.5, libxfce4ui-4.12.0,
372libxfce4util-4.12.1, libxfont-1.5.1, lightning-2.1.0, linux-libre-4.0.2,
373linux-libre-headers-3.14.37, llvm-3.6.0, lua-5.2.3, man-pages-3.82,
374mesa-10.5.4, mig-1.5, minetest-0.4.12, moe-1.7, mpc-1.0.3, mpd-0.19.9,
375mu-0.9.12, nano-2.4.1, ncmpcpp-0.6.2, nettle-3.1, nginx-1.8.0, node-0.12.2,
376notmuch-0.19, nspr-4.10.8, nss-3.18, ntp-4.2.8p2, ocrad-0.25, octave-3.8.2,
377openconnect-7.05, openjpeg-2.0.1, openjpeg-2.1.0, openldap-2.4.40,
378openssh-6.8p1, openssl-1.0.2a, pangomm-2.36.0, parallel-20150422,
379pari-gp-2.7.3, patch-2.7.5, perf-4.0.2, perl-libwww-6.13, perl-net-http-6.07,
380perl-net-ssleay-1.68, perl-test-simple-1.001014, perl-uri-1.67,
381pinentry-0.9.0, pius-2.0.11, podofo-0.9.3, poppler-0.32.0, postgresql-9.3.6,
382pulseaudio-6.0, python-3.4.3, python-pillow-2.7.0, python-pygobject-3.16.1,
383python-setuptools-12.1, python-wrapper-3.4.3, python2-dateutil-2.2,
384python2-pillow-2.7.0, python2-pygobject-3.16.1, python2-setuptools-12.1,
385qt-5.4.1, ruby-2.2.2, samba-3.6.25, scons-2.3.4, sdl2-2.0.3, sharutils-4.15.1,
386sipwitch-1.9.7, slock-1.2, source-highlight-3.1.8, sqlite-3.8.9,
387subversion-1.8.13, texinfo-5.2, thunar-1.6.6, thunar-volman-0.8.1,
388tor-0.2.5.12, tumbler-0.1.31, tzdata-2015c, ucommon-6.3.1, vala-0.28.0,
389valgrind-3.10.1, vlc-2.2.0, vte-0.40.0, wget-1.16.3, wine-1.7.40,
390wpa-supplicant-2.4, xboard-4.8.0, xfce4-appfinder-4.12.0, xfce4-panel-4.12.0,
391xfce4-session-4.12.0, xfce4-settings-4.12.0, xfconf-4.12.0, xfdesktop-4.12.0,
392xfwm4-4.12.0, xorg-server-1.16.4, xterm-317
6b832e4d
LC
393
394** Programming interfaces
395
396*** New (guix build gremlin) to parse and validate ELF dynamic link info
397
398*** (guix build-system gnu) has a new ‘validate-runpath’ phase
399
400This phase reads the dynamic entries of ELF files and reports libraries listed
401as NEEDED that are not found in the RUNPATH.
402
403*** New (gnu services desktop) module and ‘%desktop-services’ variable
404
405*** New (guix cvs-download) module, for CVS checkouts
406
407*** New (guix build-system waf) module, for the Waf build system
408
409*** New (guix build-system haskell) module, to build Haskell packages
410
411*** (guix build-system gnu) now supports zip archives
412
413*** New convenience syntax ‘modify-phases’ added in (guix build utils)
414
415*** The ‘ld’ wrapper more finely determines whether to use ‘-rpath’
416
417*** (guix gexp) exports ‘gexp-input’ to describe input unambiguously
418
419*** The ‘define-gexp-compiler’ form allows (guix gexp) to be extended
420
421*** New ‘local-file’ constructor exported by (guix gexp)
422
423** Noteworthy bug fixes
424
425*** Profiles created with ‘guix package -p’ as indirect GC roots
426
427Before that they were made permanent GC roots–i.e., uncollectable.
428
429*** ‘guix package’ distinguishes downgrades from upgrades
430
431*** Handle HTTP redirects to relative URI references
432 (<http://bugs.gnu.org/19840>)
433
434*** Downloads now honor the ‘http_proxy’ environment variable
435 (<http://bugs.gnu.org/20402>)
436
437*** ‘--no-*’ options are now always correctly handled
438 (<http://lists.gnu.org/archive/html/guix-devel/2015-02/msg00702.html>)
439
440*** SLiM no longer leaks open file descriptors
441
442*** Don't compare <pam-service> objects with 'equal?'
443 (<http://bugs.gnu.org/20037>)
444
445*** x86_64 and i686 bootstrap binaries updated (<http://bugs.gnu.org/19780>)
446
447*** ‘find-files’ no longer follows symlinks (<http://bugs.gnu.org/20081>)
448
449*** libc message catalog (‘libc.mo’) is now installed
450
451*** libstdc++ has appropriate RUNPATH (<http://bugs.gnu.org/20358>)
452
453*** ‘dhcp-client-service’ now correctly tracks dhclient’s PID
454
455** Native language support
456
457*** New translations: da (Danish)
458
459*** Updated translations: eo
460
43faf869
LC
461* Changes in 0.8.1 (since 0.8)
462
463** Package management
464
465*** New ‘--share’ and ‘--expose’ options for ‘guix system vm’
466
467See “Invoking guix system” in the manual.
468
469*** Emacs mode now automatically loads newly installed Emacs packages
470
471See “Emacs Initial Setup” in the manual.
472
473*** ‘guix-daemon’ now defaults to ‘--cores=0 --jobs=1’
474
475In other words, at any given time, only one derivation is being built or
476substituted, and it can use as many cores as available. Before, there could
477be N derivations using N cores, which was obviously not desirable.
478
479*** Command-line tools support the ‘GUIX_BUILD_OPTIONS’ environment variable
480
481See “Invoking guix build” in the manual.
482
483*** ‘guix environment’ is faster
484
485*** New ‘--recursive’ option for ‘guix archive’
486
487See “Invoking guix archive” in the manual.
488
489*** Missing patches required by a package definition are gracefully reported
490
491*** ‘guix lint’ supports additional checkers
492
493The new checkers are ‘gnu-description’, ‘home-page’, and ‘source’.
494See “Invoking guix lint” in the manual.
495
496*** New CPAN importer for ‘guix import’
497
498See “Invoking guix import” in the manual.
499
43faf869
LC
500** Distribution
501
502*** USB installation image has more tools
503
504Tools added since 0.8: wpa_supplicant, cryptsetup, and iw.
505
506*** Linux kernel module dependencies are automatically handled
507
508Before that, all the modules needed in the initrd would need to be explicitly
509listed, including their dependencies, and in topological order.
510
511*** Font packages now all have a name starting with ‘font-’
512
513See “Fonts” in the manual.
514
515*** Shell startup files have been cleaned up
516
517/etc/profile contains only environment variable definitions, which may also be
518used when running a different shell. The skeletons for user’s ‘.bash_profile’
519and ‘.bashrc’ files behave as documented in the Bash manual. Zsh is supported.
520
521*** The ‘root’ account gets a copy of the account skeleton files
522
523Before that, the skeleton files would only be copied to non-root accounts.
524
525*** The name service cache daemon (nscd) is configurable
526
527By default it aggressively caches host and service lookups. See “Base
528Services” in the manual.
529
530*** Available locale definitions are now declared in ‘operating-system’
531
532Before, the ‘glibc’ package would contain all the existing locales, as well as
533the ‘locale-archive’ file, amounting to 110 MiB. See “Locales” in the manual.
534
535*** SLiM sessions are configurable
536
537Pressing F1 in the SLiM graphical log-in screen allows users to choose among
538the pre-configured session types. See “X Window” in the manual.
539
540*** Man pages and Info files are systematically gzip-compressed
541
542*** ‘gnu-build-system’ ensures that documentation is in share/{man,info}
543
544If a package installs to $prefix/{man,info}, this is automatically fixed to be
545$prefix/share/{man,info}.
546
547*** ‘strip’ is invoked only on ELF files and ‘ar’ archives
548
549*** ‘libtool’ and ‘libltdl’ are now separate packages
550
551*** Emacs mode is readily usable on the Guix System Distribution
552
553*** Substitutes are now enabled by default on freshly installed systems
983c082a
LC
554*** 164 new packages
555
556abcde, astyle, avr-libc, bbdb, bedtools, bowtie, bullet, c-reduce, cd-discid,
557cgal, clang, claws-mail, cups, cups-filters, cups-minimal, dconf, delta,
558dmenu, eigen, emms, exo, fastjar, font-bitstream-vera, font-dejavu,
559font-gnu-freefont-ttf, font-liberation, font-terminus, fvwm, garcon,
560gcc-cross-arm-linux-gnueabihf, gcc-cross-sans-libc-avr, gcj, getmail,
561git-flow, git-manpages, git-test-sequence, glew, glulxe, gourmet,
562gst-plugins-good, gtk-xfce-engine, hexchat, ijs, iw, jack, json-glib,
563libdvdnav, libdvdread, libetpan, libevdev, libltdl, libtorrent, libupnp,
564libwnck, libwnck, libxfce4ui, libxfce4util, libxshmfence, libyubikey, llvm,
565lrdf, mg, mp3info, msmtp, ncftp, nginx, ninja, nss, openbox,
566perl-benchmark-timer, perl-clone, perl-digest-sha1, perl-exporter-lite,
567perl-file-which, perl-getopt-tabular, perl-ipc-run3, perl-probe-perl,
568perl-regexp-common, perl-sys-cpu, perl-test-deep, perl-test-nowarnings,
569perl-test-script, perl-test-simple, perl-test-tester, pflask,
570python-cairocffi, python-cffi, python-distutils-extra, python-html5lib,
571python-ipython, python-isodate, python-matplotlib, python-numpy,
572python-numpydoc, python-pillow, python-pycairo, python-pycparser,
573python-pygobject, python-pyparsing, python-pyqt, python-pysam, python-rdflib,
574python-scipy, python-sip, python-sqlalchemy, python-xcffib, python2-cairocffi,
575python2-cffi, python2-distutils-extra, python2-elib.intl, python2-html5lib,
576python2-ipython, python2-isodate, python2-matplotlib, python2-numpy,
577python2-numpydoc, python2-pillow, python2-py2cairo, python2-pycparser,
578python2-pygobject, python2-pygtk, python2-pyparsing, python2-pyqt,
579python2-pysam, python2-scipy, python2-sip, python2-sqlalchemy, python2-xcffib,
580qpdf, retroarch, rtorrent, samtools, shflags, slang, slock, socat,
581startup-notification, sxiv, taglib, telepathy-glib, thunar, thunar-volman,
582tre, tumbler, vala, vte, vte, wine, wmctrl, xclip, xdotool, xf86-video-geode,
583xfce4-appfinder, xfce4-battery-plugin, xfce4-panel, xfce4-session,
584xfce4-settings, xfce4-terminal, xfconf, xfdesktop, xfwm4, xinit, ykclient,
585zerofree
586
587*** 222 package updates
588
589apr-util-1.5.4, atk-2.15.3, automake-1.15, bash-4.3.33, bash-light-4.3.33,
590bdftopcf-1.0.4, binutils-2.25, binutils-static-stripped-tarball-2.25,
591cairo-1.12.18, cairomm-1.11.2, ccrtp-2.1.1, curl-7.40.0, dbus-1.8.12,
592dbus-glib-0.102, ddrescue-1.19, dri2proto-2.8, e2fsck-static-1.42.11,
593e2fsprogs-1.42.11, eudev-2.1.1, ffmpeg-2.5.3, file-5.22, fish-2.1.1,
594fontconfig-2.11.92, fontsproto-2.1.3, freeipmi-1.4.8,
595gcc-cross-mips64el-linux-gnuabi64-4.8.4, gcc-cross-sans-libc-xtensa-elf-4.8.4,
596gcc-objc++-4.8.4, gcc-objc-4.8.4, gcc-stripped-tarball-4.8.4, gccgo-4.8.4,
597gcl-2.6.12, gd-2.1.1, gdb-7.8.2, gdk-pixbuf-2.31.1, gettext-0.19.4,
598gfortran-4.8.4, ghostscript-9.14.0, ghostscript-with-x-9.14.0, gimp-2.8.14,
599git-2.2.1, glib-2.42.1, glibmm-2.42.0, global-6.3.3, glproto-1.4.17,
600gnutls-3.2.21, gobject-introspection-1.42.0, gp2c-0.0.9pl2, grep-2.21,
601groff-1.22.3, gss-1.0.3, gst-plugins-base-1.0.10, gtk+-3.14.7, gtkmm-3.14.0,
602guix-0.8, guix-0.8.4ad8789, help2man-1.46.4, iceauth-1.0.6, icu4c-54.1,
603inkscape-0.48.5, inputproto-2.3.1, lcms-2.6, lftp-4.6.1, libassuan-2.2.0,
604libcdio-0.93, libdmx-1.1.3, libdrm-2.4.58, libfontenc-1.1.2, libfs-1.0.6,
605libgcrypt-1.6.2, libgpg-error-1.17, libice-1.0.9, libjpeg-9a, libksba-1.3.2,
606libmicrohttpd-0.9.39, libnl-3.2.25, libpciaccess-0.13.2, libpeas-1.12.1,
607libpng-1.5.21, librsvg-2.40.6, libsm-1.2.2, libtasn1-4.2, libtool-2.4.5,
608libx11-1.6.2, libxau-1.0.8, libxaw-1.0.12, libxcb-1.11, libxcomposite-0.4.4,
609libxcursor-1.1.14, libxdamage-1.1.4, libxext-1.3.3, libxfixes-5.0.1,
610libxfont-1.5.0, libxft-2.3.2, libxi-1.7.4, libxinerama-1.1.3,
611libxkbcommon-0.5.0, libxmu-1.1.2, libxp-1.0.2, libxpm-3.5.11, libxrandr-1.4.2,
612libxrender-0.9.8, libxres-1.0.7, libxt-1.1.4, libxtst-1.2.2, libxv-1.0.10,
613libxvmc-1.0.8, libxxf86dga-1.1.4, libxxf86vm-1.1.3, linux-libre-3.18.4,
614lua-5.2.3, makedepend-1.0.5, mercurial-3.2.4, mesa-10.4.0, minetest-0.4.11,
615mkfontscale-1.1.1, neon-0.30.0, nix-1.8, ntp-4.2.8, ocrad-0.24,
616openjpeg-2.0.1, openssl-1.0.1k, pango-1.36.8, parallel-20150122,
617pari-gp-2.7.2, patchelf-0.8, pcre-8.36, perf-3.18.4, phonon-4.8.3,
618pixman-0.32.6, pkg-config-0.28, poppler-0.28.1, python-3.3.5,
619python-dateutil-2.2, python2-dateutil-2.2, qemu-2.2.0, qemu-headless-2.2.0,
620qt-5.4.0, racket-6.1.1, randrproto-1.4.0, raptor2-2.0.15, rasqal-0.9.33,
621rcs-5.9.4, ruby-2.1.5, sessreg-1.0.8, sipwitch-1.9.3, sqlite-3.8.7.4,
622tiled-0.11.0, tmux-1.9a, tzdata-2014j, ucommon-6.2.3, util-linux-2.25.2,
623util-macros-1.19.0, vera-1.22, videoproto-2.3.2, wget-1.16.1, xauth-1.0.9,
624xbacklight-1.2.1, xcb-proto-1.11, xcb-util-0.4.0, xcb-util-image-0.4.0,
625xcb-util-keysyms-0.4.0, xcb-util-renderutil-0.3.9, xcb-util-wm-0.4.1,
626xcursor-themes-1.0.4, xcursorgen-1.0.6, xdpyinfo-1.3.1, xev-1.2.1,
627xextproto-7.3.0, xf86-input-evdev-2.8.4, xf86-input-joystick-1.6.2,
628xf86-input-keyboard-1.8.0, xf86-input-mouse-1.9.1, xf86-input-synaptics-1.8.1,
629xf86-video-ark-0.7.5, xf86-video-ati-7.5.0, xf86-video-cirrus-1.5.2,
630xf86-video-fbdev-0.4.4, xf86-video-glint-1.2.8, xf86-video-i128-1.3.6,
631xf86-video-intel-2.21.15, xf86-video-mach64-6.9.4, xf86-video-mga-1.6.3,
632xf86-video-neomagic-1.2.8, xf86-video-nv-2.1.20, xf86-video-openchrome-0.3.3,
633xf86-video-r128-6.9.2, xf86-video-savage-2.3.7,
634xf86-video-siliconmotion-1.7.7, xf86-video-sis-0.10.7,
635xf86-video-suncg6-1.1.2, xf86-video-sunffb-1.2.2, xf86-video-tdfx-1.4.5,
636xf86-video-tga-1.2.2, xf86-video-trident-1.3.6, xf86-video-vesa-2.3.3,
637xf86-video-vmware-13.0.2, xf86-video-voodoo-1.2.5, xhost-1.0.6, xinput-1.6.1,
638xkbcomp-1.3.0, xkbutils-1.0.4, xkeyboard-config-2.13, xkill-1.0.4,
639xlockmore-5.45, xlsclients-1.1.3, xmodmap-1.0.8, xnee-3.19,
640xorg-server-1.16.3, xprop-1.2.2, xproto-7.0.26, xrandr-1.4.3, xrdb-1.1.0,
641xrefresh-1.0.5, xset-1.2.3, xsetroot-1.1.1, xtrans-1.3.5, xvinfo-1.1.2,
642xwd-1.0.6, xwininfo-1.1.3, youtube-dl-2015.01.23.4, zsh-5.0.7
43faf869
LC
643
644** Programming interfaces
645
646*** New (guix elf) and (gnu build linux-modules) modules
647
648These provide resolution of Linux kernel module dependencies. See
649<https://lists.gnu.org/archive/html/guix-devel/2014-11/msg00670.html>.
650
651*** ‘glib-or-gtk-build-system’ has been extended
652
653It now handles GIO and XDG themes, takes care of generating the icon cache,
654and has a new #:glib-or-gtk-wrap-excluded-outputs parameter.
655
656*** ‘search-path-specification’ can now specify non-directory items
657
658For example, the ‘search-path-specification’ attached to libxml2 specifies a
659file pattern, which allows all the ‘catalog.xml’ files to be added to the
660‘XML_CATALOG_FILES’ environment variable.
661
662*** (guix build syscalls) has more network-related procedures
663
664‘set-network-interface-flags’, ‘set-network-interface-address’,
665‘network-interface-address’, and ‘configure-network-interface’ are ioctl
666bindings used by network-handling dmd services.
667
668*** (guix monads) refactoring
669
670‘%store-monad’ is now in (guix store) and is an alias for the new
671‘%state-monad’ provided by (guix monads). Monadic procedures dealing with the
672store, with derivations, and with packages have been moved from (guix monads)
673to (guix store), (guix derivations), and (guix packages). See “The Store
674Monad” in the manual.
675
676*** (guix build utils) provides ‘parallel-job-count’
677
678*** ‘wrap-program’ preserves the original argv[0]
679
680*** New (guix sets) module
681
682*** ‘define-record-type*’ now support “delayed” fields
683
684** Noteworthy bug fixes
685
686*** X session is executed from a login shell (<http://bugs.gnu.org/19119>)
687*** grub.cfg is now a garbage-collector root (<http://bugs.gnu.org/19160>)
688*** Substituter progress report properly formatted
689 (<http://bugs.gnu.org/19313>)
690*** Document permissions for /gnu/store (<http://bugs.gnu.org/19316>)
691*** Make sure config.go is newer than config.scm
692 (<http://bugs.gnu.org/19317>)
693*** Emacs knows where to find its GLib schemas (<http://bugs.gnu.org/19138>)
694*** Adjust 'grub.cfg' to work on systems with a separate /boot
695 (<http://bugs.gnu.org/19220>)
696*** Fix removal of next-to-last item in a profile
697 (<http://lists.gnu.org/archive/html/guix-devel/2014-12/msg00292.html>)
698*** Apply patches with "patch --force" (<http://bugs.gnu.org/19402>)
699*** Extend ‘search-path-specification’ for libxml2-style use cases
700 (<http://bugs.gnu.org/18033>)
701*** Search for patches under $GUIX_PACKAGE_PATH (<http://bugs.gnu.org/19364>)
702*** Use executables from the target inputs in 'patch-shebangs'
703 (<http://bugs.gnu.org/18895>)
704*** guix-daemon now automatically creates '…/profiles/per-user'
705 (<http://bugs.gnu.org/19315>)
706*** Make /etc/mtab a symlink to /proc/self/mounts
707 (<http://bugs.gnu.org/19491>)
708*** Don't build the mips64el-linux-gnuabi64 cross-compiler on i686
709 (<http://bugs.gnu.org/19598>)
710*** Read archive signatures as Latin-1 strings (<http://bugs.gnu.org/19610>)
711*** Raise an error for references to non-existent outputs
712 (<http://bugs.gnu.org/19630>)
713*** Initialize libgcrypt before use (<http://bugs.gnu.org/19677>)
714
715** Native language support
716
717*** New translations: fr (French), hu (Hungarian)
d3172146 718*** Updated translation: eo, vi
43faf869 719
0c4b00d8
LC
720* Changes in 0.8 (since 0.7)
721
722** Package management
723
724*** New visual user interface in Emacs
725
726See “Emacs Interface” in the manual.
727
728*** New ‘guix environment’ command to produce development environment
729
730See “Invoking guix environment” in the manual.
731
29934e02 732*** The ‘guix import’ command has been extended and documented
0c4b00d8 733
7b3f6a27 734It can now import packages from pypi.python.org and from GNU.
0c4b00d8
LC
735See “Invoking guix import” in the manual.
736
737*** New ‘guix lint’ command, for use by Guix developers
738
739See “Invoking guix lint” in the manual.
740
741*** Packages can now be “grafted” with replacements of their dependencies
742
743See “Security Updates” in the manual.
744
745*** The distribution can be extended with ‘--load-path’ or $GUIX_PACKAGE_PATH
746
747This allows users to maintain their own package definitions, and make them
748visible to the various user interfaces. See “Package Modules” in the manual.
749
750*** ‘guix package’ better reports package upgrades
751
752*** ‘guix package’ has a new ‘--switch-generation’ option
753
754See “Invoking guix package” in the manual.
755
756*** ‘guix-daemon’ has a new ‘--substitute-urls’ option
757
758See “Invoking guix-daemon” in the manual.
759
44941798 760** Distribution
0c4b00d8
LC
761
762*** The stand-alone operating system now supports Linux mapped devices
763
764See “Mapped Devices” in the manual.
765
766*** New fields in ‘operating-system’ declarations, better documentation
767
768New fields include ‘hosts-file’, ‘mapped-devices’, and ‘swap-devices’.
769See “operating-system Reference” in the manual.
770
771*** New services: ‘dhcp-client-service’, ‘bitlbee-service’, ‘ntp-service’
772
773See “Services” in the manual.
774
8ee0e719
LC
775*** Free firmware can be loaded
776
777This notably enables support for some Atheros-based WiFi devices (ath9k-htc.)
778See “operating-system Reference” in the manual.
779
0c4b00d8
LC
780*** ‘grub-configuration’ declarations can now specify a theme
781
782See “GRUB Configuration” in the manual.
783
784*** The ‘base-initrd’ now has a different signature
785
786Existing uses in ‘operating-system’ declarations need to be updated. See
787“Initial RAM Disk” in the manual for details.
788
789*** eudev is now used by default, instead of an old udev release
790
791*** ‘guix system vm’ has a new ‘--full-boot’ option
792
793See “Invoking guix system” in the manual.
794
795*** The ‘file’ command is now part of the package build environment
796
797Autoconf-generated ‘configure’ scripts for packages using Libtool use ‘file’
798to determine the target ABI, notably on MIPS, hence this change.
799
44941798
LC
800*** 162 new packages
801
802abiword, acpica, adns, arb, ath9k-htc-firmware, atlas, avrdude, cppunit,
803dblatex, detox, dfu-programmer, dionysus, direvent, dmidecode, dri3proto,
804emacs-no-x-toolkit, emacs-w3m, emacs-wget, enchant, eudev, feh, flashrom,
805flint, fontforge, freedink, freeimage, fribidi,
806gcc-cross-sans-libc-xtensa-elf, giblib, gnome-themes-standard, gpsbabel,
807gpscorrelate, graphite2, gtypist, guile-charting, guile-sdl, imake, imlib2,
808irrlicht, jbig2dec, libpsl, libspiro, libuninameslist, libwmf, lm-sensors,
809magit, minetest, miscfiles, mozjs, mupdf, nix, nspr, nss-mdns, ntp, nvi, opam,
810openal, openjpeg, opus-tools, orpheus, ots, oxygen-icons, paredit, perf,
811perl-archive-zip, perl-dbd-sqlite, perl-dbi, perl-image-exiftool,
812perl-io-socket-ssl, perl-net-ssleay, perl-www-curl, perl-zip, polkit,
813polkit-qt, postgresql, potrace, presentproto, python-certifi, python-coverage,
814python-cython, python-discover, python-docutils, python-exif-read,
815python-extras, python-fixtures, python-itsdangerous, python-jinja2,
816python-jsonschema, python-markupsafe, python-mimeparse, python-nose,
817python-oauthlib, python-py, python-pygments, python-pyjwt, python-pyld,
818python-pytest, python-scripttest, python-sphinx, python-subunit,
819python-testrepository, python-testresources, python-testscenarios,
820python-testtools, python-unidecode, python-unittest2, python-virtualenv,
821python2-certifi, python2-coverage, python2-cython, python2-discover,
822python2-docutils, python2-exif-read, python2-extras, python2-fixtures,
823python2-itsdangerous, python2-jinja2, python2-jsonschema, python2-markupsafe,
824python2-mimeparse, python2-nose, python2-oauthlib, python2-py,
825python2-pygments, python2-pyjwt, python2-pyld, python2-pytest,
826python2-requests, python2-scripttest, python2-sphinx, python2-subunit,
827python2-testrepository, python2-testresources, python2-testscenarios,
828python2-testtools, python2-unidecode, python2-unittest2, python2-virtualenv,
829rrdtool, ruby, ruby, ruby-i18n, sane-backends, scrot, sound-theme-freedesktop,
830stress, synergy, tdb, terminus-font, testdisk, texi2html, tiled, transfig,
831unclutter, unixodbc, weechat, wv, xboing, xf86-video-modesetting, xfig,
832xsensors, zsh
833
834*** 117 package updates
835
836acct-6.6.2, acl-2.2.52, apl-1.4, apr-1.5.1, apr-util-1.5.3, autoconf-2.68,
837autoconf-2.69, autogen-5.18.4, bash-4.3.30, bash-light-4.3.30, bazaar-2.6.0,
838bison-2.7, calcurse-3.2.1, ccache-3.1.10, chicken-4.9.0.1, coreutils-8.23,
839curl-7.37.1, datamash-1.0.6, dbus-1.8.8, docbook-xml-4.2, docbook-xml-4.4,
840docbook-xml-4.5, emacs-24.4, ffmpeg-2.2.10, ffmpeg-2.4.3, file-5.19,
841file-5.20, freeipmi-1.4.5, gcc-4.7.4, gcc-4.9.2, gcc-toolchain-4.9.2,
842gcl-2.6.11, gdb-7.8.1, geiser-0.6, gettext-0.19.3, git-2.1.2, glibc-2.20,
843glibc-2.20, glibc-stripped-tarball-2.20, global-6.3.2, glpk-4.55,
844gnupg-1.4.18, gnupg-2.0.26, gnurl-7.37.0, gnutls-3.2.20, gpgme-1.5.1,
845gst-plugins-base-1.0.10, gstreamer-1.0.10, gtk+-3.10.1, gtkmm-3.9.16,
846guile-1.8.8, guile-json-0.4.0, guile-ncurses-1.6, guile-ssh-0.7.1, guix-0.7,
847guix-0.7.48bd76e, hello-2.10, help2man-1.46.3, icecat-31.2.0,
848libart-lgpl-2.3.21, libassuan-2.1.3, libatomic-ops-7.4.2, libdrm-2.4.33,
849libffi-3.1, libgc-7.2f, libgc-7.4.2, libgcrypt-1.5.4, libgcrypt-1.6.2,
850libidn-1.29, libjpeg-9a, libotr-4.0.0, libsodium-1.0.0, libtasn1-4.1,
851libunistring-0.9.4, libwebsockets-1.3, lightning-2.0.5, linux-libre-3.17.3,
852lsof-4.88, lua-5.2.3, lvm2-2.02.109, lzip-1.16, make-4.1, maxima-5.34.1,
853mit-scheme-9.2, mysql-5.1.73, neon-0.30.0, net-base-5.3, nettle-2.7.1,
854notmuch-0.18.1, openssh-6.7p1, openssl-1.0.1j, parallel-20141022,
855phonon-4.8.2, pspp-0.8.4, python-3.3.5, python-dateutil-1.5,
856python2-dateutil-1.5, python2-pyicu-1.8, qt-4.8.6, qt-5.3.2, rcs-5.9.3,
857readline-6.3, subversion-1.7.18, swig-3.0.2, tar-1.28, texinfo-5.2,
858tor-0.2.5.10, transmission-2.84, ucommon-6.1.11, valgrind-3.10.0, vlc-2.1.5,
859wget-1.16, windowmaker-0.95.6, xapian-1.2.18, xf86-video-ati-6.14.6,
860xpdf-3.04, youtube-dl-2014.09.06
861
0c4b00d8
LC
862** Programming interfaces
863
864*** New ‘ruby-build-system’, for Ruby packages
865
866See “Build Systems” in the manual.
867
868*** New ‘glib-or-gtk-build-system’, for packages using GLib schemas
869
870See “Build Systems” in the manual.
871
872*** ‘gnu-build-system’ has a new #:substitutable? parameter
873
874This allows packagers to mark a package as requiring a local build, thus
875preventing it from being substituted by a pre-built binary.
876
877*** ‘cmake-build-system’ has a new #:build-type parameter
878
879See “Build Systems” in the manual.
880
881*** The ‘supported-systems’ field of packages is used more consistently
882
883This allows packagers to prevent attempts to build a package on a given
884architecture when that architecture is known not to be supported. The
885‘package-transitive-supported-systems’ procedure returns the intersection of
886the systems supported by the given package and by its dependencies.
887
888*** The ‘wrap-program’ procedure can now be called multiple times
889
890*** New ‘graft-derivations’ and ‘package-grafts’ procedures
891
892They implement “grafts”, as described under “Security Updates” in the manual.
893
894*** New “bag” intermediate representation for use by build systems
895
896“Bags” are used internally as an intermediate representation between packages
897and derivations. See “Build Systems” in the manual.
898
899*** New (guix monad-repl) module, for monadic interaction at the REPL
900
901See “The Store Monad” in the manual.
902
903*** New (guix build emacs-utils) module, to facilitate building Emacs packages
904
905*** New (guix tests) module, with tools used by the test suite
906
907*** The internal ‘guix-register’ command now deduplicates files in store items
908
909*** Several system modules moved from (guix build …) to (gnu build …)
910
911Also, the (gnu build linux-boot) module has been introduced, with code
912typically used by initial RAM disks when booting on GNU/Linux-libre.
913
914*** (guix profiles) provides a representation of package transactions
915
916This factorizes code between ‘guix package’ and the Emacs user interface.
917
8ee0e719 918*** Bootstrapping packages moved to (gnu packages commencement) modules
0c4b00d8
LC
919
920** Bugs fixed
921
922*** ‘guix-daemon’ now really deduplicates store items by default
923
924Deduplication means that identical files found in /gnu/store are stored only
925once, using hard links. This feature was wrongfully disabled, and is now
926enabled by default. The former ‘--disable-store-optimization’ option has been
927renamed to ‘--disable-deduplication’.
928
929*** ‘guix-daemon’ no longer uses ‘vfork’
930
931This could cause problems with ancient Linux kernel.
932
933*** Fixed compilation of ‘gccgo’ (<http://bugs.gnu.org/18101>)
934*** 'make clean' doesn't delete os-config.tmpl (<http://bugs.gnu.org/18243>)
935*** Fix handling of periods by fill-paragraph (<http://bugs.gnu.org/17468>)
936*** Produce a top-level Info 'dir' file (<http://bugs.gnu.org/18305>)
937*** guix offload ignores unreachable machines (<http://bugs.gnu.org/18070>)
938*** guix offload: Ignore EEXIST when registering a .drv as a GC root
939 (<http://bugs.gnu.org/18115>)
940*** perl-tk: Build sequentially (<http://bugs.gnu.org/18262>)
941*** download: Use the 'SERVER NAME' TLS extension when possible
942 (<http://bugs.gnu.org/18526>)
943*** libdaemon: Add alternate source URLs (<http://bugs.gnu.org/18639>)
944*** icu4c: Reinstate RUNPATH on shared libraries
945 (<http://bugs.gnu.org/18695>)
946*** nss-mdns: Add alternate source URLs (<http://bugs.gnu.org/18704>)
947*** download: Add "Accept: */*" to the HTTP headers
948 (<http://bugs.gnu.org/18768>)
949*** guix-register: Do not attempt to create NIX_STORE_DIR
950 (<http://bugs.gnu.org/18689>)
951*** Allow Linux-libre to find our 'modprobe' command
952 (<http://bugs.gnu.org/18525>)
953*** man-pages: Build sequentially (<http://bugs.gnu.org/18701>)
954*** Fix intermittent test failures involving GC (<http://bugs.gnu.org/18935>)
955*** guix import: pypi: Gracefully handle non-existent packages
956 (<http://bugs.gnu.org/18831>)
957*** Make sure the shared library has the '.so' extension
958 (<http://bugs.gnu.org/18521>)
959*** pull: Use the build procedure provided by the newly-downloaded Guix.
960 (<http://bugs.gnu.org/18534>)
5c88ac53 961*** WindowMaker no longer pollutes $PATH (<http://bugs.gnu.org/18698>)
0c4b00d8 962
44941798
LC
963** Native language support
964*** New translation: cs (Czech)
965*** Updated translations: de, sr, vi
966
02dd2a9c
LC
967* Changes in 0.7 (since 0.6)
968** Package management
508ea01e
LC
969*** Binaries for mips64el-linux now available from hydra.gnu.org
970
971These come in addition to the x86_64-linux and i686-linux binaries already
972provided, thanks to our generous donor and friendly admins. See
973“Substitutes” in the manual.
974
dccc0b98
LC
975*** ‘guix package’ has a new ‘--show’ option
976*** ‘guix refresh’ has a new ‘--list-dependent’ option
02dd2a9c
LC
977
978** Programming interfaces
979*** New (guix gexp) module, which implements “G-expressions”
980
981G-expressions are a new mechanism to embed build-side code in host-side
982code. See “G-Expressions” in the manual.
983
984*** (gnu system) and related modules now use G-expressions
985
986This greatly simplifies code, and guarantees that build code carries
987references to the packages or derivations it uses.
988
989*** ‘build-expression->derivation’ is deprecated in favor of G-expressions
990*** The (gnu system) module has been largely augmented and factorized
991*** New (guix build vm) module, support for virtual machine images
992*** New (guix build activation) module, for “system activation”
993*** New (guix build syscalls) module
994*** New (guix build install) and module for whole system installation
995*** New (gnu system install) module, for the installation system
996*** New (gnu system file-systems) module, for ‘file-system’ declarations
997*** New (gnu) module, which aggregates common (gnu …) modules
998*** ‘service’ records now have an optional ‘activate’ field
999
1000This allows services to specify code to run at system activation time.
1001
1002** GNU distribution
1003*** An image to install the GNU system from a USB stick is provided
1004
1005This is the first time an installation image is provided. See “System
1006Installation” in the manual for details. This is work in progress as noted
1007in “Limitations”. Your feedback and help are welcome!
1008
1009*** Support for more parameters in ‘operating-system’ declarations
1010
1011Operating system declarations can now provide a list of file systems, a list
1012of setuid programs, bootloader options, and more. See “System Configuration”
1013in the manual.
1014
1015*** ‘guix system’ supports more actions
1016
1017Newly supported actions are ‘init’, ‘build’, ‘reconfigure’, and ‘disk-image’.
1018See “Invoking guix system” in the manual.
1019
1020*** User accounts and groups are created at system activation time
1021*** Virtual machine support uses para-virtualized devices
1022*** GCC package now has an additional ‘lib’ output, for run-time support libs
1023*** GLib package now has a separate “bin” output (<http://bugs.gnu.org/17853>)
dccc0b98
LC
1024*** 134 new packages
1025
1026abbaye, aegis, attica, babl, barcode, behave, btar, busybox, ccache, ccrtp,
1027chess, clucene, cmatrix, commoncpp, conkeror, cook, cssc, datamash, diffstat,
1028doxygen, dropbear, dtach, duplicity, e2fsck-static, exosip, fftw-openmpi,
1029fish, gconf, gegl, gimp, gmsh, gnome-mime-data, gnome-vfs, gnumeric, goffice,
1030gsegrafix, guile-opengl, guile-static-stripped, hdup, hwloc, inotify-tools,
1031jrnl, kbd, kmod, lftp, libarchive, libart-lgpl, libbonobo, libbonoboui,
1032libcroco, libdbusmenu-qt, libftdi, libglade, libgnome, libgnomecanvas,
1033libgnomeprint, libgnomeprintui, libgnomeui, libgsf, libidl, libmcrypt,
1034libmhash, librsvg, librsync, libsodium, libuv, libvpx, links, lzop, man-pages,
1035maxima, mcrypt, mosh, mpg123, mplayer, mu, ncmpcpp, node, notmuch, numactl,
1036offlineimap, openmpi, orbit2, osip, pangox-compat, perl-io-tty, petsc,
1037petsc-complex, petsc-complex-openmpi, petsc-openmpi, pingus, podofo, protobuf,
1038pt-scotch, python-enum34, python-keyring, python-lockfile, python-mock,
1039python-parse, python-parse-type, python-parsedatetime, python-pycrypto,
1040python-six, python-tzlocal, python2-lockfile, python2-mock, qjson, qrencode,
1041rasqal, rdiff-backup, rdup, redland, rottlog, scotch, sipwitch, sshfs-fuse,
1042strigi, sudo, superlu, superlu-dist, talkfilters, talloc, tcpdump, tinyproxy,
1043transmission, ucommon, udev, vlc, vtk, wakelan, wireless-tools,
1044wpa-supplicant, xboard, youtube-dl
1045
1046*** 87 package updates
1047
1048bitlbee-3.2.2, cursynth-1.5, ddrescue-1.18.1, dfc-3.0.4, dmd-0.2,
1049docbook-xml-4.3, docbook-xml-4.4, docbook-xsl-1.78.1, dvdisaster-0.72.6,
1050ffmpeg-2.3, fftw-3.3.4, fftwf-3.3.4, flac-1.3.0, gawk-4.1.1, gcc-4.7.4,
1051gcc-4.8.3, gcc-4.8.3, gcc-4.9.1, gcc-cross-mips64el-linux-gnuabi64-4.8.3,
1052gcc-objc++-4.8.3, gcc-objc-4.8.3, gcc-stripped-tarball-4.8.3,
1053gcc-toolchain-4.8.3, gcc-toolchain-4.9.1, gccgo-4.8.3, gdb-7.7.1,
1054gettext-0.19.2, gfortran-4.8.3, glib-2.40.0, global-6.3, gmp-6.0.0a,
1055gnupg-1.4.18, gnupg-2.0.25, gnutls-3.2.15, gp2c-0.0.9pl1, grep-2.20,
1056gst-plugins-base-1.0.10, gstreamer-0.10.36, gtk+-3.10.1, gtkmm-2.24.2,
1057guile-2.0.11, guile-2.0.11, guix-0.6, guix-0.6.0ae8c15, htop-1.0.3,
1058icu4c-53.1, imagemagick-6.8.9-0, json-c-0.12, libdrm-2.4.33, libgc-7.2e,
1059libgcrypt-1.5.3, libgpg-error-1.13, libjpeg-8d, libmicrohttpd-0.9.37,
1060libogg-1.3.2, libotr-4.0.0, libtasn1-3.6, libvorbis-1.3.4, lightning-2.0.4,
1061linux-libre-3.15.6, lua-5.1.5, lua-5.2.3, mcron-1.0.8, moe-1.6, nano-2.3.6,
1062neon-0.29.6, nettle-3.0, openssl-1.0.1h, parallel-20140722, pari-gp-2.7.1,
1063pspp-0.8.3, python-2.7.6, python-dateutil-2.2, python2-dateutil-2.2,
1064qemu-2.0.0, qemu-headless-2.0.0, qt-4.8.6, qt-5.2.1, readline-6.2,
1065screen-4.2.1, soprano-2.9.4, texinfo-5.2, texlive-2014, tor-0.2.4.22,
1066wdiff-1.2.2, xorriso-1.3.8, xterm-304
02dd2a9c
LC
1067
1068** Native language support
1069*** New translations: de (German), and hu (Hungarian)
1070*** Updated translations: eo, pt_BR, sr, vi
1071*** Package descriptions moved from the ‘guix’ text domain to ‘guix-packages’
1072** Bugs fixed
1073*** Downloads are now faster (<http://bugs.gnu.org/15368>)
1074*** ‘guix authenticate’ properly writes signatures to stdout
1075 (<http://bugs.gnu.org/17312>)
1076*** Progress report of downloads is now properly displayed
1077*** Error reporting of pk-crypto errors has been improved
1078*** The 'patches' field now works for origins with no extension
1079*** Synchronization and GC issues fixed in the offload hook
1080*** (guix ftp-client) emits USER commands suitable for all servers
1081
b0f981f0
LC
1082* Changes in 0.6 (since 0.5)
1083** Package management
1084*** Default store directory changed to /gnu/store
1085
1086Although it is still possible to configure Guix to use the old store
1087directory, we recommend that you start with a fresh install to /gnu/store.
1088
1089*** Substitutes from hydra.gnu.org must now be signed and authorized
1090*** Support for offloading builds to other Guix machines over SSH
1091*** New ‘guix archive’ command
1092*** New ‘guix system’ command; it can currently build VM images
1093*** ‘guix package’ accepts several arguments after -i, -r, and -u
1094*** Updating a profile with ‘guix package’ is now noticeably faster
1095*** ‘guix build’ can override a package’s source with the new ‘--with-source’
1096*** ‘guix build’ has a new ‘--no-build-hook’ option
1097*** ‘guix’ commands that build packages have a common set of options
1098*** ‘guix hash’ has a new ‘--recursive’ option
1099*** Daemon no longer bind-mounts the host’s /dev (improves reproducibility)
1100** Programming interfaces
1101*** New (guix pk-crypto) and (guix pki) modules for public key cryptography
1102*** New #:local-build? parameter for derivations that shouldn’t be offloaded
1103*** (gnu system vm) has procedures to build VMs that share the host’s store
1104*** New ‘text-file*’ procedure in (guix monads)
1105*** System service definitions are now provided by the (guix services) modules
1106*** New X and SLiM services in (gnu services xorg)
1107*** New (guix git-download) and (guix svn-download) for git/svn checkouts
1108** GNU distribution
4ec91959
LC
1109*** 91 new packages
1110
1111a2ps, asciidoc, aspell-dict-en, aspell-dict-eo, aspell-dict-es,
1112aspell-dict-fr, aumix, bitlbee, bogofilter, boost, calcurse, clusterssh,
1113corkscrew, cursynth, docbook-xml, docbook-xsl, elfutils, enscript, fftwf,
1114fltk, fuse, gcc-toolchain, giflib, glade, gmime, gnome-desktop, gnubg, gnubik,
1115gnumach-headers, gnunet, gnuplot, gnurl, gphoto2, gtkglext, guile-json,
1116guile-reader-for-guile_2.0.11, gxmessage, hdf5, hurd-headers, inkscape, iotop,
1117isc-dhcp, iso-codes, jnettop, libatomic-ops, libexif, libgphoto2, libmpcdec,
1118libmpdclient, libotr, libpcap, libpeas, libpipeline, libtirpc, libwebsockets,
1119ltrace, luajit, lynx, man-db, mc, mig, miniupnpc, moe, mpc123, mpd, ncdc,
1120ncdu, ncmpc, neon, neon, octave, opus, paperkey, patchutils, perl-tk,
1121perl-x11-protocol, pinentry, python2-element-tree, python2-pybugz, quilt,
1122source-highlight, stalonetray, trueprint, ttf-dejavu, unionfs-fuse,
1123unionfs-fuse-static, uucp, vera, windowmaker, xapian, xterm
1124
1125*** 90 package updates
1126
1127apl-1.3, autoconf-2.68, automake-1.14.1, bash-4.3, bash-light-4.3,
1128bigloo-4.1a, binutils-2.24, binutils-static-stripped-tarball-2.24,
1129coreutils-8.22, curl-7.35.0, ed-1.10, ffmpeg-2.1.4, file-5.18, freeipmi-1.4.1,
1130gcc-4.8.2, gcc-4.8.2, gdb-7.7, gdbm-1.11, gettext-0.18.3.2, glib-2.39.1,
1131glibc-2.19, glibc-stripped-tarball-2.19, global-6.2.12, glpk-4.54,
1132gnu-pw-mgr-1.2, gnupg-1.4.16, gnutls-3.2.12, gp2c-0.0.8pl1, grep-2.18,
1133gst-plugins-base-0.10.36, gstreamer-1.0.10, gtk+-3.10.1, gtkmm-2.24.2,
1134guile-2.0.11, guile-ssh-0.6.0, guile-static-stripped-tarball-2.0.11,
1135guile-wm-1.0, guile-xcb-1.3, guix-0.5, help2man-1.45.1, icu4c-52.1,
1136imagemagick-6.8.8-10, inetutils-1.9.2, lapack-3.5.0, libcdio-0.92,
1137libdrm-2.4.46, libextractor-1.3, libgc-7.2e, libgc-7.4.0, libgcrypt-1.6.1,
1138libjpeg-9, libmicrohttpd-0.9.34, libssh-0.6.3, libtasn1-3.4, lightning-2.0.3,
1139linux-libre-3.13.7, mpc-1.0.2, mutt-1.5.23, net-base-5.2, ocrad-0.23,
1140openssh-6.6p1, openssl-1.0.1g, parallel-20140322, pari-gp-2.7.0, pspp-0.8.2,
1141pulseaudio-5.0, python-2.7.6, python-3.3.5, python-wrapper-3.3.5,
1142python2-pysqlite-2.6.3a, qemu-1.7.1, qemu-headless-1.7.1,
1143qemu-with-multiple-smb-shares-1.7.1, qt-4.8.5, qt-5.2.0, readline-6.3,
1144recutils-1.7, slim-1.3.6, sqlite-3.8.4.3, subversion-1.7.14, texinfo-4.13a,
1145tor-0.2.4.21, tzdata-2014a, units-2.11, valgrind-3.9.0, vim-7.4, wget-1.15,
1146xnee-3.18, xorriso-1.3.6.pl01, zile-2.4.11
1147
b0f981f0
LC
1148*** New ‘gcc-toolchain’ meta-package, makes it easy to install a GCC tool chain
1149*** libc’s Info manual is now installed
1150*** Binutils is built with --enable-deterministic-archives
1151*** Packages that populated man/man* now populate share/man/man*
1152*** Many other packaging improvements
1153** Bugs fixed
1154*** ‘guix pull’ consumes less memory, compiles in parallel
1155*** ‘guix package --list-*’ gracefully handles EPIPE when used in a pipeline
1156*** ‘guix package’ handles collisions between a symlink and a directory
1157 (http://bugs.gnu.org/17083)
1158*** HTTP downloads provide a ‘User-Agent’ field (http://bugs.gnu.org/16703)
1159*** ‘guix package’ no longer shows misleading installed package number
1160 (http://bugs.gnu.org/16484)
1161*** Manual suggests ‘useradd --system’ (http://bugs.gnu.org/16289)
1162*** Python is built with ctypes support (http://bugs.gnu.org/16569)
1163*** HTTP/TLS connection not terminated properly (http://bugs.gnu.org/14884)
1164*** Gracefully handle poorly behaved HTTP servers (http://bugs.gnu.org/15733)
1165
a043ac04
LC
1166* Changes in 0.5 (since 0.4)
1167** Package management
1168*** GNU package descriptions synchronized with the ‘gnumaint’ repository
1169
1170In addition to synopses, descriptions of GNU packages are now kept in sync
1171with the ‘gnumaint’ repository, which is the canonical place for GNU package
1172meta-data.
1173
1174** Programming interfaces
1175*** Patches are now listed as part of ‘origin’
1176
1177The ‘origin’ form supports two new fields: ‘patches’ (list of patches), and
1178‘snippet’ (code snippet to modify the source.) These are applied when running
1179‘guix build --source’. See “Defining Packages” in the manual.
1180
1181*** New (guix monads) monadic interface to operate on the store
1182
1183See “The Store Monad” in the manual. The (gnu system …) modules have been
1184rewritten to use this monadic interface.
1185
1186*** New (guix profiles) module
1187
1188It provides an API for dealing with profiles, as with the ‘guix package’
1189command.
1190
1191*** New (gnu system) module
1192
4a8c5617
AE
1193This module provides a generic way to describe the system’s configuration,
1194and to instantiate it, regardless of the final medium (QEMU image, etc.)
a043ac04
LC
1195See “System Configuration” in the manual.
1196
1197This is work in progress. Send feedback to guix-devel@gnu.org!
1198
1199*** ‘build-expression->derivation’ uses more parameters
1200
1201Some positional parameters have been changed to keyword parameters.
1202See “Derivations” in the manual.
1203
1204** GNU distribution
1205*** New port to the Loongson MIPS64 processors, n32 ABI (‘mips64el-linux’)
1206
4a8c5617 1207Bootstrap binaries have been built for that architecture, and several
a043ac04
LC
1208Loongson-specific patches not yet available upstream have been applied to core
1209packages. See “GNU Distribution” and “Porting” in the manual.
1210
1211Pre-built binaries are not yet available via hydra.gnu.org, so Guix will
4a8c5617 1212build from source on this platform.
a043ac04 1213
5d6dbd29
LC
1214*** 110 new packages
1215
1216acct, alive, alsa-utils, apl, at-spi2-atk, at-spi2-core, atkmm, autogen,
1217automoc4, brasero, bridge-utils, cairomm, catkin, complexity, evince, ffmpeg,
1218fftw, ftgl, gcc-objc, gcc-objc++, gccgo, gcl, gfortran, glibmm, glpk,
1219gnome-icon-theme, gnu-pw-mgr, gp2c, gpgme, gsettings-desktop-schemas, gtkmm,
1220gtksourceview, guile-ssh, guile-wm, gvpe, hicolor-icon-theme, httpd, icecat,
1221icon-naming-utils, json-c, lapack, libcanberra, libcap, libgnome-keyring,
1222libmikmod, libnl, libnotify, libsamplerate, libsigc++, libsndfile, libssh,
1223libtheora, libxkbcommon, mercurial, mtools, netcat, pangomm, parallel,
1224pavucontrol, pciutils, pem, perl-encode-locale, perl-file-list,
1225perl-file-listing, perl-html-parser, perl-html-tagset, perl-http-cookies,
1226perl-http-daemon, perl-http-date, perl-http-message, perl-http-negotiate,
1227perl-io-html, perl-libwww, perl-libxml, perl-lwp-mediatypes, perl-net-http,
1228perl-uri, perl-www-robotrules, perl-xml-dom, perl-xml-regexp, perl-xml-simple,
1229phonon, powertop, pulseaudio, python2-dogtail, python2-empy, qemu-headless,
1230qt, qt, raptor2, scons, sdl, sdl-gfx, sdl-image, sdl-mixer, sdl-net, sdl-ttf,
1231sdl2, serveez, shared-mime-info, sharutils, skribilo, slim, soprano, swig,
1232xcb-util, xcb-util-image, xcb-util-keysyms, xcb-util-renderutil, xcb-util-wm
1233
1234*** 47 package updates
1235
1236atk 2.10.0, bison 3.0.2, cmake 2.8.12, dmd 0.1, freeipmi 1.3.3, gcc 4.8.2,
1237gcc 4.8.2, gcc-cross-mips64el-linux-gnuabi64 4.8.2, gcc-stripped-tarball 4.8.2,
1238gdb 7.6.2, gettext 0.18.3.1, glib 2.38.0, global 6.2.9, gmp 5.1.3,
1239gnupg 2.0.22, gobject-introspection 1.38.0, grep 2.15, gsl 1.16,
1240gtk+ 2.24.21, gtk+ 3.10.1, guile 2.0.9, guile 2.0.9, guile-xcb 1.2,
1241harfbuzz 0.9.22, hello 2.9, iproute2 3.12.0, libdrm 2.4.46,
1242libextractor 1.2, libjpeg 9, libmicrohttpd 0.9.32, lightning 2.0.2,
1243linux-libre 3.12, lzip 1.15, make 4.0, mit-krb5 1.11.3, pari-gp 2.5.5,
1244pixman 0.32.4, python 3.3.2, qemu 1.6.1,
1245qemu-with-multiple-smb-shares 1.6.1, rcs 5.9.2, recutils 1.6, rsync 3.1.0,
1246tar 1.27.1, texinfo 5.2, units 2.02, xorriso 1.3.2
a043ac04
LC
1247
1248*** Packages are now built with GCC 4.8.2 by default (was 4.7.3)
1249
1250** Native language support
1251*** New ‘sr’ (Serbian) translation
1252*** New ‘vi’ (Vietnamese) translation
1253*** Updated ‘pt_BR’ (Brazilian Portuguese) translation
1254** Bugs fixed
4a8c5617 1255*** ‘guix pull’ compiles Guix deterministically and correctly
a043ac04
LC
1256
1257Previously, the build environment was not cleared in between ‘compile-file’
1258calls, leading to build errors due to Guile bug http://bugs.gnu.org/15602 .
1259
1260*** ‘guix package’ allows removal of a specific package output
1261 (http://bugs.gnu.org/15756)
5d6dbd29
LC
1262*** ‘guix-daemon’ always sets umask to 022
1263 (http://lists.gnu.org/archive/html/bug-guix/2013-07/msg00033.html)
a043ac04 1264*** Files referenced by environment variables are protected from GC
5d6dbd29 1265*** Yet unbuilt packages get correctly installed (http://bugs.gnu.org/15283)
a043ac04
LC
1266*** ‘bootstrap-graph.{png,eps,pdf}’ built in srcdir (http://bugs.gnu.org/15640)
1267
8f37bf62
LC
1268* Changes in 0.4 (since 0.3)
1269
1270** Package management
1271
1272*** New ‘--list-generations’ and ‘--delete-generations’ options
1273
1274The ‘guix package’ command has these two new options, which make it easier to
1275deal with a profile’s generation. See “Invoking guix package” in the manual.
1276
1277*** New ‘guix-register’ program
1278
1279This program allows the meta-data of a new store to be initialized, by
1280copying info from an existing store. It is mostly an internal tool.
1281
1282** Programming interfaces
1283
1284*** New API to bootstrap Autotools-based packages
1285
1286The (guix build-system gnu) has a new ‘dist-package’ procedure that takes a
1287package object and source directory, and returns a new package object that
1288runs ‘./bootstrap && make dist’ or anything similar.
1289
1290*** ‘derivation’ and related procedures have a #:references-graphs parameter
1291
1292This parameter instructs the build daemon to populate the derivation’s build
1293tree with files containing the list of references of the given store files.
1294This is useful to write code that copies a packages and all its dependencies
1295to another storage device, such as a QEMU disk image.
1296
1297*** Extended API to build a GNU system virtual machine image
1298
1299The (gnu system vm) module has been augmented in many ways: the ‘qemu-image’
1300procedure can now populate and initialize the image’s store; the new
1301‘system-qemu-image’ procedure returns a QEMU image that runs dmd as its init
1302system, has ‘login’ running on several consoles, has a set of installed
1303packages, and where Guix can be used.
1304
1305New (gnu system …) modules have been added to handle the configuration of the
1306various parts of a GNU/Linux system. For instance, (gnu system dmd) provides
1307support for instantiating dmd services; (gnu system linux) helps with Linux
1308PAM configuration; and so on.
1309
1310*** <derivation> objects supersede .drv file names in the API
1311
1312‘derivation’ and similar procedures no longer return two values (a
1313<derivation> and a .drv file name); they now return a single value, which is
1314a <derivation> object. The <derivation> object embeds the corresponding .drv
1315file name. See “Derivations” in the manual for details.
1316
1317** GNU distribution
1318
6bf3e5f7
LC
1319*** 60 new packages
1320
1321apr, apr-util, cdparanoia, dbus-glib, dfc, dmd, dvdisaster, exiv2, fetchmail,
1322freefont-ttf, freeglut, geeqie, git, gkrellm, glu, gnome-doc-utils,
1323gst-plugins-base, gstreamer, guile-cairo, guile-lib, guile-xcb, guix, htop,
1324itstool, lame, libextractor, libmicrohttpd, lightning, lzip, mingetty, mutt,
1325net-base, net-tools, ocrad, pspp, python-babel, python-dateutil, python-pytz,
1326python-setuptools, python-simplejson, python-wrapper, python2-babel,
1327python2-dateutil, python2-mechanize, python2-pyicu, python2-pysqlite,
1328python2-pytz, python2-setuptools, python2-simplejson, qemu-system-initrd,
1329qemu-with-multiple-smb-shares, ripperx, shadow, ttf-bitstream-vera, units,
1330valgrind, xmlto, xnee, yasm
1331
1332*** 27 package updates
1333
1334bigloo 4.0b, cairo 1.12.16, ddrescue 1.17, fontconfig 2.10.93, fplll 4.0.4,
1335gcc 4.7.3, gcc 4.7.3, glibc 2.18, glibc 2.18, glibc-stripped-tarball 2.18,
1336gnupg 2.0.21, gnutls 3.2.4, guile 2.0.9, guile 2.0.9, harfbuzz 0.9.21,
1337imagemagick 6.8.6-9, libdrm 2.4.46, libgcrypt 1.5.3, libjpeg 9, libksba 1.3.0,
1338linux-libre 3.11, m4 1.4.17, mpfrcx 0.4.2, pari-gp 2.5.4, python 2.7.5, python
13393.3.2, texlive 2013
8f37bf62
LC
1340
1341*** Fontconfig font search path made more convenient
1342
1343Fontconfig, the library used by many graphical applications, such as those
1344based on GTK+, now knows where to find the default set of fonts. Additional
1345fonts installed in the user profile are automatically picked up.
1346
1347*** More GUI applications
1348
1349The ‘emacs’ and ‘racket’ packages are now linked against GTK+. New GTK+
1350applications have been added (see above.)
1351
1352*** Packaging guidelines
1353
1354The documentation of packaging guidelines has been augmented. See the manual
1355under “GNU Distribution”.
1356
1357*** Support for Python 3 along with Python 2
1358
1359Python 3 has been added to the distribution, and Python packages that support
1360it are now built for both Python 2 and Python 3. See the “Python Modules”
1361section of the manual for details.
1362
1363** Internationalization
1364
1365Updated translations: eo.
1366
1367** Bugs fixed
1368
6bf3e5f7 1369*** Workarounds for Guile 2.0.5 now work on Debian derivatives
8f37bf62 1370*** The dependency graph image has correct size in PDF output
6bf3e5f7 1371*** 'ldd' now works correctly on x86_64
8f37bf62 1372*** Xorg server test suite no longer fails (http://bugs.gnu.org/15392)
bb5f01c5 1373*** module-init-tools now builds (http://bugs.gnu.org/15182, http://bugs.gnu.org/15187)
6bf3e5f7 1374*** Hop 2.4 builds with newer Bigloo (http://bugs.gnu.org/15194)
85f3a05e 1375
d1495831
LC
1376* Changes in 0.3 (since 0.2)
1377
1378** Package management
bdbb6fbb
LC
1379
1380*** Cross-compilation support
1381
1382Guix can now cross-build packages. On the command-line, this is achieved with
1383the new ‘--target’ command-line option of ‘guix build’. At the Scheme level,
1384the guts of this is the ‘package-cross-derivation’ procedure. Core packages
1385of the distribution can already be cross-compiled. See the manual for
1386details.
1387
d1495831
LC
1388*** New ‘--max-silent-time’ option for “guix build” and “guix package”
1389
1390See the manual for details.
1391
bdbb6fbb
LC
1392*** New ‘--fallback’ option for “guix build” and “guix package”
1393
1394This option instructs to fall back to local builds when the substituter fails
1395to download a substitute.
1396
8e59fdd5
LC
1397*** New ‘--requisites’ option for “guix gc”
1398
1399See the manual for details.
1400
5939006b
LC
1401*** New ‘--key-download’ option for “guix refresh”
1402
1403See the manual for details.
42300254
LC
1404
1405** Programming interfaces
1406
5939006b
LC
1407*** New ‘package-cross-derivation’ procedure in (guix derivations)
1408
1409See the manual for details.
1410
1411*** New ‘%current-target-system’ SRFI-39 parameter
1412
1413This parameter is like ‘%current-system’, but for cross-compilation. It
1414allows code in package definitions (such as in the ‘arguments’ field) to know
1415whether it is being cross-compiled, and what the target system is.
1416
42300254
LC
1417*** New (guix hash) module; new ‘open-sha256-port’ and ‘sha256-port’ procedures
1418
1419This improves performance of SHA256 computations.
1420
5939006b
LC
1421
1422** GNU distribution
1423
3253830d 1424*** 33 new packages
5939006b 1425
3253830d
LC
1426alsa-lib, babel, cairo, cvs, gcal, gcc-cross-mips64el-linux-gnuabi64, gd,
1427gdk-pixbuf, graphviz, grue-hunter, gtk+, gts, harfbuzz, imagemagick, iproute2,
1428iptables, libspectre, mpg321, noweb, pango, plotutils, privoxy, pytz, racket,
1429rubber, rush, strace, tk, torsocks, unrtf, vc-dwim, wordnet, xlockmore
5939006b 1430
3253830d 1431*** 25 package updates
5939006b 1432
3253830d
LC
1433automake 1.14, ed 1.9, freeipmi 1.2.8, gawk 4.1.0, gcc 4.8.1, gettext 0.18.3,
1434glib 2.37.1, gmp 5.1.2, gnutls 3.2.1, gzip 1.6, help2man 1.43.3, libapr 1.4.8,
1435libaprutil 1.5.2, libassuan 2.1.1, libffi 3.0.13, libgc 7.2d, libgpg-error
14361.12, libidn 1.28, libpng 1.5.17, lout 3.40, lsh 2.1, nettle 2.7.1, qemu
14371.5.1, tzdata 2013d, xorriso 1.3.0
5939006b
LC
1438
1439*** Binary packages now available for i686-linux
1440
1441The build farm at http://hydra.gnu.org now provides 32-bit GNU/Linux binaries
1442(i686-linux), in addition to the x86_64-linux binaries. Both can be
1443transparently used as substitutes for local builds on these platforms.
1444
1445*** Debug info packages
1446
1447Some packages now have a “debug” output containing debugging information. The
1448“debug” output can be used by GDB, and can be installed separately from the
1449other outputs of the package. See “Installing Debugging Files” in the manual.
1450
1451*** Bootstrap binaries can be cross-compiled
1452
1453The distribution can now be ported to new architectures (currently
1454GNU/Linux-only) by cross-compiling the “bootstrap binaries”. See “Porting”
1455in the manual.
1456
1457*** Bootstrapping documented
1458
1459See “Bootstrapping” in the manual, for information on how the GNU
1460distribution builds “from scratch”.
1461
1462** Internationalization
1463
1464New translations: eo, pt_BR.
1465
d1495831
LC
1466** Bugs fixed
1467*** “guix --help” now works when using Guile 2.0.5
1468*** Binary substituter multi-threading and pipe issues fixed
1469
1470These could lead to random substituter crashes while substituting a binary.
1471See commits 0332386 and 101d9f3 for details.
1472
bdbb6fbb
LC
1473*** Binary substituter gracefully handles lack of network connectivity
1474
16357e8c
LC
1475*** Daemon properly handles rebuilds of multiple-output derivations
1476
1477Previously it would fail when rebuilding a multiple-output derivation when
1478some (but not all) of its outputs were already present. See
1479http://lists.gnu.org/archive/html/bug-guix/2013-06/msg00038.html and
1480https://github.com/NixOS/nix/issues/122 .
1481
5939006b
LC
1482*** ‘guix package -i foo:out’ no longer removes other outputs of ‘foo’
1483
1484Previously only the ‘out’ output of package ‘foo’ would be kept in the
1485profile.
1486
3253830d
LC
1487*** Replacement (srfi srfi-37) provided if the user’s one is broken
1488
1489When the user’s (srfi srfi-37) is affected by http://bugs.gnu.org/13176 (Guile
1490< 2.0.9), a replacement with the bug fix is provided. This bug would affect
1491command-line argument processing in some cases.
1492
85f3a05e
LC
1493* Changes in 0.2 (since 0.1)
1494
4056b828
LC
1495** Package management
1496
1497*** Guix commands are now sub-commands of the “guix” program
1498
1499Instead of typing “guix-package”, one now has to type “guix package”, and so
1500on. This has allowed us to homogenize the user interface and initial program
1501setup, and to allow commands to be upgradable through “guix pull”.
1502
06504acb
LC
1503*** New “guix package --upgrade” option
1504
1505As the name implies, this option atomically upgrades all the packages
e3729544
LC
1506installed in a profile or the set of packages matching a given regexp.
1507See “Invoking guix package” in the manual.
06504acb 1508
0f241da2
LC
1509*** New “guix package --search” option
1510
1511Performs a full text search in package synopses and descriptions, and returns
1512the matching packages in recutils format. See “Invoking guix package” in the
1513manual, for details.
1514
4056b828
LC
1515*** New “guix pull” command
1516
1517The command pulls the latest version of Guix–both the package management
1518modules and the distribution. See the manual for details.
1519
1520*** New binary substituter
1521
1522The “substituter” mechanism allows pre-built binaries to be transparently
1523downloaded instead of performing a build locally. Currently binaries are
0f241da2
LC
1524available for x86_64 Linux-based GNU systems from http://hydra.gnu.org. The
1525distribution is continuously built and binaries are made available from there.
1526
1527See http://hydra.gnu.org/jobset/gnu/master under “Job status” for the list of
1528available binary packages.
4056b828
LC
1529
1530*** New “guix refresh” command
1531
1532The command is used by Guix maintainers. It automatically updates the
1533distribution to the latest upstream releases of GNU software.
1534
1535*** New “guix hash” command
1536
1537Convenience command to compute the hash of a file. See the manual for
1538details.
1539
0f241da2 1540*** Nix daemon code updated
4056b828 1541
0f241da2
LC
1542The daemon code from Nix, used by the ‘guix-daemon’ command, has been updated
1543to current Nix ‘master’.
4056b828
LC
1544
1545** Programming interfaces
1546
0f241da2
LC
1547*** (guix download) now supports HTTPS, using GnuTLS
1548
1549It allows package source tarballs to be retrieved over HTTPS.
1550
4056b828
LC
1551*** New ‘native-search-path’ and ‘search-path’ package fields
1552
1553Packages can define in their ‘native-search-path’ field environment variables
1554that define search paths and need to be set for proper functioning of the
1555package. For instance, GCC has ‘CPATH’ and ‘LIBRARY_PATH’ in its
1556‘native-search-path’, Perl has ‘PERL5LIB’, Python has ‘PYTHONPATH’, etc.
1557These environment variables are automatically set when building a package that
1558uses one of these.
1559
1560*** Package inputs can be a function of the target system type
1561
1562The ‘inputs’ field of a package can now be conditional on the value of
1563(%current-system). This is useful for packages that take system-dependent
1564tarballs as inputs, such as GNU/MIT Scheme.
1565
1566*** New build systems
1567
1568The ‘perl-build-system’, ‘python-build-system’, and ‘cmake-build-system’ have
1569been added. They implement the standard build systems for Perl, Python, and
1570CMake packages.
1571
47d18810
LC
1572*** Tools to build Linux initrds, QEMU images, and more
1573
1574The (gnu packages linux-initrd) module provides a procedure to build a Linux
1575initrd (“initial RAM disk”). The initrd embeds Guile, which is used to
1576evaluate the given expression. The example below returns an initrd that
1577mounts the /proc file system and starts a REPL:
1578
1579 (expression->initrd
1580 '(begin
1581 (mkdir "/proc")
1582 (mount "none" "/proc" "proc")
1583 ((@ (system repl repl) start-repl))))
1584
1585More examples in the linux-initrd.scm file.
1586
1587Experimental interfaces to produce and use QEMU images are provided by the
1588(gnu system vm) module. For instance, the
1589‘expression->derivation-in-linux-vm’ evaluates the given Scheme expression in
1590a QEMU virtual machine running the Linux kernel and Guile.
1591
4056b828
LC
1592** GNU distribution
1593
1594Many updates and additions have been made to the distribution. Here are the
1595highlights.
1596
1597*** Major updates
1598
1599GCC 4.7.3 (the default) and GCC 4.8.0, Binutils 2.23.2, Guile 2.0.9,
1600Coreutils 8.20, GDB 7.6, Texinfo 5.1.
1601
1602*** Noteworthy new packages
1603
0f241da2
LC
1604TeXLive, Xorg, GNU GRUB, GNU Parted, QEMU and QEMU-KVM, Avahi, Bigloo,
1605CHICKEN, Scheme48, Hugs, Python, Lua, Samba.