2018-03-05 18:36:11 +00:00
<section xmlns= "http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="sec-release-18.09">
2018-05-02 00:57:09 +01:00
<title > Release 18.09 (“Jellyfish”, 2018/09/??)</title>
2018-03-05 18:36:11 +00:00
2018-05-02 00:57:09 +01:00
<section xmlns= "http://docbook.org/ns/docbook"
2018-03-05 18:36:11 +00:00
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="sec-release-18.09-highlights">
2018-05-02 00:57:09 +01:00
<title > Highlights</title>
2018-03-05 18:36:11 +00:00
2018-05-02 00:57:09 +01:00
<para >
In addition to numerous new and upgraded packages, this release has the
following highlights:
</para>
2018-03-05 18:36:11 +00:00
2018-05-02 00:57:09 +01:00
<itemizedlist >
<listitem >
2018-03-05 18:36:11 +00:00
<para >
2018-05-02 00:57:09 +01:00
User channels are now in the default <literal > NIX_PATH</literal> , allowing
users to use their personal <command > nix-channel</command> defined
channels in <command > nix-build</command> and <command > nix-shell</command>
commands, as well as in imports like <code > import
< mychannel> </code> .
2018-03-05 18:36:11 +00:00
</para>
<para >
2018-05-02 00:57:09 +01:00
For example
2018-03-05 18:36:11 +00:00
</para>
2018-05-02 00:57:09 +01:00
<programlisting >
2018-04-02 20:02:43 +01:00
$ nix-channel --add https://nixos.org/channels/nixpkgs-unstable nixpkgsunstable
$ nix-channel --update
$ nix-build '< nixpkgsunstable> ' -A gitFull
$ nix run -f '< nixpkgsunstable> ' gitFull
$ nix-instantiate -E '(import < nixpkgsunstable> {}).gitFull'
</programlisting>
2018-05-02 00:57:09 +01:00
</listitem>
</itemizedlist>
</section>
2018-03-05 18:36:11 +00:00
2018-05-02 00:57:09 +01:00
<section xmlns= "http://docbook.org/ns/docbook"
2018-03-05 18:36:11 +00:00
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="sec-release-18.09-new-services">
2018-05-02 00:57:09 +01:00
<title > New Services</title>
2018-03-05 18:36:11 +00:00
2018-05-02 00:57:09 +01:00
<para >
The following new services were added since the last release:
</para>
2018-03-05 18:36:11 +00:00
2018-05-02 00:57:09 +01:00
<itemizedlist >
<listitem >
2018-03-05 18:36:11 +00:00
<para > </para>
2018-05-02 00:57:09 +01:00
</listitem>
</itemizedlist>
</section>
2018-03-05 18:36:11 +00:00
2018-05-02 00:57:09 +01:00
<section xmlns= "http://docbook.org/ns/docbook"
2018-03-05 18:36:11 +00:00
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="sec-release-18.09-incompatibilities">
2018-05-02 00:57:09 +01:00
<title > Backward Incompatibilities</title>
2018-03-05 18:36:11 +00:00
2018-05-02 00:57:09 +01:00
<para >
When upgrading from a previous release, please be aware of the following
incompatible changes:
</para>
2018-03-05 18:36:11 +00:00
2018-05-02 00:57:09 +01:00
<itemizedlist >
<listitem >
2018-04-03 13:04:05 +01:00
<para >
2018-05-02 00:57:09 +01:00
<literal > lib.strict</literal> is removed. Use
<literal > builtins.seq</literal> instead.
2018-04-03 13:04:05 +01:00
</para>
2018-05-02 00:57:09 +01:00
</listitem>
<listitem >
2018-03-05 18:36:11 +00:00
<para >
2018-05-02 00:57:09 +01:00
The <literal > clementine</literal> package points now to the free
derivation. <literal > clementineFree</literal> is removed now and
<literal > clementineUnfree</literal> points to the package which is bundled
with the unfree <literal > libspotify</literal> package.
2018-03-05 18:36:11 +00:00
</para>
2018-05-02 00:57:09 +01:00
</listitem>
<listitem >
2018-04-30 00:30:42 +01:00
<para >
2018-05-02 00:57:09 +01:00
The <literal > netcat</literal> package is now taken directly from OpenBSD's
<literal > libressl</literal> , instead of relying on Debian's fork. The new
version should be very close to the old version, but there are some minor
differences. Importantly, flags like -b, -q, -C, and -Z are no longer
accepted by the nc command.
2018-04-30 00:30:42 +01:00
</para>
2018-05-02 00:57:09 +01:00
</listitem>
2018-05-02 12:12:57 +01:00
<listitem >
2018-03-26 12:54:01 +01:00
<para >
2018-05-02 12:12:57 +01:00
The <varname > services.docker-registry.extraConfig</varname> object doesn't contain
environment variables anymore. Instead it needs to provide an object structure
that can be mapped onto the YAML configuration defined in <link xlink:href= "https://github.com/docker/distribution/blob/v2.6.2/docs/configuration.md" > the <varname > docker/distribution</varname> docs</link> .
2018-03-26 12:54:01 +01:00
</para>
2018-05-02 12:12:57 +01:00
</listitem>
2018-05-04 20:41:13 +01:00
<listitem >
<para >
<literal > googleearth</literal> has been removed from Nixpkgs. Google does not provide
a stable URL for Nixpkgs to use to package this proprietary software.
</para>
</listitem>
2018-05-02 00:57:09 +01:00
</itemizedlist>
</section>
2018-03-05 18:36:11 +00:00
2018-05-02 00:57:09 +01:00
<section xmlns= "http://docbook.org/ns/docbook"
2018-03-05 18:36:11 +00:00
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="sec-release-18.09-notable-changes">
2018-05-02 00:57:09 +01:00
<title > Other Notable Changes</title>
2018-03-05 18:36:11 +00:00
2018-05-02 00:57:09 +01:00
<itemizedlist >
2018-04-09 13:52:41 +01:00
<listitem >
<para >
<literal > dockerTools.pullImage</literal> relies on image digest
instead of image tag to download the image. The
<literal > sha256</literal> of a pulled image has to be updated.
</para>
</listitem>
2018-05-02 00:57:09 +01:00
<listitem >
2018-03-05 18:36:11 +00:00
<para >
2018-05-02 00:57:09 +01:00
<literal > lib.attrNamesToStr</literal> has been deprecated. Use more
specific concatenation (<literal > lib.concat(Map)StringsSep</literal> )
instead.
2018-04-03 13:04:05 +01:00
</para>
2018-05-02 00:57:09 +01:00
</listitem>
<listitem >
2018-04-03 13:04:05 +01:00
<para >
2018-05-02 00:57:09 +01:00
<literal > lib.addErrorContextToAttrs</literal> has been deprecated. Use
<literal > builtins.addErrorContext</literal> directly.
2018-04-03 13:04:05 +01:00
</para>
2018-05-02 00:57:09 +01:00
</listitem>
<listitem >
2018-04-03 13:04:05 +01:00
<para >
2018-05-02 00:57:09 +01:00
<literal > lib.showVal</literal> has been deprecated. Use
<literal > lib.traceSeqN</literal> instead.
2018-04-03 13:04:05 +01:00
</para>
2018-05-02 00:57:09 +01:00
</listitem>
<listitem >
2018-04-03 13:04:05 +01:00
<para >
2018-05-02 00:57:09 +01:00
<literal > lib.traceXMLVal</literal> has been deprecated. Use
<literal > lib.traceValFn builtins.toXml</literal> instead.
2018-04-03 13:04:05 +01:00
</para>
2018-05-02 00:57:09 +01:00
</listitem>
<listitem >
2018-04-03 13:04:05 +01:00
<para >
2018-05-02 00:57:09 +01:00
<literal > lib.traceXMLValMarked</literal> has been deprecated. Use
<literal > lib.traceValFn (x: str + builtins.toXML x)</literal> instead.
2018-04-03 13:04:05 +01:00
</para>
2018-05-02 00:57:09 +01:00
</listitem>
<listitem >
2018-04-03 13:04:05 +01:00
<para >
2018-05-02 00:57:09 +01:00
<literal > lib.traceValIfNot</literal> has been deprecated. Use
<literal > if/then/else</literal> and <literal > lib.traceValSeq</literal>
instead.
2018-04-03 13:04:05 +01:00
</para>
2018-05-02 00:57:09 +01:00
</listitem>
<listitem >
2018-04-03 13:04:05 +01:00
<para >
2018-05-02 00:57:09 +01:00
<literal > lib.traceCallXml</literal> has been deprecated. Please complain
if you use the function regularly.
2018-03-05 18:36:11 +00:00
</para>
2018-04-26 09:31:05 +01:00
<para >
2018-05-02 00:57:09 +01:00
The attribute <literal > lib.nixpkgsVersion</literal> has been deprecated in
favor of <literal > lib.version</literal> . Please refer to the discussion in
<link xlink:href= "https://github.com/NixOS/nixpkgs/pull/39416#discussion_r183845745" > NixOS/nixpkgs#39416</link>
for further reference.
2018-04-26 09:31:05 +01:00
</para>
2018-05-02 00:57:09 +01:00
</listitem>
2018-05-08 01:09:46 +01:00
<listitem >
<para >
The module for <option > security.dhparams</option> has two new options now:
2018-03-05 18:36:11 +00:00
</para>
2018-05-07 04:02:41 +01:00
<variablelist >
2018-05-08 01:09:46 +01:00
<varlistentry >
<term > <option > security.dhparams.stateless</option> </term>
<listitem > <para >
Puts the generated Diffie-Hellman parameters into the Nix store instead
of managing them in a stateful manner in
<filename class= "directory" > /var/lib/dhparams</filename> .
</para> </listitem>
</varlistentry>
<varlistentry >
<term > <option > security.dhparams.defaultBitSize</option> </term>
<listitem > <para >
The default bit size to use for the generated Diffie-Hellman parameters.
</para> </listitem>
</varlistentry>
2018-05-07 04:02:41 +01:00
</variablelist>
<note > <para >
2018-05-08 01:09:46 +01:00
The path to the actual generated parameter files should now be queried
using
<literal > config.security.dhparams.params.<replaceable > name</replaceable> .path</literal>
because it might be either in the Nix store or in a directory configured
by <option > security.dhparams.path</option> .
2018-05-07 04:02:41 +01:00
</para> </note>
<note >
2018-05-08 01:09:46 +01:00
<title > For developers:</title>
<para >
Module implementers should not set a specific bit size in order to let
users configure it by themselves if they want to have a different bit
size than the default (2048).
</para>
<para >
An example usage of this would be:
2018-05-07 04:02:41 +01:00
<programlisting >
{ config, ... }:
{
security.dhparams.params.myservice = {};
environment.etc."myservice.conf".text = ''
dhparams = ${config.security.dhparams.params.myservice.path}
'';
}
</programlisting>
2018-05-08 01:09:46 +01:00
</para>
2018-05-07 04:02:41 +01:00
</note>
2018-05-08 01:09:46 +01:00
</listitem>
2018-05-03 13:05:43 +01:00
<listitem >
<para >
<literal > networking.networkmanager.useDnsmasq</literal> has been deprecated. Use
<literal > networking.networkmanager.dns</literal> instead.
</para>
</listitem>
2018-05-02 00:57:09 +01:00
</itemizedlist>
</section>
2018-03-05 18:36:11 +00:00
</section>