53 lines
2 KiB
Markdown
53 lines
2 KiB
Markdown
|
# Release 19.03 {#sec-release-19.03}
|
||
|
|
||
|
The 19.03 release branch became the stable branch in April, 2019.
|
||
|
|
||
|
## Highlights {#sec-release-19.03-highlights}
|
||
|
|
||
|
This release has the following notable changes:
|
||
|
|
||
|
- The [home.file._name_.source](#opt-home.file._name_.source) option now allows source
|
||
|
files to be hidden, that is, having a name starting with the `.`
|
||
|
character. It also allows the source file name to contain characters
|
||
|
not typically allowed for Nix store paths. For example, your
|
||
|
configuration can now contain things such as
|
||
|
|
||
|
``` nix
|
||
|
home.file."my file".source = ./. + "/file with spaces!";
|
||
|
```
|
||
|
|
||
|
- The type used for the systemd unit options under
|
||
|
[systemd.user.sockets](#opt-systemd.user.sockets),
|
||
|
etc. has been changed to offer more robust merging of
|
||
|
configurations. If you don't override values within systemd units
|
||
|
then you are not affected by this change. Unfortunately, if you do
|
||
|
override unit values you may encounter errors.
|
||
|
|
||
|
In particular, if you get an error saying that a "unique option" is
|
||
|
"defined multiple times" then you need to use the
|
||
|
[`mkForce`](https://nixos.org/nixos/manual/#sec-option-definitions-setting-priorities)
|
||
|
function. For example,
|
||
|
|
||
|
``` nix
|
||
|
systemd.user.services.foo.Service.ExecStart = "/foo/bar";
|
||
|
```
|
||
|
|
||
|
becomes
|
||
|
|
||
|
``` nix
|
||
|
systemd.user.services.foo.Service.ExecStart = lib.mkForce "/foo/bar";
|
||
|
```
|
||
|
|
||
|
We had to make this change because the old merging was causing too
|
||
|
many confusing situations for people.
|
||
|
|
||
|
## State Version Changes {#sec-release-19.03-state-version-changes}
|
||
|
|
||
|
The state version in this release includes the changes below. These
|
||
|
changes are only active if the [home.stateVersion](#opt-home.stateVersion) option is
|
||
|
set to "19.03" or later.
|
||
|
|
||
|
- There is now an option [programs.beets.enable](#opt-programs.beets.enable) that
|
||
|
defaults to `false`. Before the module would be active if the
|
||
|
[programs.beets.settings](#opt-programs.beets.settings) option was non-empty.
|