Change:
Describe the bug I recently noticed errors in logs around a missing group: To Reproduce Steps to reproduce the behavior: to on a NixOS system built from a recent commit logs with e.g Expected behavior No errors in logs. Additional context I'm not 100% sure what changed to trigger this error or how to best address it, but the config file does refer to a group, which commonly is present on other distros: The group is indeed not present on my NixOS system: The udev config seems to be fetched from the package. Metadata Maintainer information:
I see 2 ways of fixing this: a) just adding the group - this group is used in older Debian/Ubuntu distributions to indicate the device can be mounted using pmount b) removing from udev files as should be enough
A simple nixpkgs search shows there are more modules/packages using the group such as: and upstream packages tarballs used in: In we replace the the group with the group.
Since we don't include that group by default like Debian does, we should probably remove these references to plugdev. Users can always add their own custom udev rules if they want special group handling.
Looking at , seems to be the right way forward for most of these rules. We might just want to patch those to use it, and upstream these patches.
most of the affected udev files already have ; they just include the group for older Debian/Ubuntu distros. This is indeed obsolete method, so fix is indeed just a matter of removing this from the udev files.
According to removing breaks some non-systemd distros where nixpkgs maybe independently installed. What are your thoughts on removing the offending rule via ? Same approach can be taken with other . This would preserve backward compatibility with non NixOS systems.
If I'm not mistaken, this comment is not about nixpkgs on non-systemd distros, but other non-systemd distros in general. As written in , we probably can just ignore the warning for now, and remove the udev rule entirely once a systemd with has landed in nixpkgs.
This should be solved by , PTAL.

Discussion:
<link xlink:href="https://grafana.com/docs/grafana/latest/installation/upgrading/#upgrading-to-v7-0">in the Grafana documentation</link>. </para> </listitem> <ins> <listitem> <para> The <literal>hardware.u2f</literal> module, which was installing udev rules was removed, as udev gained native support to handle FIDO security tokens. </para> </listitem> </ins> </itemizedlist> </section> </section>

./services/hardware/throttled.nix ./services/hardware/trezord.nix ./services/hardware/triggerhappy.nix <del> ./services/hardware/u2f.nix </del> ./services/hardware/udev.nix ./services/hardware/udisks2.nix ./services/hardware/upower.nix

prey-bash-client is deprecated upstream '') <ins> (mkRemovedOptionModule ["hardware" "u2f" ] '' The U2F modules module was removed, as all it did was adding the udev rules from libu2f-host to the system. Udev gained native support to handle FIDO security tokens, so this isn't necessary anymore. '') </ins> # Do NOT add any option renames here, see top of the file ]; }

<del> { config, lib, pkgs, ... }: with lib; let cfg = config.hardware.u2f; in { options = { hardware.u2f = { enable = mkOption { type = types.bool; default = false; description = '' Enable U2F hardware support. ''; }; }; }; config = mkIf cfg.enable { services.udev.packages = [ pkgs.libu2f-host ]; }; } </del>

doCheck = true; <del> postInstall = '' install -D -t $out/lib/udev/rules.d 70-u2f.rules ''; </del> meta = with stdenv.lib; { homepage = "https://developers.yubico.com/libu2f-host"; description = "A C library and command-line tool that implements the host-side of the U2F protocol";