nixos/udisks2: don't enable by default

This was enabled by default in 18a7ce76fc
with the reason that it would be "useful regardless of the desktop
environment.", which I'm not arguing against.

The reason why this should not be enabled by default is that there are a
lot of systems that NixOS runs on that are not desktop systems.
Users on such systems most likely do not want or need this feature and
could even consider this an antifeature.
Furthermore, it is surprising to them to find out that they have this
enabled on their systems.
They might be even more surprised to find that they have polkit enabled
by default, which was a default that was flipped in
a813be071c. For some discussion as to why
see https://github.com/NixOS/nixpkgs/pull/156858.

Evidently, this default is not only surprising to users, but also module
developers, as most if not all modules for desktop environments already
explicity set services.udisks2.enable = true; which they don't need to
right now.
This commit is contained in:
ajs124 2022-08-11 02:35:29 +02:00
parent c84078f7dd
commit f763710065
4 changed files with 16 additions and 9 deletions

View file

@ -392,6 +392,18 @@
as coreboots fork is no longer available.
</para>
</listitem>
<listitem>
<para>
The udisks2 service, available at
<literal>services.udisks2.enable</literal>, is now disabled by
default. It will automatically be enabled through services and
desktop environments as needed. This also means that polkit
will now actually be disabled by default. The default for
<literal>security.polkit.enable</literal> was already flipped
in the previous release, but udisks2 being enabled by default
re-enabled it.
</para>
</listitem>
<listitem>
<para>
Add udev rules for the Teensy family of microcontrollers.

View file

@ -145,6 +145,9 @@ Use `configure.packages` instead.
- memtest86+ was updated from 5.00-coreboot-002 to 6.00-beta2. It is now the upstream version from https://www.memtest.org/, as coreboot's fork is no longer available.
- The udisks2 service, available at `services.udisks2.enable`, is now disabled by default. It will automatically be enabled through services and desktop environments as needed.
This also means that polkit will now actually be disabled by default. The default for `security.polkit.enable` was already flipped in the previous release, but udisks2 being enabled by default re-enabled it.
- Add udev rules for the Teensy family of microcontrollers.
- The `pass-secret-service` package now includes systemd units from upstream, so adding it to the NixOS `services.dbus.packages` option will make it start automatically as a systemd user service when an application tries to talk to the libsecret D-Bus API.

View file

@ -19,14 +19,7 @@ in
services.udisks2 = {
enable = mkOption {
type = types.bool;
default = true;
description = lib.mdDoc ''
Whether to enable Udisks, a DBus service that allows
applications to query and manipulate storage devices.
'';
};
enable = mkEnableOption "udisks2, a DBus service that allows applications to query and manipulate storage devices.";
settings = mkOption rec {
type = types.attrsOf settingsFormat.type;

View file

@ -8,7 +8,6 @@ with lib;
# Disable some features that are not useful in a container.
nix.optimise.automatic = mkDefault false; # the store is host managed
services.udisks2.enable = mkDefault false;
powerManagement.enable = mkDefault false;
documentation.nixos.enable = mkDefault false;