Home Explore Blog Models CI



nixpkgs

2nd chunk of `nixos/doc/manual/release-notes/rl-2003.section.md`
5cf3ddc811b590c46af59e228bafd3877060d2ec5c120d8000000001000010e2
    services.xserver.windowManager.default = "icewm";
  }
  ```

  you should change it to:

  ```nix
  { services.xserver.displayManager.defaultSession = "xfce+icewm"; }
  ```

- The testing driver implementation in NixOS is now in Python `make-test-python.nix`. This was done by Jacek Galowicz ([\@tfc](https://github.com/tfc)), and with the collaboration of Julian Stecklina ([\@blitz](https://github.com/blitz)) and Jana Traue ([\@jtraue](https://github.com/jtraue)). All documentation has been updated to use this testing driver, and a vast majority of the 286 tests in NixOS were ported to python driver. In 20.09 the Perl driver implementation, `make-test.nix`, is slated for removal. This should give users of the NixOS integration framework a transitory period to rewrite their tests to use the Python implementation. Users of the Perl driver will see this warning everytime they use it:

  ```ShellSession
  $ warning: Perl VM tests are deprecated and will be removed for 20.09.
  Please update your tests to use the python test driver.
  See https://github.com/NixOS/nixpkgs/pull/71684 for details.
  ```

  API compatibility is planned to be kept for at least the next release with the perl driver.

## New Services {#sec-release-20.03-new-services}

The following new services were added since the last release:

- The kubernetes kube-proxy now supports a new hostname configuration `services.kubernetes.proxy.hostname` which has to be set if the hostname of the node should be non default.

- UPower's configuration is now managed by NixOS and can be customized via `services.upower`.

- To use Geary you should enable [programs.geary.enable](options.html#opt-programs.geary.enable) instead of just adding it to [environment.systemPackages](options.html#opt-environment.systemPackages). It was created so Geary could function properly outside of GNOME.

- `./config/console.nix`

- `./hardware/brillo.nix`

- `./hardware/tuxedo-keyboard.nix`

- `./programs/bandwhich.nix`

- `./programs/bash-my-aws.nix`

- `./programs/liboping.nix`

- `./programs/traceroute.nix`

- `./services/backup/sanoid.nix`

- `./services/backup/syncoid.nix`

- `./services/backup/zfs-replication.nix`

- `./services/continuous-integration/buildkite-agents.nix`

- `./services/databases/victoriametrics.nix`

- `./services/desktops/gnome3/gnome-initial-setup.nix`

- `./services/desktops/neard.nix`

- `./services/games/openarena.nix`

- `./services/hardware/fancontrol.nix`

- `./services/mail/sympa.nix`

- `./services/misc/freeswitch.nix`

- `./services/misc/mame.nix`

- `./services/monitoring/do-agent.nix`

- `./services/monitoring/prometheus/xmpp-alerts.nix`

- `./services/network-filesystems/orangefs/server.nix`

- `./services/network-filesystems/orangefs/client.nix`

- `./services/networking/3proxy.nix`

- `./services/networking/corerad.nix`

- `./services/networking/go-shadowsocks2.nix`

- `./services/networking/ntp/openntpd.nix`

- `./services/networking/shorewall.nix`

- `./services/networking/shorewall6.nix`

- `./services/networking/spacecookie.nix`

- `./services/networking/trickster.nix`

- `./services/networking/v2ray.nix`

- `./services/networking/xandikos.nix`

- `./services/networking/yggdrasil.nix`

- `./services/web-apps/dokuwiki.nix`

- `./services/web-apps/gotify-server.nix`

- `./services/web-apps/grocy.nix`

- `./services/web-apps/ihatemoney`

- `./services/web-apps/moinmoin.nix`

- `./services/web-apps/trac.nix`

- `./services/web-apps/trilium.nix`

- `./services/web-apps/shiori.nix`

- `./services/web-servers/ttyd.nix`

- `./services/x11/picom.nix`

- `./services/x11/hardware/digimend.nix`

- `./services/x11/imwheel.nix`

- `./virtualisation/cri-o.nix`

## Backward Incompatibilities {#sec-release-20.03-incompatibilities}

When upgrading from a previous release, please be aware of the following incompatible changes:

- The dhcpcd package [ does not request IPv4 addresses for tap and bridge interfaces anymore by default](https://roy.marples.name/archives/dhcpcd-discuss/0002621.html). In order to still get an address on a bridge interface, one has to disable `networking.useDHCP` and explicitly enable `networking.interfaces.<name>.useDHCP` on every interface, that should get an address via DHCP. This way, dhcpcd is configured in an explicit way about which interface to run on.

Title: NixOS 20.03: Configuration Changes, New Services, and Backward Incompatibilities
Summary
This section outlines several key updates in NixOS 20.03, including a change in X server configuration where `services.xserver.displayManager.defaultSession` replaces older desktop/window manager default options. The testing framework is transitioning from Perl to Python, with the Perl driver marked for deprecation in version 20.09. A wide array of new services has been introduced, spanning Kubernetes, UPower, Geary, backup solutions (Sanoid, Syncoid, ZFS replication), databases (VictoriaMetrics), various desktop components, monitoring tools (Prometheus, DigitalOcean agent), networking utilities (3proxy, OpenNTPD, V2Ray), and web applications (Dokuwiki, Gotify, Grocy). A significant backward incompatibility is noted for `dhcpcd`, which no longer requests IPv4 addresses for tap and bridge interfaces by default, requiring explicit configuration via `networking.interfaces.<name>.useDHCP`.