at 18.09-beta 6.5 kB view raw
1<section xmlns="http://docbook.org/ns/docbook" 2 xmlns:xlink="http://www.w3.org/1999/xlink" 3 xmlns:xi="http://www.w3.org/2001/XInclude" 4 version="5.0" 5 xml:id="sec-release-14.04"> 6 <title>Release 14.04 (“Baboon”, 2014/04/30)</title> 7 8 <para> 9 This is the second stable release branch of NixOS. In addition to numerous 10 new and upgraded packages and modules, this release has the following 11 highlights: 12 <itemizedlist> 13 <listitem> 14 <para> 15 Installation on UEFI systems is now supported. See 16 <xref linkend="sec-installation"/> for details. 17 </para> 18 </listitem> 19 <listitem> 20 <para> 21 Systemd has been updated to version 212, which has 22 <link xlink:href="http://cgit.freedesktop.org/systemd/systemd/plain/NEWS?id=v212">numerous 23 improvements</link>. NixOS now automatically starts systemd user instances 24 when you log in. You can define global user units through the 25 <option>systemd.unit.*</option> options. 26 </para> 27 </listitem> 28 <listitem> 29 <para> 30 NixOS is now based on Glibc 2.19 and GCC 4.8. 31 </para> 32 </listitem> 33 <listitem> 34 <para> 35 The default Linux kernel has been updated to 3.12. 36 </para> 37 </listitem> 38 <listitem> 39 <para> 40 KDE has been updated to 4.12. 41 </para> 42 </listitem> 43 <listitem> 44 <para> 45 GNOME 3.10 experimental support has been added. 46 </para> 47 </listitem> 48 <listitem> 49 <para> 50 Nix has been updated to 1.7 51 (<link 52 xlink:href="http://nixos.org/nix/manual/#ssec-relnotes-1.7">details</link>). 53 </para> 54 </listitem> 55 <listitem> 56 <para> 57 NixOS now supports fully declarative management of users and groups. If 58 you set <option>users.mutableUsers</option> to <literal>false</literal>, 59 then the contents of <filename>/etc/passwd</filename> and 60 <filename>/etc/group</filename> will be 61 <link 62 xlink:href="https://www.usenix.org/legacy/event/lisa02/tech/full_papers/traugott/traugott_html/">congruent</link> 63 to your NixOS configuration. For instance, if you remove a user from 64 <option>users.extraUsers</option> and run 65 <command>nixos-rebuild</command>, the user account will cease to exist. 66 Also, imperative commands for managing users and groups, such as 67 <command>useradd</command>, are no longer available. If 68 <option>users.mutableUsers</option> is <literal>true</literal> (the 69 default), then behaviour is unchanged from NixOS 13.10. 70 </para> 71 </listitem> 72 <listitem> 73 <para> 74 NixOS now has basic container support, meaning you can easily run a NixOS 75 instance as a container in a NixOS host system. These containers are 76 suitable for testing and experimentation but not production use, since 77 they’re not fully isolated from the host. See 78 <xref linkend="ch-containers"/> for details. 79 </para> 80 </listitem> 81 <listitem> 82 <para> 83 Systemd units provided by packages can now be overridden from the NixOS 84 configuration. For instance, if a package <literal>foo</literal> provides 85 systemd units, you can say: 86<programlisting> 87systemd.packages = [ pkgs.foo ]; 88</programlisting> 89 to enable those units. You can then set or override unit options in the 90 usual way, e.g. 91<programlisting> 92systemd.services.foo.wantedBy = [ "multi-user.target" ]; 93systemd.services.foo.serviceConfig.MemoryLimit = "512M"; 94</programlisting> 95 </para> 96 </listitem> 97 </itemizedlist> 98 </para> 99 100 <para> 101 When upgrading from a previous release, please be aware of the following 102 incompatible changes: 103 <itemizedlist> 104 <listitem> 105 <para> 106 Nixpkgs no longer exposes unfree packages by default. If your NixOS 107 configuration requires unfree packages from Nixpkgs, you need to enable 108 support for them explicitly by setting: 109<programlisting> 110nixpkgs.config.allowUnfree = true; 111</programlisting> 112 Otherwise, you get an error message such as: 113<screen> 114error: package ‘nvidia-x11-331.49-3.12.17’ in ‘…/nvidia-x11/default.nix:56’ 115 has an unfree license, refusing to evaluate 116</screen> 117 </para> 118 </listitem> 119 <listitem> 120 <para> 121 The Adobe Flash player is no longer enabled by default in the Firefox and 122 Chromium wrappers. To enable it, you must set: 123<programlisting> 124nixpkgs.config.allowUnfree = true; 125nixpkgs.config.firefox.enableAdobeFlash = true; # for Firefox 126nixpkgs.config.chromium.enableAdobeFlash = true; # for Chromium 127</programlisting> 128 </para> 129 </listitem> 130 <listitem> 131 <para> 132 The firewall is now enabled by default. If you don’t want this, you need 133 to disable it explicitly: 134<programlisting> 135networking.firewall.enable = false; 136</programlisting> 137 </para> 138 </listitem> 139 <listitem> 140 <para> 141 The option <option>boot.loader.grub.memtest86</option> has been renamed to 142 <option>boot.loader.grub.memtest86.enable</option>. 143 </para> 144 </listitem> 145 <listitem> 146 <para> 147 The <literal>mysql55</literal> service has been merged into the 148 <literal>mysql</literal> service, which no longer sets a default for the 149 option <option>services.mysql.package</option>. 150 </para> 151 </listitem> 152 <listitem> 153 <para> 154 Package variants are now differentiated by suffixing the name, rather than 155 the version. For instance, <filename>sqlite-3.8.4.3-interactive</filename> 156 is now called <filename>sqlite-interactive-3.8.4.3</filename>. This 157 ensures that <literal>nix-env -i sqlite</literal> is unambiguous, and that 158 <literal>nix-env -u</literal> won’t “upgrade” 159 <literal>sqlite</literal> to <literal>sqlite-interactive</literal> or vice 160 versa. Notably, this change affects the Firefox wrapper (which provides 161 plugins), as it is now called <literal>firefox-wrapper</literal>. So when 162 using <command>nix-env</command>, you should do <literal>nix-env -e 163 firefox; nix-env -i firefox-wrapper</literal> if you want to keep using 164 the wrapper. This change does not affect declarative package management, 165 since attribute names like <literal>pkgs.firefoxWrapper</literal> were 166 already unambiguous. 167 </para> 168 </listitem> 169 <listitem> 170 <para> 171 The symlink <filename>/etc/ca-bundle.crt</filename> is gone. Programs 172 should instead use the environment variable 173 <envar>OPENSSL_X509_CERT_FILE</envar> (which points to 174 <filename>/etc/ssl/certs/ca-bundle.crt</filename>). 175 </para> 176 </listitem> 177 </itemizedlist> 178 </para> 179</section>