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