Home Explore Blog CI



nixpkgs

7th chunk of `nixos/doc/manual/release-notes/rl-2003.section.md`
449f092ad997d34ff682d2a119f105852579e7ea65030b810000000100001064
  - `services.buildkite-agent.meta-data` has been renamed to [services.buildkite-agents.\<name\>.tags](options.html#opt-services.buildkite-agents), to match upstreams naming for 3.x. Its type has also changed - it now accepts an attrset of strings.

  - The`services.buildkite-agent.openssh.publicKeyPath` option has been removed, as it's not necessary to deploy public keys to clone private repositories.

  - `services.buildkite-agent.openssh.privateKeyPath` has been renamed to [buildkite-agents.\<name\>.privateSshKeyPath](options.html#opt-services.buildkite-agents), as the whole `openssh` now only contained that single option.

  - [services.buildkite-agents.\<name\>.shell](options.html#opt-services.buildkite-agents) has been introduced, allowing to specify a custom shell to be used.

- The `citrix_workspace_19_3_0` package has been removed as it will be EOLed within the lifespan of 20.03. For further information, please refer to the [support and maintenance information](https://www.citrix.com/de-de/support/product-lifecycle/milestones/receiver.html) from upstream.

- The `gcc5` and `gfortran5` packages have been removed.

- The `services.xserver.displayManager.auto` module has been removed. It was only intended for use in internal NixOS tests, and gave the false impression of it being a special display manager when it's actually LightDM. Please use the `services.xserver.displayManager.lightdm.autoLogin` options instead, or any other display manager in NixOS as they all support auto-login. If you used this module specifically because it permitted root auto-login you can override the lightdm-autologin pam module like:

  ```nix
  {
    security.pam.services.lightdm-autologin.text = lib.mkForce ''
        auth     requisite pam_nologin.so
        auth     required  pam_succeed_if.so quiet
        auth     required  pam_permit.so

        account  include   lightdm

        password include   lightdm

        session  include   lightdm
    '';
  }
  ```

  The difference is the:

  ```
  auth required pam_succeed_if.so quiet
  ```

  line, where default it's:

  ```
   auth required pam_succeed_if.so uid >= 1000 quiet
  ```

  not permitting users with uid's below 1000 (like root). All other display managers in NixOS are configured like this.

- There have been lots of improvements to the Mailman module. As a result,

  - The `services.mailman.hyperkittyBaseUrl` option has been renamed to [services.mailman.hyperkitty.baseUrl](options.html#opt-services.mailman.hyperkitty.baseUrl).

  - The `services.mailman.hyperkittyApiKey` option has been removed. This is because having an option for the Hyperkitty API key meant that the API key would be stored in the world-readable Nix store, which was a security vulnerability. A new Hyperkitty API key will be generated the first time the new Hyperkitty service is run, and it will then be persisted outside of the Nix store. To continue using Hyperkitty, you must set [services.mailman.hyperkitty.enable](options.html#opt-services.mailman.hyperkitty.enable) to `true`.

  - Additionally, some Postfix configuration must now be set manually instead of automatically by the Mailman module:

    ```nix
    {
      services.postfix.relayDomains = [ "hash:/var/lib/mailman/data/postfix_domains" ];
      services.postfix.config.transport_maps = [ "hash:/var/lib/mailman/data/postfix_lmtp" ];
      services.postfix.config.local_recipient_maps = [ "hash:/var/lib/mailman/data/postfix_lmtp" ];
    }
    ```

    This is because some users may want to include other values in these lists as well, and this was not possible if they were set automatically by the Mailman module. It would not have been possible to just concatenate values from multiple modules each setting the values they needed, because the order of elements in the list is significant.

- The LLVM versions 3.5, 3.9 and 4 (including the corresponding CLang versions) have been dropped.

- The `networking.interfaces.*.preferTempAddress` option has been replaced by `networking.interfaces.*.tempAddress`. The new option allows better control of the IPv6 temporary addresses, including completely disabling them for interfaces where they are not needed.

Title: Release 20.03: Backward Incompatibilities (Continued)
Summary
Continued backward-incompatible changes in NixOS 20.03 include further modifications to the Buildkite Agent module (renaming and changing types of options), removal of the `citrix_workspace_19_3_0`, `gcc5`, and `gfortran5` packages, removal of the `services.xserver.displayManager.auto` module, improvements to the Mailman module (option renaming, API key handling, and manual Postfix configuration), removal of LLVM versions 3.5, 3.9, and 4, and replacement of the `networking.interfaces.*.preferTempAddress` option with `networking.interfaces.*.tempAddress`.