diff options
Diffstat (limited to 'nixos/doc/manual/release-notes/rl-1509.xml')
-rw-r--r-- | nixos/doc/manual/release-notes/rl-1509.xml | 1021 |
1 files changed, 640 insertions, 381 deletions
diff --git a/nixos/doc/manual/release-notes/rl-1509.xml b/nixos/doc/manual/release-notes/rl-1509.xml index 6c1c46844ccb..e500c9d63422 100644 --- a/nixos/doc/manual/release-notes/rl-1509.xml +++ b/nixos/doc/manual/release-notes/rl-1509.xml @@ -3,375 +3,640 @@ xmlns:xi="http://www.w3.org/2001/XInclude" version="5.0" xml:id="sec-release-15.09"> + <title>Release 15.09 (“Dingo”, 2015/09/30)</title> -<title>Release 15.09 (“Dingo”, 2015/09/30)</title> - -<para>In addition to numerous new and upgraded packages, this release -has the following highlights:</para> - -<itemizedlist> + <para> + In addition to numerous new and upgraded packages, this release has the + following highlights: + </para> + <itemizedlist> <listitem> - <para>The <link xlink:href="http://haskell.org/">Haskell</link> - packages infrastructure has been re-designed from the ground up - ("Haskell NG"). NixOS now distributes the latest version - of every single package registered on <link - xlink:href="http://hackage.haskell.org/">Hackage</link> -- well in - excess of 8,000 Haskell packages. Detailed instructions on how to - use that infrastructure can be found in the <link + <para> + The <link xlink:href="http://haskell.org/">Haskell</link> packages + infrastructure has been re-designed from the ground up ("Haskell + NG"). NixOS now distributes the latest version of every single package + registered on + <link + xlink:href="http://hackage.haskell.org/">Hackage</link> -- well + in excess of 8,000 Haskell packages. Detailed instructions on how to use + that infrastructure can be found in the + <link xlink:href="http://nixos.org/nixpkgs/manual/#users-guide-to-the-haskell-infrastructure">User's - Guide to the Haskell Infrastructure</link>. Users migrating from an - earlier release may find helpful information below, in the list of - backwards-incompatible changes. Furthermore, we distribute 51(!) - additional Haskell package sets that provide every single <link + Guide to the Haskell Infrastructure</link>. Users migrating from an earlier + release may find helpful information below, in the list of + backwards-incompatible changes. Furthermore, we distribute 51(!) additional + Haskell package sets that provide every single + <link xlink:href="http://www.stackage.org/">LTS Haskell</link> release - since version 0.0 as well as the most recent <link + since version 0.0 as well as the most recent + <link xlink:href="http://www.stackage.org/">Stackage Nightly</link> - snapshot. The announcement <link + snapshot. The announcement + <link xlink:href="https://nixos.org/nix-dev/2015-September/018138.html">"Full - Stackage Support in Nixpkgs"</link> gives additional - details.</para> + Stackage Support in Nixpkgs"</link> gives additional details. + </para> </listitem> - <listitem> - <para>Nix has been updated to version 1.10, which among other - improvements enables cryptographic signatures on binary caches for - improved security.</para> + <para> + Nix has been updated to version 1.10, which among other improvements + enables cryptographic signatures on binary caches for improved security. + </para> </listitem> - <listitem> - <para>You can now keep your NixOS system up to date automatically - by setting - + <para> + You can now keep your NixOS system up to date automatically by setting <programlisting> system.autoUpgrade.enable = true; </programlisting> - - This will cause the system to periodically check for updates in - your current channel and run <command>nixos-rebuild</command>.</para> + This will cause the system to periodically check for updates in your + current channel and run <command>nixos-rebuild</command>. + </para> </listitem> - <listitem> - <para>This release is based on Glibc 2.21, GCC 4.9 and Linux - 3.18.</para> + <para> + This release is based on Glibc 2.21, GCC 4.9 and Linux 3.18. + </para> </listitem> - <listitem> - <para>GNOME has been upgraded to 3.16. - </para> + <para> + GNOME has been upgraded to 3.16. + </para> </listitem> - <listitem> - <para>Xfce has been upgraded to 4.12. - </para> + <para> + Xfce has been upgraded to 4.12. + </para> </listitem> - <listitem> - <para>KDE 5 has been upgraded to KDE Frameworks 5.10, - Plasma 5.3.2 and Applications 15.04.3. - KDE 4 has been updated to kdelibs-4.14.10. - </para> + <para> + KDE 5 has been upgraded to KDE Frameworks 5.10, Plasma 5.3.2 and + Applications 15.04.3. KDE 4 has been updated to kdelibs-4.14.10. + </para> </listitem> - <listitem> - <para>E19 has been upgraded to 0.16.8.15. - </para> + <para> + E19 has been upgraded to 0.16.8.15. + </para> </listitem> + </itemizedlist> -</itemizedlist> - - -<para>The following new services were added since the last release: - + <para> + The following new services were added since the last release: <itemizedlist> - <listitem><para><literal>services/mail/exim.nix</literal></para></listitem> - <listitem><para><literal>services/misc/apache-kafka.nix</literal></para></listitem> - <listitem><para><literal>services/misc/canto-daemon.nix</literal></para></listitem> - <listitem><para><literal>services/misc/confd.nix</literal></para></listitem> - <listitem><para><literal>services/misc/devmon.nix</literal></para></listitem> - <listitem><para><literal>services/misc/gitit.nix</literal></para></listitem> - <listitem><para><literal>services/misc/ihaskell.nix</literal></para></listitem> - <listitem><para><literal>services/misc/mbpfan.nix</literal></para></listitem> - <listitem><para><literal>services/misc/mediatomb.nix</literal></para></listitem> - <listitem><para><literal>services/misc/mwlib.nix</literal></para></listitem> - <listitem><para><literal>services/misc/parsoid.nix</literal></para></listitem> - <listitem><para><literal>services/misc/plex.nix</literal></para></listitem> - <listitem><para><literal>services/misc/ripple-rest.nix</literal></para></listitem> - <listitem><para><literal>services/misc/ripple-data-api.nix</literal></para></listitem> - <listitem><para><literal>services/misc/subsonic.nix</literal></para></listitem> - <listitem><para><literal>services/misc/sundtek.nix</literal></para></listitem> - <listitem><para><literal>services/monitoring/cadvisor.nix</literal></para></listitem> - <listitem><para><literal>services/monitoring/das_watchdog.nix</literal></para></listitem> - <listitem><para><literal>services/monitoring/grafana.nix</literal></para></listitem> - <listitem><para><literal>services/monitoring/riemann-tools.nix</literal></para></listitem> - <listitem><para><literal>services/monitoring/teamviewer.nix</literal></para></listitem> - <listitem><para><literal>services/network-filesystems/u9fs.nix</literal></para></listitem> - <listitem><para><literal>services/networking/aiccu.nix</literal></para></listitem> - <listitem><para><literal>services/networking/asterisk.nix</literal></para></listitem> - <listitem><para><literal>services/networking/bird.nix</literal></para></listitem> - <listitem><para><literal>services/networking/charybdis.nix</literal></para></listitem> - <listitem><para><literal>services/networking/docker-registry-server.nix</literal></para></listitem> - <listitem><para><literal>services/networking/fan.nix</literal></para></listitem> - <listitem><para><literal>services/networking/firefox/sync-server.nix</literal></para></listitem> - <listitem><para><literal>services/networking/gateone.nix</literal></para></listitem> - <listitem><para><literal>services/networking/heyefi.nix</literal></para></listitem> - <listitem><para><literal>services/networking/i2p.nix</literal></para></listitem> - <listitem><para><literal>services/networking/lambdabot.nix</literal></para></listitem> - <listitem><para><literal>services/networking/mstpd.nix</literal></para></listitem> - <listitem><para><literal>services/networking/nix-serve.nix</literal></para></listitem> - <listitem><para><literal>services/networking/nylon.nix</literal></para></listitem> - <listitem><para><literal>services/networking/racoon.nix</literal></para></listitem> - <listitem><para><literal>services/networking/skydns.nix</literal></para></listitem> - <listitem><para><literal>services/networking/shout.nix</literal></para></listitem> - <listitem><para><literal>services/networking/softether.nix</literal></para></listitem> - <listitem><para><literal>services/networking/sslh.nix</literal></para></listitem> - <listitem><para><literal>services/networking/tinc.nix</literal></para></listitem> - <listitem><para><literal>services/networking/tlsdated.nix</literal></para></listitem> - <listitem><para><literal>services/networking/tox-bootstrapd.nix</literal></para></listitem> - <listitem><para><literal>services/networking/tvheadend.nix</literal></para></listitem> - <listitem><para><literal>services/networking/zerotierone.nix</literal></para></listitem> - <listitem><para><literal>services/scheduling/marathon.nix</literal></para></listitem> - <listitem><para><literal>services/security/fprintd.nix</literal></para></listitem> - <listitem><para><literal>services/security/hologram.nix</literal></para></listitem> - <listitem><para><literal>services/security/munge.nix</literal></para></listitem> - <listitem><para><literal>services/system/cloud-init.nix</literal></para></listitem> - <listitem><para><literal>services/web-servers/shellinabox.nix</literal></para></listitem> - <listitem><para><literal>services/web-servers/uwsgi.nix</literal></para></listitem> - <listitem><para><literal>services/x11/unclutter.nix</literal></para></listitem> - <listitem><para><literal>services/x11/display-managers/sddm.nix</literal></para></listitem> - <listitem><para><literal>system/boot/coredump.nix</literal></para></listitem> - <listitem><para><literal>system/boot/loader/loader.nix</literal></para></listitem> - <listitem><para><literal>system/boot/loader/generic-extlinux-compatible</literal></para></listitem> - <listitem><para><literal>system/boot/networkd.nix</literal></para></listitem> - <listitem><para><literal>system/boot/resolved.nix</literal></para></listitem> - <listitem><para><literal>system/boot/timesyncd.nix</literal></para></listitem> - <listitem><para><literal>tasks/filesystems/exfat.nix</literal></para></listitem> - <listitem><para><literal>tasks/filesystems/ntfs.nix</literal></para></listitem> - <listitem><para><literal>tasks/filesystems/vboxsf.nix</literal></para></listitem> - <listitem><para><literal>virtualisation/virtualbox-host.nix</literal></para></listitem> - <listitem><para><literal>virtualisation/vmware-guest.nix</literal></para></listitem> - <listitem><para><literal>virtualisation/xen-dom0.nix</literal></para></listitem> + <listitem> + <para> + <literal>services/mail/exim.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/misc/apache-kafka.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/misc/canto-daemon.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/misc/confd.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/misc/devmon.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/misc/gitit.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/misc/ihaskell.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/misc/mbpfan.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/misc/mediatomb.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/misc/mwlib.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/misc/parsoid.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/misc/plex.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/misc/ripple-rest.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/misc/ripple-data-api.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/misc/subsonic.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/misc/sundtek.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/monitoring/cadvisor.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/monitoring/das_watchdog.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/monitoring/grafana.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/monitoring/riemann-tools.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/monitoring/teamviewer.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/network-filesystems/u9fs.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/aiccu.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/asterisk.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/bird.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/charybdis.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/docker-registry-server.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/fan.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/firefox/sync-server.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/gateone.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/heyefi.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/i2p.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/lambdabot.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/mstpd.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/nix-serve.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/nylon.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/racoon.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/skydns.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/shout.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/softether.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/sslh.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/tinc.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/tlsdated.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/tox-bootstrapd.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/tvheadend.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/networking/zerotierone.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/scheduling/marathon.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/security/fprintd.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/security/hologram.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/security/munge.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/system/cloud-init.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/web-servers/shellinabox.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/web-servers/uwsgi.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/x11/unclutter.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>services/x11/display-managers/sddm.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>system/boot/coredump.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>system/boot/loader/loader.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>system/boot/loader/generic-extlinux-compatible</literal> + </para> + </listitem> + <listitem> + <para> + <literal>system/boot/networkd.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>system/boot/resolved.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>system/boot/timesyncd.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>tasks/filesystems/exfat.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>tasks/filesystems/ntfs.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>tasks/filesystems/vboxsf.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>virtualisation/virtualbox-host.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>virtualisation/vmware-guest.nix</literal> + </para> + </listitem> + <listitem> + <para> + <literal>virtualisation/xen-dom0.nix</literal> + </para> + </listitem> </itemizedlist> -</para> - - -<para>When upgrading from a previous release, please be aware of the -following incompatible changes: - -<itemizedlist> - -<listitem><para><command>sshd</command> no longer supports DSA and ECDSA -host keys by default. If you have existing systems with such host keys -and want to continue to use them, please set + </para> + <para> + When upgrading from a previous release, please be aware of the following + incompatible changes: + <itemizedlist> + <listitem> + <para> + <command>sshd</command> no longer supports DSA and ECDSA host keys by + default. If you have existing systems with such host keys and want to + continue to use them, please set <programlisting> system.stateVersion = "14.12"; </programlisting> - -The new option <option>system.stateVersion</option> ensures that -certain configuration changes that could break existing systems (such -as the <command>sshd</command> host key setting) will maintain -compatibility with the specified NixOS release. NixOps sets the state -version of existing deployments automatically.</para></listitem> - -<listitem><para><command>cron</command> is no longer enabled by -default, unless you have a non-empty -<option>services.cron.systemCronJobs</option>. To force -<command>cron</command> to be enabled, set -<option>services.cron.enable = true</option>.</para></listitem> - -<listitem><para>Nix now requires binary caches to be cryptographically -signed. If you have unsigned binary caches that you want to continue -to use, you should set <option>nix.requireSignedBinaryCaches = -false</option>.</para></listitem> - -<listitem><para>Steam now doesn't need root rights to work. Instead of using -<literal>*-steam-chrootenv</literal>, you should now just run <literal>steam</literal>. -<literal>steamChrootEnv</literal> package was renamed to <literal>steam</literal>, -and old <literal>steam</literal> package -- to <literal>steamOriginal</literal>. -</para></listitem> - -<listitem><para>CMPlayer has been renamed to bomi upstream. Package -<literal>cmplayer</literal> was accordingly renamed to -<literal>bomi</literal> </para></listitem> - -<listitem><para>Atom Shell has been renamed to Electron upstream. Package <literal>atom-shell</literal> -was accordingly renamed to <literal>electron</literal> -</para></listitem> - -<listitem><para>Elm is not released on Hackage anymore. You should now use <literal>elmPackages.elm</literal> -which contains the latest Elm platform.</para></listitem> - -<listitem> - <para>The CUPS printing service has been updated to version - <literal>2.0.2</literal>. Furthermore its systemd service has been - renamed to <literal>cups.service</literal>.</para> - - <para>Local printers are no longer shared or advertised by - default. This behavior can be changed by enabling - <option>services.printing.defaultShared</option> or - <option>services.printing.browsing</option> respectively.</para> -</listitem> - -<listitem> - <para> - The VirtualBox host and guest options have been named more - consistently. They can now found in - <option>virtualisation.virtualbox.host.*</option> instead of - <option>services.virtualboxHost.*</option> and - <option>virtualisation.virtualbox.guest.*</option> instead of - <option>services.virtualboxGuest.*</option>. - </para> - - <para> - Also, there now is support for the <literal>vboxsf</literal> file - system using the <option>fileSystems</option> configuration - attribute. An example of how this can be used in a configuration: - + The new option <option>system.stateVersion</option> ensures that certain + configuration changes that could break existing systems (such as the + <command>sshd</command> host key setting) will maintain compatibility with + the specified NixOS release. NixOps sets the state version of existing + deployments automatically. + </para> + </listitem> + <listitem> + <para> + <command>cron</command> is no longer enabled by default, unless you have a + non-empty <option>services.cron.systemCronJobs</option>. To force + <command>cron</command> to be enabled, set <option>services.cron.enable = + true</option>. + </para> + </listitem> + <listitem> + <para> + Nix now requires binary caches to be cryptographically signed. If you have + unsigned binary caches that you want to continue to use, you should set + <option>nix.requireSignedBinaryCaches = false</option>. + </para> + </listitem> + <listitem> + <para> + Steam now doesn't need root rights to work. Instead of using + <literal>*-steam-chrootenv</literal>, you should now just run + <literal>steam</literal>. <literal>steamChrootEnv</literal> package was + renamed to <literal>steam</literal>, and old <literal>steam</literal> + package -- to <literal>steamOriginal</literal>. + </para> + </listitem> + <listitem> + <para> + CMPlayer has been renamed to bomi upstream. Package + <literal>cmplayer</literal> was accordingly renamed to + <literal>bomi</literal> + </para> + </listitem> + <listitem> + <para> + Atom Shell has been renamed to Electron upstream. Package + <literal>atom-shell</literal> was accordingly renamed to + <literal>electron</literal> + </para> + </listitem> + <listitem> + <para> + Elm is not released on Hackage anymore. You should now use + <literal>elmPackages.elm</literal> which contains the latest Elm platform. + </para> + </listitem> + <listitem> + <para> + The CUPS printing service has been updated to version + <literal>2.0.2</literal>. Furthermore its systemd service has been renamed + to <literal>cups.service</literal>. + </para> + <para> + Local printers are no longer shared or advertised by default. This + behavior can be changed by enabling + <option>services.printing.defaultShared</option> or + <option>services.printing.browsing</option> respectively. + </para> + </listitem> + <listitem> + <para> + The VirtualBox host and guest options have been named more consistently. + They can now found in <option>virtualisation.virtualbox.host.*</option> + instead of <option>services.virtualboxHost.*</option> and + <option>virtualisation.virtualbox.guest.*</option> instead of + <option>services.virtualboxGuest.*</option>. + </para> + <para> + Also, there now is support for the <literal>vboxsf</literal> file system + using the <option>fileSystems</option> configuration attribute. An example + of how this can be used in a configuration: <programlisting> fileSystems."/shiny" = { device = "myshinysharedfolder"; fsType = "vboxsf"; }; </programlisting> - - </para> -</listitem> - -<listitem> - <para> - "<literal>nix-env -qa</literal>" no longer discovers - Haskell packages by name. The only packages visible in the global - scope are <literal>ghc</literal>, <literal>cabal-install</literal>, - and <literal>stack</literal>, but all other packages are hidden. The - reason for this inconvenience is the sheer size of the Haskell - package set. Name-based lookups are expensive, and most - <literal>nix-env -qa</literal> operations would become much slower - if we'd add the entire Hackage database into the top level attribute - set. Instead, the list of Haskell packages can be displayed by - running: - </para> - <programlisting> + </para> + </listitem> + <listitem> + <para> + "<literal>nix-env -qa</literal>" no longer discovers Haskell + packages by name. The only packages visible in the global scope are + <literal>ghc</literal>, <literal>cabal-install</literal>, and + <literal>stack</literal>, but all other packages are hidden. The reason + for this inconvenience is the sheer size of the Haskell package set. + Name-based lookups are expensive, and most <literal>nix-env -qa</literal> + operations would become much slower if we'd add the entire Hackage + database into the top level attribute set. Instead, the list of Haskell + packages can be displayed by running: + </para> +<programlisting> nix-env -f "<nixpkgs>" -qaP -A haskellPackages </programlisting> - <para> - Executable programs written in Haskell can be installed with: - </para> - <programlisting> + <para> + Executable programs written in Haskell can be installed with: + </para> +<programlisting> nix-env -f "<nixpkgs>" -iA haskellPackages.pandoc </programlisting> - <para> - Installing Haskell <emphasis>libraries</emphasis> this way, however, is no - longer supported. See the next item for more details. - </para> -</listitem> - -<listitem> - <para> - Previous versions of NixOS came with a feature called - <literal>ghc-wrapper</literal>, a small script that allowed GHC to - transparently pick up on libraries installed in the user's profile. This - feature has been deprecated; <literal>ghc-wrapper</literal> was removed - from the distribution. The proper way to register Haskell libraries with - the compiler now is the <literal>haskellPackages.ghcWithPackages</literal> - function. The <link + <para> + Installing Haskell <emphasis>libraries</emphasis> this way, however, is no + longer supported. See the next item for more details. + </para> + </listitem> + <listitem> + <para> + Previous versions of NixOS came with a feature called + <literal>ghc-wrapper</literal>, a small script that allowed GHC to + transparently pick up on libraries installed in the user's profile. This + feature has been deprecated; <literal>ghc-wrapper</literal> was removed + from the distribution. The proper way to register Haskell libraries with + the compiler now is the <literal>haskellPackages.ghcWithPackages</literal> + function. The + <link xlink:href="http://nixos.org/nixpkgs/manual/#users-guide-to-the-haskell-infrastructure">User's - Guide to the Haskell Infrastructure</link> provides more information about - this subject. - </para> -</listitem> - -<listitem> - <para> - All Haskell builds that have been generated with version 1.x of - the <literal>cabal2nix</literal> utility are now invalid and need - to be re-generated with a current version of - <literal>cabal2nix</literal> to function. The most recent version - of this tool can be installed by running - <literal>nix-env -i cabal2nix</literal>. - </para> -</listitem> - -<listitem> - <para> - The <literal>haskellPackages</literal> set in Nixpkgs used to have a - function attribute called <literal>extension</literal> that users - could override in their <literal>~/.nixpkgs/config.nix</literal> - files to configure additional attributes, etc. That function still - exists, but it's now called <literal>overrides</literal>. - </para> -</listitem> - -<listitem> - <para> - The OpenBLAS library has been updated to version - <literal>0.2.14</literal>. Support for the - <literal>x86_64-darwin</literal> platform was added. Dynamic - architecture detection was enabled; OpenBLAS now selects - microarchitecture-optimized routines at runtime, so optimal - performance is achieved without the need to rebuild OpenBLAS - locally. OpenBLAS has replaced ATLAS in most packages which use an - optimized BLAS or LAPACK implementation. - </para> -</listitem> - -<listitem> - <para> - The <literal>phpfpm</literal> is now using the default PHP version - (<literal>pkgs.php</literal>) instead of PHP 5.4 (<literal>pkgs.php54</literal>). - </para> -</listitem> - -<listitem> - <para> - The <literal>locate</literal> service no longer indexes the Nix store - by default, preventing packages with potentially numerous versions from - cluttering the output. Indexing the store can be activated by setting - <option>services.locate.includeStore = true</option>. - </para> -</listitem> - -<listitem> - <para> - The Nix expression search path (<envar>NIX_PATH</envar>) no longer - contains <filename>/etc/nixos/nixpkgs</filename> by default. You - can override <envar>NIX_PATH</envar> by setting - <option>nix.nixPath</option>. - </para> -</listitem> - -<listitem> - <para> - Python 2.6 has been marked as broken (as it no longer receives - security updates from upstream). - </para> -</listitem> - -<listitem> - <para> - Any use of module arguments such as <varname>pkgs</varname> to access - library functions, or to define <literal>imports</literal> attributes - will now lead to an infinite loop at the time of the evaluation. - </para> - - <para> - In case of an infinite loop, use the <command>--show-trace</command> - command line argument and read the line just above the error message. - + Guide to the Haskell Infrastructure</link> provides more information about + this subject. + </para> + </listitem> + <listitem> + <para> + All Haskell builds that have been generated with version 1.x of the + <literal>cabal2nix</literal> utility are now invalid and need to be + re-generated with a current version of <literal>cabal2nix</literal> to + function. The most recent version of this tool can be installed by running + <literal>nix-env -i cabal2nix</literal>. + </para> + </listitem> + <listitem> + <para> + The <literal>haskellPackages</literal> set in Nixpkgs used to have a + function attribute called <literal>extension</literal> that users could + override in their <literal>~/.nixpkgs/config.nix</literal> files to + configure additional attributes, etc. That function still exists, but it's + now called <literal>overrides</literal>. + </para> + </listitem> + <listitem> + <para> + The OpenBLAS library has been updated to version + <literal>0.2.14</literal>. Support for the + <literal>x86_64-darwin</literal> platform was added. Dynamic architecture + detection was enabled; OpenBLAS now selects microarchitecture-optimized + routines at runtime, so optimal performance is achieved without the need + to rebuild OpenBLAS locally. OpenBLAS has replaced ATLAS in most packages + which use an optimized BLAS or LAPACK implementation. + </para> + </listitem> + <listitem> + <para> + The <literal>phpfpm</literal> is now using the default PHP version + (<literal>pkgs.php</literal>) instead of PHP 5.4 + (<literal>pkgs.php54</literal>). + </para> + </listitem> + <listitem> + <para> + The <literal>locate</literal> service no longer indexes the Nix store by + default, preventing packages with potentially numerous versions from + cluttering the output. Indexing the store can be activated by setting + <option>services.locate.includeStore = true</option>. + </para> + </listitem> + <listitem> + <para> + The Nix expression search path (<envar>NIX_PATH</envar>) no longer + contains <filename>/etc/nixos/nixpkgs</filename> by default. You can + override <envar>NIX_PATH</envar> by setting <option>nix.nixPath</option>. + </para> + </listitem> + <listitem> + <para> + Python 2.6 has been marked as broken (as it no longer receives security + updates from upstream). + </para> + </listitem> + <listitem> + <para> + Any use of module arguments such as <varname>pkgs</varname> to access + library functions, or to define <literal>imports</literal> attributes will + now lead to an infinite loop at the time of the evaluation. + </para> + <para> + In case of an infinite loop, use the <command>--show-trace</command> + command line argument and read the line just above the error message. <screen> $ nixos-rebuild build --show-trace … while evaluating the module argument `pkgs' in "/etc/nixos/my-module.nix": infinite recursion encountered </screen> - </para> - - - <para> - Any use of <literal>pkgs.lib</literal>, should be replaced by - <varname>lib</varname>, after adding it as argument of the module. The - following module - + </para> + <para> + Any use of <literal>pkgs.lib</literal>, should be replaced by + <varname>lib</varname>, after adding it as argument of the module. The + following module <programlisting> { config, pkgs, ... }: @@ -384,9 +649,7 @@ with pkgs.lib; config = mkIf config.foo { … }; } </programlisting> - - should be modified to look like: - + should be modified to look like: <programlisting> { config, pkgs, lib, ... }: @@ -399,13 +662,11 @@ with lib; config = mkIf config.foo { <replaceable>option definition</replaceable> }; } </programlisting> - </para> - - <para> - When <varname>pkgs</varname> is used to download other projects to - import their modules, and only in such cases, it should be replaced by - <literal>(import <nixpkgs> {})</literal>. The following module - + </para> + <para> + When <varname>pkgs</varname> is used to download other projects to import + their modules, and only in such cases, it should be replaced by + <literal>(import <nixpkgs> {})</literal>. The following module <programlisting> { config, pkgs, ... }: @@ -420,9 +681,7 @@ in imports = [ "${myProject}/module.nix" ]; } </programlisting> - - should be modified to look like: - + should be modified to look like: <programlisting> { config, pkgs, ... }: @@ -437,55 +696,55 @@ in imports = [ "${myProject}/module.nix" ]; } </programlisting> - </para> - -</listitem> - -</itemizedlist> -</para> - - -<para>Other notable improvements: - -<itemizedlist> - - <listitem><para>The nixos and nixpkgs channels were unified, - so one <emphasis>can</emphasis> use <literal>nix-env -iA nixos.bash</literal> - instead of <literal>nix-env -iA nixos.pkgs.bash</literal>. - See <link xlink:href="https://github.com/NixOS/nixpkgs/commit/2cd7c1f198">the commit</link> for details. - </para></listitem> + </para> + </listitem> + </itemizedlist> + </para> - <listitem> + <para> + Other notable improvements: + <itemizedlist> + <listitem> <para> - Users running an SSH server who worry about the quality of their - <literal>/etc/ssh/moduli</literal> file with respect to the - <link + The nixos and nixpkgs channels were unified, so one + <emphasis>can</emphasis> use <literal>nix-env -iA nixos.bash</literal> + instead of <literal>nix-env -iA nixos.pkgs.bash</literal>. See + <link xlink:href="https://github.com/NixOS/nixpkgs/commit/2cd7c1f198">the + commit</link> for details. + </para> + </listitem> + <listitem> + <para> + Users running an SSH server who worry about the quality of their + <literal>/etc/ssh/moduli</literal> file with respect to the + <link xlink:href="https://stribika.github.io/2015/01/04/secure-secure-shell.html">vulnerabilities - discovered in the Diffie-Hellman key exchange</link> can now - replace OpenSSH's default version with one they generated - themselves using the new - <option>services.openssh.moduliFile</option> option. - </para> - </listitem> - - <listitem> <para> - A newly packaged TeX Live 2015 is provided in <literal>pkgs.texlive</literal>, - split into 6500 nix packages. For basic user documentation see - <link xlink:href="https://github.com/NixOS/nixpkgs/blob/release-15.09/pkgs/tools/typesetting/tex/texlive/default.nix#L1" - >the source</link>. - Beware of <link xlink:href="https://github.com/NixOS/nixpkgs/issues/9757" - >an issue</link> when installing a too large package set. - - The plan is to deprecate and maybe delete the original TeX packages - until the next release. - </para> </listitem> - - <listitem><para> - <option>buildEnv.env</option> on all Python interpreters - is now available for nix-shell interoperability. - </para> </listitem> -</itemizedlist> - -</para> - + discovered in the Diffie-Hellman key exchange</link> can now replace + OpenSSH's default version with one they generated themselves using the new + <option>services.openssh.moduliFile</option> option. + </para> + </listitem> + <listitem> + <para> + A newly packaged TeX Live 2015 is provided in + <literal>pkgs.texlive</literal>, split into 6500 nix packages. For basic + user documentation see + <link xlink:href="https://github.com/NixOS/nixpkgs/blob/release-15.09/pkgs/tools/typesetting/tex/texlive/default.nix#L1" + >the + source</link>. Beware of + <link xlink:href="https://github.com/NixOS/nixpkgs/issues/9757" + >an + issue</link> when installing a too large package set. The plan is to + deprecate and maybe delete the original TeX packages until the next + release. + </para> + </listitem> + <listitem> + <para> + <option>buildEnv.env</option> on all Python interpreters is now available + for nix-shell interoperability. + </para> + </listitem> + </itemizedlist> + </para> </section> |