Home Explore Blog Models CI



nixpkgs

3rd chunk of `nixos/doc/manual/release-notes/rl-1603.section.md`
4d0702d06577c59f38809f90335bcc62e01adc677927b9d00000000100000b42
- Filesystem options should now be configured as a list of strings, not a comma-separated string. The old style will continue to work, but print a warning, until the 16.09 release. An example of the new style:

  ```nix
  {
    fileSystems."/example" = {
      device = "/dev/sdc";
      fsType = "btrfs";
      options = [
        "noatime"
        "compress=lzo"
        "space_cache"
        "autodefrag"
      ];
    };
  }
  ```

- CUPS, installed by `services.printing` module, now has its data directory in `/var/lib/cups`. Old configurations from `/etc/cups` are moved there automatically, but there might be problems. Also configuration options `services.printing.cupsdConf` and `services.printing.cupsdFilesConf` were removed because they had been allowing one to override configuration variables required for CUPS to work at all on NixOS. For most use cases, `services.printing.extraConf` and new option `services.printing.extraFilesConf` should be enough; if you encounter a situation when they are not, please file a bug.

  There are also Gutenprint improvements; in particular, a new option `services.printing.gutenprint` is added to enable automatic updating of Gutenprint PPMs; it's greatly recommended to enable it instead of adding `gutenprint` to the `drivers` list.

- `services.xserver.vaapiDrivers` has been removed. Use `hardware.opengl.extraPackages{,32}` instead. You can also specify VDPAU drivers there.

- `programs.ibus` moved to `i18n.inputMethod.ibus`. The option `programs.ibus.plugins` changed to `i18n.inputMethod.ibus.engines` and the option to enable ibus changed from `programs.ibus.enable` to `i18n.inputMethod.enabled`. `i18n.inputMethod.enabled` should be set to the used input method name, `"ibus"` for ibus. An example of the new style:

  ```nix
  {
    i18n.inputMethod.enabled = "ibus";
    i18n.inputMethod.ibus.engines = with pkgs.ibus-engines; [
      anthy
      mozc
    ];
  }
  ```

  That is equivalent to the old version:

  ```nix
  {
    programs.ibus.enable = true;
    programs.ibus.plugins = with pkgs; [
      ibus-anthy
      mozc
    ];
  }
  ```

- `services.udev.extraRules` option now writes rules to `99-local.rules` instead of `10-local.rules`. This makes all the user rules apply after others, so their results wouldn't be overridden by anything else.

- Large parts of the `services.gitlab` module has been been rewritten. There are new configuration options available. The `stateDir` option was renamned to `statePath` and the `satellitesDir` option was removed. Please review the currently available options.

- The option `services.nsd.zones.<name>.data` no longer interpret the dollar sign (\$) as a shell variable, as such it should not be escaped anymore. Thus the following zone data:

  ```dns-zone
  $ORIGIN example.com.
  $TTL 1800
  @       IN      SOA     ns1.vpn.nbp.name.      admin.example.com. (

Title: Further System Configuration and Service Updates
Summary
This document details additional configuration changes and updates across various system components. Key changes include a new list-based format for filesystem options, a relocated data directory for CUPS along with revised configuration options and Gutenprint improvements. `services.xserver.vaapiDrivers` has been removed, with VAAPI/VDPAU drivers now configured via `hardware.opengl.extraPackages{,32}`. IBus configuration options have been moved from `programs.ibus` to `i18n.inputMethod.ibus`. Udev rules from `services.udev.extraRules` now write to `99-local.rules`, ensuring they apply after other rules. The GitLab module has undergone a significant rewrite, introducing new options, renaming `stateDir` to `statePath`, and removing `satellitesDir`. Finally, the `services.nsd.zones.<name>.data` option no longer interprets the dollar sign ($) as a shell variable, so escaping is no longer needed.