home-manager/docs/release-notes/rl-1903.md

2.0 KiB

Release 19.03

The 19.03 release branch became the stable branch in April, 2019.

Highlights

This release has the following notable changes:

  • The 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

    home.file."my file".source = ./. + "/file with spaces!";
    
  • The type used for the systemd unit options under 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 function. For example,

    systemd.user.services.foo.Service.ExecStart = "/foo/bar";
    

    becomes

    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

The state version in this release includes the changes below. These changes are only active if the home.stateVersion option is set to "19.03" or later.