Commit Graph

58 Commits

Author SHA1 Message Date
zowoq
e99eb6d145 zfs: remove patch
included in 2.3.8 and 2.4.3
2026-06-12 12:42:53 +10:00
Andrew Marshall
5a71c7cdef zfs_2_3: 2.3.6 -> 2.3.7
The patch already applied on zfs_2_4 also needs to be applied here.
2026-05-13 19:18:00 -04:00
Andrew Marshall
3b30957189 zfs_2_4: 2.4.1 -> 2.4.2
Update zfs_unstable as well as it currently matches zfs_2_4.

Fails to build on older Kernel, so backport a patch to fix (that has
been merged upstream already). See also
https://github.com/openzfs/zfs/issues/18528.
2026-05-13 19:08:17 -04:00
Robert Schütz
9d66a1bc39 zfs: simplify kernelIsCompatible function 2026-04-16 10:12:02 -07:00
Stefan Frijters
d21d5ad038 zfs*: move NIX_CFLAGS_LINK into env for structuredAttrs 2026-02-19 18:10:28 +01:00
Doron Behar
c203b742ca zfs: split man output
Co-Authored-By: Izorkin <izorkin@elven.pw>
2026-01-22 15:35:53 +02:00
Doron Behar
62c9aa3392 zfs: small outputs preparation formatting 2026-01-22 15:32:40 +02:00
Oleksandr Usov
5dc0eaf3a1 zfs: When ZFS is calling external helper scripts (such as stuff from
/etc/zfs/zpool.d or zfs_prepare_disk it uses reduced PATH.
This fixes it to use NixOS system path, and not FHS.
2025-11-03 16:57:18 +00:00
h7x4
6c05d7bb17 zfs: lib.any -> lib.elem 2025-10-26 16:23:37 +09:00
Wolfgang Walther
91a8fee3aa treewide: remove redundant parentheses
Auto-fixed by nixf-diagnose.
2025-10-05 10:52:03 +02:00
Adam C. Stephens
2158ccb683 zfs: fix version specific command rename 2025-10-01 09:13:50 -04:00
zowoq
89bd31053c zfs_unstable: 2.4.0-rc1 -> 2.4.0-rc2
https://github.com/openzfs/zfs/releases/tag/zfs-2.4.0-rc2
2025-10-01 14:17:54 +10:00
Alyssa Ross
af5dd576e0 zfs: pass kernel build flags correctly
ZFS's autoconf scripts recognize KERNEL_CC, KERNEL_CROSS_COMPILE,
KERNEL_ARCH, etc.  This avoids the need to separately give them as
Make flags, although I'm not sure what the original intention behind
giving the unprefixed flags to configure was — the commit adding that
doesn't say, except that it was to fix cross, which still works after
this change.

This fixes the ZFS kernel module build after the change to use
unwrapped compilers for building the kernel, which previously resulted
in CC etc. being clobbered for the ZFS build, even for non-kernel
parts like the "compiler works" Autoconf check.
2025-08-20 22:01:00 +02:00
Weijia Wang
ec7268aa64 zfs: update supported platforms 2025-08-13 22:30:50 +08:00
Andrew Marshall
3d589fc858 zfs: add enableUnsupportedExperimentalKernel option
This will allow building ZFS against an unsupported Kernel version.
While possible, it is not supported by upstream or Nixpkgs. As such, we
don’t enable it by default, even for zfs_unstable. Enabling should be a
deliberate choice by the user to opt into potential data corruption bugs.
2025-08-01 08:30:18 -04:00
Andrew Marshall
5d2750268b zfs: verify kernel compatibility against META
Switch to specifying the Kernel compatibility in the same form as in the
ZFS source’s `META` file. This then allows checking it against what’s in
`META` to remove the need to manually check, and so reduce the cognitive
load and change of mistakes when performing updates.

As the “max” version is indeed a compatible version, we need to
increment that for the comparison when using `versionOlder`.

One side-effect here is that it makes it not possible to override the
specified compatibility. We will “fix” this soon.
2025-08-01 08:28:44 -04:00
Wolfgang Walther
5a0711127c treewide: run nixfmt 1.0.0 2025-07-24 13:55:40 +02:00
nixpkgs-ci[bot]
3029e20133 Merge master into staging-next 2025-06-14 06:05:15 +00:00
Adam C. Stephens
745f2c79c5 zfs: add updateScript for stable releases 2025-06-12 15:52:57 -04:00
Grimmauld
2c14bf92a1 treewide: add udevCheckHook to packages with udev rules output
- [x] `{ doInstallCheck = false; name = "acpilight-1.2"; }`
    - Configuration file /nix/store/sckm27vsrh58glp3acw07z8jdmpj72q7-acpilight-1.2/etc/udev/rules.d/90-backlight.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [x] `{ doInstallCheck = false; name = "airspy-1.0.10"; }`
    - propagated via libusb1
- [ ] `{ doInstallCheck = false; name = "alsa-utils-1.2.13"; }`
    - /nix/store/pj5lqap32lsaipnmr1pjp8zi6zmc1ng2-alsa-utils-1.2.13/lib/udev/rules.d/90-alsa-restore.rules:16 GOTO="alsa_restore_std" has no matching label, ignoring.
    - /nix/store/pj5lqap32lsaipnmr1pjp8zi6zmc1ng2-alsa-utils-1.2.13/lib/udev/rules.d/90-alsa-restore.rules:16 The line has no effect any more, dropping.
    - /nix/store/pj5lqap32lsaipnmr1pjp8zi6zmc1ng2-alsa-utils-1.2.13/lib/udev/rules.d/90-alsa-restore.rules:20 GOTO="alsa_restore_std" has no matching label, ignoring.
    - /nix/store/pj5lqap32lsaipnmr1pjp8zi6zmc1ng2-alsa-utils-1.2.13/lib/udev/rules.d/90-alsa-restore.rules:20 The line has no effect any more, dropping.
    - /nix/store/pj5lqap32lsaipnmr1pjp8zi6zmc1ng2-alsa-utils-1.2.13/lib/udev/rules.d/90-alsa-restore.rules: udev rules check failed.
- [x] `{ doInstallCheck = false; name = "amazon-ec2-net-utils-2.5.5"; }`
- [x] `{ doInstallCheck = true; name = "amazon-ec2-utils-2.2.0"; }`
    - has butchered pre/post phases, needs some proper cleaning up
- [x] `{ doInstallCheck = false; name = "android-udev-rules-20250314"; }`
    - Configuration file /nix/store/30028n5xqh5lr1lxvm1vsmgxrpyk65fj-android-udev-rules-20250314/lib/udev/rules.d/51-android.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [x] `{ doInstallCheck = false; name = "antimicrox-3.5.1"; }`
- [x] `{ doInstallCheck = false; name = "apio-udev-rules-0.9.5"; }`
    - Configuration file /nix/store/hh4k648cymsa3dq966f6ivf2l0i528vx-apio-udev-rules-0.9.5/lib/udev/rules.d/70-fpga-ftdi.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
    - Configuration file /nix/store/hh4k648cymsa3dq966f6ivf2l0i528vx-apio-udev-rules-0.9.5/lib/udev/rules.d/70-fpga-serial.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [x] `{ doInstallCheck = false; name = "argyllcms-3.3.0"; }`
- [ ] `{ doInstallCheck = false; name = "artisan-3.1.4"; }`
    - ???? No udev rules
- [x] `{ doInstallCheck = false; name = "asdbctl-1.0.0"; }`
- [x] `{ doInstallCheck = false; name = "asusctl-6.1.12"; }`
- [x] `{ doInstallCheck = true; name = "autorandr-1.15"; }`
- [ ] `{ doInstallCheck = false; name = "bazecor-1.7.0"; }`
    - wrapAppImage does not support postInstallCheck: a094b5d8cc/pkgs/build-support/appimage/default.nix (L60-L79)
- [x] `{ doInstallCheck = false; name = "bcachefs-tools-1.25.2"; }`
- [x] `{ doInstallCheck = false; name = "bcache-tools-1.0.8"; }`
- [x] `{ doInstallCheck = false; name = "bitbox-bridge-1.6.1"; }`
- [x] `{ doInstallCheck = false; name = "bitbox-4.46.3"; }`
    - Configuration file /nix/store/jxcdrn03zwv4npdif9r0zhz68f06w911-bitbox-4.46.3/lib/udev/rules.d/51-hid-digitalbitbox.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
    - Configuration file /nix/store/jxcdrn03zwv4npdif9r0zhz68f06w911-bitbox-4.46.3/lib/udev/rules.d/52-hid-digitalbitbox.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
    - Configuration file /nix/store/jxcdrn03zwv4npdif9r0zhz68f06w911-bitbox-4.46.3/lib/udev/rules.d/53-hid-bitbox02.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
    - Configuration file /nix/store/jxcdrn03zwv4npdif9r0zhz68f06w911-bitbox-4.46.3/lib/udev/rules.d/54-hid-bitbox02.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [x] `{ doInstallCheck = false; name = "bluez-5.80"; }`
- [x] `{ doInstallCheck = false; name = "bluez-5.80"; }`
    - ***staged***
- [x] `{ doInstallCheck = true; name = "bmputil-0.1.3"; }`
- [x] `{ doInstallCheck = false; name = "bolt-0.9.8"; }`
- [ ] `{ doInstallCheck = false; name = "bottles"; }`
    - ??? no udev
- [x] `{ doInstallCheck = true; name = "python3.12-boxflat-1.30.1"; }`
- [x] `{ doInstallCheck = false; name = "brightnessctl-0.5.1"; }`
- [x] `{ doInstallCheck = false; name = "brillo-1.4.13"; }`
- [x] `{ doInstallCheck = false; name = "brltty-6.7"; }`
- [x] `{ doInstallCheck = false; name = "btrfs-progs-6.14"; }`
- [x] `{ doInstallCheck = false; name = "casync-2-unstable-2023-10-16"; }`
- [x] `{ doInstallCheck = false; name = "ccid-1.6.2"; }`
    - propagated via libusb1
    - `meta.platforms` is `unix`, but installs udev rules unconditionally. This seems silly.
    - has butchered pre/post phases
- [x] `{ doInstallCheck = false; name = "cc-tool-unstable-2020-05-19"; }`
    - Configuration file /nix/store/0nv753w4k0vpv7k032gdj3mfadlxvy81-cc-tool-unstable-2020-05-19/lib/udev/rules.d/90-cc-debugger.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [ ] `{ doInstallCheck = false; name = "chrysalis-0.13.3"; }`
    - wrapAppImage does not support postInstallCheck
- [x] `{ doInstallCheck = false; name = "ckb-next-0.6.2"; }`
- [x] `{ doInstallCheck = true; name = "cm-rgb-0.3.6"; }`
- [x] `{ doInstallCheck = false; name = "colord-1.4.6"; }`
- [x] `{ doInstallCheck = false; name = "comedilib-0.12.0"; }`
- [x] `{ doInstallCheck = false; name = "cpu-energy-meter-1.2"; }`
- [ ] `{ doInstallCheck = false; name = "cura-appimage-5.10.0"; }`
    - ??? no udev rules
- [x] `{ doInstallCheck = false; name = "cutecapture-1.4.0"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "dataexplorer-3.9.3"; }`
- [x] `{ doInstallCheck = false; name = "ddcutil-2.2.0"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "dduper-0.04"; }`
- [x] `{ doInstallCheck = false; name = "dediprog-sf100-linux-1.14.21-x"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "dde-daemon-6.0.43"; }`
- [x] `{ doInstallCheck = false; name = "digitalbitbox-3.0.0"; }`
    - /nix/store/m78h8jh8sqxqycw4y4h4pmhj8q7blmjf-digitalbitbox-3.0.0/etc/udev/rules.d/51-hid-digitalbox.rules:1 style: stray leading comma.
    - /nix/store/m78h8jh8sqxqycw4y4h4pmhj8q7blmjf-digitalbitbox-3.0.0/etc/udev/rules.d/51-hid-digitalbox.rules:2 style: stray leading comma.
    - /nix/store/m78h8jh8sqxqycw4y4h4pmhj8q7blmjf-digitalbitbox-3.0.0/etc/udev/rules.d/51-hid-digitalbox.rules:2 The line has no effect, ignoring.
    - /nix/store/m78h8jh8sqxqycw4y4h4pmhj8q7blmjf-digitalbitbox-3.0.0/etc/udev/rules.d/51-hid-digitalbox.rules: udev rules check failed.
    - /nix/store/m78h8jh8sqxqycw4y4h4pmhj8q7blmjf-digitalbitbox-3.0.0/etc/udev/rules.d/52-hid-digitalbox.rules:1 style: stray leading comma.
    - /nix/store/m78h8jh8sqxqycw4y4h4pmhj8q7blmjf-digitalbitbox-3.0.0/etc/udev/rules.d/52-hid-digitalbox.rules:2 style: stray leading comma.
    - /nix/store/m78h8jh8sqxqycw4y4h4pmhj8q7blmjf-digitalbitbox-3.0.0/etc/udev/rules.d/52-hid-digitalbox.rules:2 The line has no effect, ignoring.
    - /nix/store/m78h8jh8sqxqycw4y4h4pmhj8q7blmjf-digitalbitbox-3.0.0/etc/udev/rules.d/52-hid-digitalbox.rules: udev rules check failed.
    - fixed
- [x] `{ doInstallCheck = false; name = "direwolf-1.7"; }`
- [x] `{ doInstallCheck = false; name = "dmrconfig-1.1"; }`
    - propagated via libusb1
    - Configuration file /nix/store/bymjc5sh1jpk7lk7j1whwd63wl3sagic-dmrconfig-1.1/lib/udev/rules.d/99-dmr.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [x] `{ doInstallCheck = false; name = "dolphin-emu-2503a"; }`
    - Configuration file /nix/store/z22spasql9rrkgn4lrxpsv6zhm1jhg10-dolphin-emu-2503a/etc/udev/rules.d/51-usb-device.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [x] `{ doInstallCheck = false; name = "dolphin-emu-primehack-1.0.7a"; }`
    - Configuration file /nix/store/2kjvxh1m2b7aiw240sj76gd7fp8kd96i-dolphin-emu-primehack-1.0.7a/etc/udev/rules.d/51-usb-device.rules is marked executable. Please remove executable permission bits. Proceeding anyway
- [x] `{ doInstallCheck = false; name = "drbd-9.27.0"; }`
- [x] `{ doInstallCheck = false; name = "dsview-1.3.2"; }`
- [x] `{ doInstallCheck = false; name = "easypdkprog-1.3"; }`
- [x] `{ doInstallCheck = false; name = "ecpdap-0.2.0"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "edgetx-2.11.0-rc3"; }`
- [x] `{ doInstallCheck = false; name = "eg25-manager-0.5.2"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "elogind-255.5"; }`
    - can be built without systemd
- [x] `{ doInstallCheck = false; name = "em100-0-unstable-2024-11-14"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "epsonscan2-6.7.70.0-01-2025"; }`
    - propagated via libusb1
- [ ] `{ doInstallCheck = false; name = "eudev-3.2.14"; }`
    - not viable, skipped
- [x] `{ doInstallCheck = false; name = "feedbackd-0.8.1"; }`
- [x] `{ doInstallCheck = false; name = "ffado-2.4.9"; }`
- [x] `{ doInstallCheck = false; name = "ffado-2.4.9"; }`
- [x] `{ doInstallCheck = false; name = "flashprog-1.4"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "flashrom-1.5.1"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "foo2zjs-20210116"; }`
- [x] `{ doInstallCheck = false; name = "footswitch-unstable-2023-10-10"; }`
- [x] `{ doInstallCheck = false; name = "fuse-3.16.2"; }`
    - ***staged***
- [x] `{ doInstallCheck = false; name = "g810-led-0.4.3"; }`
    - Configuration file /nix/store/klh2fxrrkcj9zy6r2pd4x3csldinnnj9-g810-led-0.4.3/etc/udev/rules.d/90-g810-led.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [x] `{ doInstallCheck = false; name = "game-devices-udev-rules-0.23"; }`
- [x] `{ doInstallCheck = false; name = "gdm-48.0"; }`
- [x] `{ doInstallCheck = false; name = "gfs2-utils-3.6.1"; }`
- [x] `{ doInstallCheck = true; name = "glasgow-0-unstable-2025-01-26"; }`
- [x] `{ doInstallCheck = false; name = "gmobile"; }`
- [x] `{ doInstallCheck = false; name = "gnome-settings-daemon-46.0"; }`
- [x] `{ doInstallCheck = false; name = "gnome-settings-daemon-48.1"; }`
- [x] `{ doInstallCheck = false; name = "gobi_loader-0.7"; }`
    - Configuration file /nix/store/nr89b2svcjgsxl5jla8w77y33dcm5nwj-gobi_loader-0.7/lib/udev/rules.d/60-gobi.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [x] `{ doInstallCheck = false; name = "google-compute-engine-20190124"; }`
    - needed `doCheck = true`, but nothing exploded
- [x] `{ doInstallCheck = false; name = "google-guest-configs-20211116.00"; }`
- [x] `{ doInstallCheck = false; name = "goxlr-utility-1.2.2"; }`
- [x] `{ doInstallCheck = false; name = "gpsd-3.25"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "gradm-3.1-202111052217"; }`
- [x] `{ doInstallCheck = false; name = "gummy-0.6.1"; }`
- [x] `{ doInstallCheck = false; name = "hackrf-2024.02.1"; }`
    - propagated via libusb1
- [ ] `{ doInstallCheck = false; name = "handheld-daemon-3.15.3"; }`
    - wrapAppImage does not support postInstallCheck
- [x] `{ doInstallCheck = false; name = "hdapsd-20141203"; }`
- [x] `{ doInstallCheck = false; name = "headsetcontrol-3.0.0"; }`
- [x] `{ doInstallCheck = false; name = "heimdall-gui-1.4.2"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "heimdall-1.4.2"; }`
    - propagated via libusb1
- [ ] `{ doInstallCheck = false; name = "heroic-2.16.1"; }`
    - ??? no udev
- [x] `{ doInstallCheck = true; name = "hplip-3.24.4"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = true; name = "huion-switcher-0.5.0"; }`
- [x] `{ doInstallCheck = false; name = "iio-sensor-proxy-3.7"; }`
- [x] `{ doInstallCheck = false; name = "imsprog-1.5.3"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "incus-6.12.0"; }`
- [x] `{ doInstallCheck = false; name = "incus-lts-6.0.4"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-aagcloudwatcher-ng-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-aok-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-apogee-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-armadillo-platypus-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-astarbox-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-avalon-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-avalonud-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-beefocus-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-bresserexos2-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-celestronaux-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-dsi-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-duino-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-eqmod-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-ffmv-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-fishcamp-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-fli-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-gige-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-gphoto-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-gpio-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-gpsd-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-gpsnmea-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-limesdr-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-maxdomeii-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-mgen-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-nexdome-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-nightscape-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-nut-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-ocs-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-orion-ssg3-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-rolloffino-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-rtklib-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-shelyak-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-starbook-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-starbook-ten-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-sx-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-talon6-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-webcam-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-3rdparty-indi-weewx-json-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indi-full-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "indilib-2.1.3"; }`
- [x] `{ doInstallCheck = false; name = "infnoise-0.3.3"; }`
- [x] `{ doInstallCheck = true; name = "inkscape-silhouette-1.29"; }`
- [x] `{ doInstallCheck = false; name = "inputmodule-control-0.2.0"; }`
- [x] `{ doInstallCheck = false; name = "input-remapper-2.1.1"; }`
    - doCheck defaults to false
- [x] `{ doInstallCheck = false; name = "ipad_charge-2015-02-03"; }`
- [x] `{ doInstallCheck = false; name = "ipp-usb-0.9.30"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "iptsd-3"; }`
- [x] `{ doInstallCheck = false; name = "joycond-unstable-2021-07-30"; }`
- [x] `{ doInstallCheck = false; name = "k40-whisperer-0.68"; }`
    - has butchered pre/post phases
- [x] `{ doInstallCheck = false; name = "ledger-udev-rules-0-unstable-2024-02-12"; }`
- [x] `{ doInstallCheck = false; name = "libbladeRF-2.5.0"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "libedgetpu-0-unstable-2024-03-14"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "libfido2-1.15.0"; }`
- [x] `{ doInstallCheck = true; name = "libfprint-1.94.9"; }`
- [x] `{ doInstallCheck = true; name = "libfprint-tod-1.94.9+tod1"; }`
- [ ] `{ doInstallCheck = false; name = "libftdi-1.5-unstable-2023-12-21"; }`
    - propagated via libusb1
    - seems to ignore phase???
- [x] `{ doInstallCheck = false; name = "libgphoto2-2.5.31"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "libgpod-0.8.3"; }`
- [x] `{ doInstallCheck = false; name = "libiio-0.24"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "libinput-1.27.1"; }`
- [ ] `{ doInstallCheck = false; name = "libirecovery-1.2.1"; }`
    - propagated via libusb1
    - /nix/store/srmj1r8hp8ipwc0s5gz8wdv8gpcy8f25-libirecovery-1.2.1/lib/udev/rules.d/39-libirecovery.rules:4 Invalid key/value pair, ignoring.
    - /nix/store/srmj1r8hp8ipwc0s5gz8wdv8gpcy8f25-libirecovery-1.2.1/lib/udev/rules.d/39-libirecovery.rules:7 Invalid key/value pair, ignoring.
    - /nix/store/srmj1r8hp8ipwc0s5gz8wdv8gpcy8f25-libirecovery-1.2.1/lib/udev/rules.d/39-libirecovery.rules: udev rules check failed.
- [x] `{ doInstallCheck = false; name = "libjaylink-0.4.0"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "libmtp-1.1.22"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "libnitrokey-3.8"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "libpsm2-12.0.1"; }`
- [x] `{ doInstallCheck = false; name = "bluez-qt-5.116.0"; }`
- [x] `{ doInstallCheck = false; name = "plasma-remotecontrollers-5.27.11"; }`
- [x] `{ doInstallCheck = true; name = "libsigrok-0.5.2-unstable-2024-10-20"; }`
    - propagated via libusb1
    - has butchered pre/post phases
- [x] `{ doInstallCheck = false; name = "libticables2-1.3.5"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "libuldaq-1.2.1"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "libwacom-2.15.0"; }`
- [x] `{ doInstallCheck = false; name = "libwacom-surface-2.15.0"; }`
- [x] `{ doInstallCheck = false; name = "libwebcam-0.2.5"; }`
- [x] `{ doInstallCheck = false; name = "light-1.2.2"; }`
- [x] `{ doInstallCheck = false; name = "limesuite-23.11.0"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "limesuite-23.11.0"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "linuxconsoletools-1.8.1"; }`
- [x] `{ doInstallCheck = false; name = "linux-gpib-user-4.3.6"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-5.10.235"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-5.10.235"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-5.15.179"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-5.15.179"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-5.15.183"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-5.15.183"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-5.4.293"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-5.4.293"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-6.12.29"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-6.12.29"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-6.13.7"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-6.13.7"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-6.13.12"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-6.13.12"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-6.14.7"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-6.14.7"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-6.1.131"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-6.1.131"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-6.1.139"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-6.1.139"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-6.6.83"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-6.6.83"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-6.6.91"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-6.6.91"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-6.13.12"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-6.13.12"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-6.12.19"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-6.12.19"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-6.12.29"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-6.12.29"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-6.14.7"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-6.14.7"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-6.12.28"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-6.12.28"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-6.14.6"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-6.14.6"; }`
- [x] `{ doInstallCheck = false; name = "nxp-pn5xx-0.4-unstable-2025-02-08-6.14.7"; }`
- [x] `{ doInstallCheck = false; name = "openrazer-3.10.1-6.14.7"; }`
- [x] `{ doInstallCheck = true; name = "liquidctl-1.15.0"; }`
- [x] `{ doInstallCheck = false; name = "lm4flash-0.1.3"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "ltunify-0.3"; }`
- [ ] `{ doInstallCheck = false; name = "luminance-1.1.0"; }`
    - hackage, skipped
- [ ] `{ doInstallCheck = false; name = "lutris-0.5.19"; }`
    - fhsenv, skipped
- [x] `{ doInstallCheck = false; name = "lvm2-with-dmeventd-2.03.31"; }`
    - has butchered pre/post phases
    - ***staged locally***
- [x] `{ doInstallCheck = false; name = "lvm2-2.03.31"; }`
    - has butchered pre/post phases
    - ***staged locally***
- [x] `{ doInstallCheck = false; name = "lvm2-with-dmeventd-with-vdo-2.03.31"; }`
    - has butchered pre/post phases
    - ***staged locally***
- [x] `{ doInstallCheck = false; name = "M33-Linux-unstable-2016-06-23"; }`
    - has butchered pre/post phases
    - Configuration file /nix/store/m4mixbgrz9b0l6qy9q4nsmqdq772jfyq-M33-Linux-unstable-2016-06-23/lib/udev/rules.d/90-micro-3d-local.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [x] `{ doInstallCheck = false; name = "mate-settings-daemon-1.28.0"; }`
- [x] `{ doInstallCheck = false; name = "mdadm-4.3"; }`
- [x] `{ doInstallCheck = false; name = "mdevctl-1.4.0"; }`
- [x] `{ doInstallCheck = false; name = "media-player-info-26"; }`
- [x] `{ doInstallCheck = false; name = "meletrix-udev-rules-0-unstable-2023-10-20"; }`
- [x] `{ doInstallCheck = false; name = "minipro-0.7.2"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = true; name = "mkosi-25.3-unstable-2025-04-01"; }`
    - uses udev rules, but does not output them
- [x] `{ doInstallCheck = true; name = "modemmanager-1.22.0"; }`
- [x] `{ doInstallCheck = false; name = "moolticute-1.03.0"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "mouse-actions-gui-0.4.5"; }`
- [x] `{ doInstallCheck = false; name = "mouse-actions-0.4.5"; }`
- [x] `{ doInstallCheck = false; name = "mouse_m908-3.4"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "multipath-tools-0.9.8"; }`
- [x] `{ doInstallCheck = false; name = "mutter-46.8"; }`
- [x] `{ doInstallCheck = false; name = "mutter-48.2"; }`
- [x] `{ doInstallCheck = false; name = "networkmanager-1.52.0"; }`
- [x] `{ doInstallCheck = false; name = "nfs-utils-2.7.1"; }`
- [x] `{ doInstallCheck = false; name = "nitrokey-udev-rules-1.1.0"; }`
    - Configuration file /nix/store/dni4l2ikb7qrj6j78arkj09h4f6i3qx1-nitrokey-udev-rules-1.1.0/etc/udev/rules.d/41-nitrokey.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [ ] `{ doInstallCheck = false; name = "ns-usbloader-7.1"; }`
- [x] `{ doInstallCheck = false; name = "numworks-udev-rules-unstable-2020-08-31"; }`
- [x] `{ doInstallCheck = false; name = "nut-2.8.2"; }`
- [x] `{ doInstallCheck = false; name = "nvme-cli-2.11"; }`
- [x] `{ doInstallCheck = false; name = "nxpmicro-mfgtools-1.5.139"; }`
    - propagated via libusb1
    - Configuration file /nix/store/rara91k0ck7658px2296inp4v7av8hhj-nxpmicro-mfgtools-1.5.139/lib/udev/rules.d/70-uuu.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [ ] `{ doInstallCheck = false; name = "ocf-resource-agents"; }`
    - runCommand, no install check
- [x] `{ doInstallCheck = true; name = "openambit-0.5"; }`
    - propagated via libusb1
    - has butchered pre/post phases
- [x] `{ doInstallCheck = false; name = "opencbm-0.4.99.104"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "openhantek6022-3.4.0"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "open-iscsi-2.1.11"; }`
- [x] `{ doInstallCheck = false; name = "openobex-1.7.2"; }`
- [x] `{ doInstallCheck = false; name = "openocd-0.12.0"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "openocd-rp2040-0.12.0"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = true; name = "openrgb-0.9"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = true; name = "openrgb-0.9"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = true; name = "openswitcher-0.11.0"; }`
- [x] `{ doInstallCheck = true; name = "OpenTabletDriver-0.6.5.1"; }`
- [x] `{ doInstallCheck = false; name = "openterface-qt-0.3.12"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "opentx-2.3.15"; }`
- [x] `{ doInstallCheck = false; name = "open-vm-tools-12.5.0"; }`
- [x] `{ doInstallCheck = false; name = "open-vm-tools-12.5.0"; }`
- [x] `{ doInstallCheck = false; name = "orbuculum-2.1.0"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "oversteer-0.8.3"; }`
- [x] `{ doInstallCheck = false; name = "pcmciautils-018"; }`
- [x] `{ doInstallCheck = false; name = "python3.12-persistent-evdev-unstable-2022-05-07"; }`
- [x] `{ doInstallCheck = false; name = "phodav-3.0"; }`
- [x] `{ doInstallCheck = false; name = "picoprobe-udev-rules-unstable-2023-01-31"; }`
    - Configuration file /nix/store/7yf9s8l8zjs49ccxyqq5bn6m6i1nsr1f-picoprobe-udev-rules-unstable-2023-01-31/lib/udev/rules.d/69-probe-rs.rules is marked executable. Please remove executable permission bits. Proceeding anyway
- [x] `{ doInstallCheck = true; name = "picotool-2.1.1"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "pipewire-1.4.2"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = true; name = "platformio-6.1.18"; }`
- [x] `{ doInstallCheck = false; name = "polar-unstable-2021-01-12"; }`
- [x] `{ doInstallCheck = false; name = "projecteur-0.10"; }`
- [x] `{ doInstallCheck = false; name = "proxmark3-4.20142"; }`
- [x] `{ doInstallCheck = false; name = "prusa-slicer-2.9.0"; }`
- [x] `{ doInstallCheck = false; name = "pulseaudio-17.0"; }`
- [x] `{ doInstallCheck = false; name = "pulseaudio-17.0"; }`
- [x] `{ doInstallCheck = true; name = "python3.12-busylight-for-humans-0.33.3"; }`
- [x] `{ doInstallCheck = true; name = "python3.12-openant-unstable-1.3.1"; }`
- [x] `{ doInstallCheck = true; name = "python3.12-py3buddy-1.0"; }`
    - Configuration file /nix/store/242snzks6b64a0jwwdk1xcwz16z8inmq-python3.12-py3buddy-1.0/lib/udev/rules.d/99-ibuddy.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [x] `{ doInstallCheck = true; name = "python3.12-rfcat-2.0.1"; }`
- [x] `{ doInstallCheck = true; name = "python3.12-seabreeze-2.10.1"; }`
- [x] `{ doInstallCheck = true; name = "python3.12-sigrok-0.5.2-unstable-2024-10-20"; }`
- [ ] `{ doInstallCheck = false; name = "soapysdr-0.8.1-unstable-2025-03-30-03"; }`
    - ??? no udev rules
- [x] `{ doInstallCheck = true; name = "python3.13-busylight-for-humans-0.33.3"; }`
- [x] `{ doInstallCheck = false; name = "python3.13-google-compute-engine-20190124"; }`
- [x] `{ doInstallCheck = false; name = "libiio-0.24"; }`
- [x] `{ doInstallCheck = true; name = "python3.13-liquidctl-1.15.0"; }`
- [x] `{ doInstallCheck = true; name = "python3.13-openant-unstable-1.3.1"; }`
- [x] `{ doInstallCheck = true; name = "python3.13-py3buddy-1.0"; }`
- [x] `{ doInstallCheck = true; name = "python3.13-seabreeze-2.10.1"; }`
- [x] `{ doInstallCheck = true; name = "python3.13-sigrok-0.5.2-unstable-2024-10-20"; }`
- [ ] `{ doInstallCheck = false; name = "soapysdr-0.8.1-unstable-2025-03-30-03"; }`
    - ??? no udev rules
- [x] `{ doInstallCheck = false; name = "qdmr-0.12.1"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "qFlipper-1.3.3"; }`
- [x] `{ doInstallCheck = false; name = "qlcplus-4.13.1"; }`
- [x] `{ doInstallCheck = false; name = "qmk-udev-rules-0.27.13"; }`
    - Configuration file /nix/store/kzj3frkxnk0nggywz29mmdb8bv4yfgg7-qmk-udev-rules-0.27.13/lib/udev/rules.d/50-qmk.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [x] `{ doInstallCheck = false; name = "quark-goldleaf-1.0.0"; }`
- [x] `{ doInstallCheck = false; name = "rdma-core-57.0"; }`
- [x] `{ doInstallCheck = false; name = "rfkill-udev"; }`
- [ ] `{ doInstallCheck = false; name = "python3.12-rivalcfg-4.14.0"; }`
    - skipped, broken tests
- [x] `{ doInstallCheck = false; name = "rkdeveloptool-unstable-2021-09-04"; }`
    - propagated via libusb1
- [ ] `{ doInstallCheck = false; name = "roccat-tools-5.9.0"; }`
    - /nix/store/bh790j6va11b5zagkhy4429j2dvng3jq-roccat-tools-5.9.0/lib/udev/rules.d/90-roccat-kone.rules:17 Invalid value "/nix/store/xy4jjgw87sbgwylm5kn047d9gkbhsr9x-bash-5.2p37/bin/bash -c 'ROCCAT_PATH=$(roccatkonecontrol -p); if test $? -eq 0; then chgrp roccat $ROCCAT_PATH/*; fi'" for RUN (char 82: invalid substitution type), ignoring.
    - /nix/store/bh790j6va11b5zagkhy4429j2dvng3jq-roccat-tools-5.9.0/lib/udev/rules.d/90-roccat-kone.rules:18 Invalid value "/nix/store/xy4jjgw87sbgwylm5kn047d9gkbhsr9x-bash-5.2p37/bin/bash -c 'ROCCAT_PATH=$(roccatkonecontrol -p); if test $? -eq 0; then chgrp roccat $ROCCAT_PATH/*; fi'" for RUN (char 82: invalid substitution type), ignoring.
    - /nix/store/bh790j6va11b5zagkhy4429j2dvng3jq-roccat-tools-5.9.0/lib/udev/rules.d/90-roccat-kone.rules: udev rules check failed.
- [ ] `{ doInstallCheck = false; name = "rpcs3-0.0.36-17736-c86a25079"; }`
    - propagated via libusb1
    - Configuration file /nix/store/wvspxipk6bzc042cfh5mjcw7j038hsjk-rpcs3-0.0.36-17736-c86a25079/etc/udev/rules.d/99-ds3-controllers.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
    - Configuration file /nix/store/wvspxipk6bzc042cfh5mjcw7j038hsjk-rpcs3-0.0.36-17736-c86a25079/etc/udev/rules.d/99-ds4-controllers.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
    - Configuration file /nix/store/wvspxipk6bzc042cfh5mjcw7j038hsjk-rpcs3-0.0.36-17736-c86a25079/etc/udev/rules.d/99-dualsense-controllers.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [x] `{ doInstallCheck = false; name = "rtl_fm_streamer-unstable-2021-06-08"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "rtl-sdr-librtlsdr-0.9.0"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "rtl-sdr-osmocom-2.0.1"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "rtl-sdr-blog-1.3.5"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = true; name = "rust-streamdeck-0.9.0"; }`
- [x] `{ doInstallCheck = false; name = "rwedid-0.3.2"; }`
- [x] `{ doInstallCheck = false; name = "sane-backends-1.3.1"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = true; name = "sc-controller-0.5.2"; }`
    - NOT propagated via libusb1: not in buildInputs
- [x] `{ doInstallCheck = false; name = "snagboot-2.2"; }`
- [ ] `{ doInstallCheck = false; name = "soapysdr-0.8.1-unstable-2025-03-30-03"; }`
    - ??? no udev rules
- [x] `{ doInstallCheck = true; name = "solaar-1.1.14"; }`
- [x] `{ doInstallCheck = true; name = "solaar-1.1.14"; }`
- [x] `{ doInstallCheck = false; name = "solo2-cli-0.2.2"; }`
    - Configuration file /nix/store/djjqw8ii7fbszmay3hzq139mg78r2gqi-solo2-cli-0.2.2/lib/udev/rules.d/70-solo2.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [ ] `{ doInstallCheck = false; name = "sparrow-desktop-2.0.0"; }`
    - untested (BIIG build, valkey in the closure was annoyingly flaky)
- [ ] `{ doInstallCheck = false; name = "sparrow-unwrapped-2.0.0"; }`
    - untested (BIIG build, valkey in the closure was annoyingly flaky)
- [x] `{ doInstallCheck = false; name = "speakersafetyd-1.0.2"; }`
- [x] `{ doInstallCheck = false; name = "steam-devices-udev-rules-1.0.0.61-unstable-2024-05-22"; }`
- [ ] `{ doInstallCheck = false; name = "steam"; }`
    - skipped: wrapper, no installCheck
- [ ] `{ doInstallCheck = false; name = "steam-run"; }`
    - skipped: fhs environment
- [x] `{ doInstallCheck = false; name = "stlink-1.8.0"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "stlink-1.8.0"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "stratisd-3.7.3"; }`
- [x] `{ doInstallCheck = false; name = "stratisd-3.7.3"; }`
- [x] `{ doInstallCheck = false; name = "streamcontroller-1.5.0-beta.8"; }`
- [ ] `{ doInstallCheck = true; name = "streamdeck-ui-4.1.3"; }`
    - had butchered post phase
    - seems to ignore hook
- [x] `{ doInstallCheck = false; name = "sunshine-2025.122.141614"; }`
- [x] `{ doInstallCheck = false; name = "supergfxctl-5.2.7"; }`
- [x] `{ doInstallCheck = false; name = "super-slicer-2.5.60.0"; }`
- [x] `{ doInstallCheck = false; name = "super-slicer-2.5.59.13"; }`
- [x] `{ doInstallCheck = false; name = "swayosd-0.2.0"; }`
- [x] `{ doInstallCheck = false; name = "system-config-printer-1.5.18"; }`
- [ ] `{ doInstallCheck = false; name = "systemd-minimal-257.5"; }`
    - skipped: inf rec
- [ ] `{ doInstallCheck = false; name = "systemd-257.5"; }`
    - skipped: inf rec
- [ ] `{ doInstallCheck = false; name = "systemd-257.5"; }`
    - skipped: inf rec
- [x] `{ doInstallCheck = false; name = "thunderbolt-0.9.3"; }`
- [x] `{ doInstallCheck = false; name = "tiny-dfr-0.3.2"; }`
- [x] `{ doInstallCheck = false; name = "tiscamera-1.1.1"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "tlp-1.8.0"; }`
- [x] `{ doInstallCheck = false; name = "trezor-udev-rules-unstable-2019-07-17"; }`
    - has butchered pre/post phases
- [x] `{ doInstallCheck = false; name = "tsduck-3.40-4165"; }`
- [x] `{ doInstallCheck = false; name = "ubertooth-2020-12-R1"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "udisks-2.10.1"; }`
- [x] `{ doInstallCheck = false; name = "uhd-4.7.0.0"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "upower-1.90.6"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "usb-blaster-udev-rules"; }`
- [x] `{ doInstallCheck = false; name = "usbkvm-0.2.0"; }`
- [x] `{ doInstallCheck = false; name = "usb-modeswitch-data-20191128"; }`
- [x] `{ doInstallCheck = false; name = "usbmuxd2-unstable-2023-12-12"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "usbmuxd-1.1.1+date=2023-05-05"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "usbrelayd-1.2.1"; }`
- [x] `{ doInstallCheck = false; name = "usbsdmux-24.1.1"; }`
- [ ] `{ doInstallCheck = false; name = "imagescan-3.65.0"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "uuu-1.5.201"; }`
    - propagated via libusb1
- [x] `{ doInstallCheck = false; name = "uvcdynctrl-0.3.0"; }`
- [x] `{ doInstallCheck = false; name = "v4l-utils-1.24.1"; }`
- [ ] `{ doInstallCheck = false; name = "Vial-0.7.3"; }`
    - appimage, no install checks
- [ ] `{ doInstallCheck = false; name = "via-3.0.0"; }`
    - appimage, no install checks
- [x] `{ doInstallCheck = false; name = "waagent-2.13.1.1"; }`
- [x] `{ doInstallCheck = false; name = "wch-isp-0.4.1"; }`
    - propagated via libusb1
- [ ] `{ doInstallCheck = false; name = "wine-wow-10.0"; }`
    - skipped
- [x] `{ doInstallCheck = false; name = "wooting-udev-rules-0-unstable-2024-11-20"; }`
- [x] `{ doInstallCheck = false; name = "xe-guest-utilities-8.4.0"; }`
    - Configuration file /nix/store/4ainz0zf0577288qjkvfslf8kl0zhp0b-xe-guest-utilities-8.4.0/etc/udev/rules.d/z10_xen-vcpu-hotplug.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [x] `{ doInstallCheck = false; name = "xf86-input-wacom-1.2.3"; }`
- [x] `{ doInstallCheck = false; name = "xfel-1.3.2"; }`
    - propagated via libusb1
- [ ] `{ doInstallCheck = false; name = "xf86-input-vmmouse-13.2.0"; }`
    - skipped: `# THIS IS A GENERATED FILE.  DO NOT EDIT!`
- [ ] `{ doInstallCheck = false; name = "xpra-6.3"; }`
- [x] `{ doInstallCheck = false; name = "xr-hardware-1.1.1"; }`
- [ ] `{ doInstallCheck = false; name = "yubikey-personalization-1.20.0"; }`
    - propagated via libusb1
    - Configuration file /nix/store/y6bp1cqla1xhs23a9zsddrf1mqxg2amq-yubikey-personalization-1.20.0/lib/udev/rules.d/69-yubikey.rules is marked executable. Please remove executable permission bits. Proceeding anyway.
- [x] `{ doInstallCheck = false; name = "zfs-user-2.2.7"; }`
- [x] `{ doInstallCheck = false; name = "zfs-user-2.3.2"; }`
- [x] `{ doInstallCheck = false; name = "zsa-udev-rules-unstable-2023-11-30"; }`
- [ ] `{ doInstallCheck = false; name = "zsnes2-2.0.12"; }`
2025-05-28 10:51:29 +02:00
Izorkin
bd4128c317 zfs: reduce closure size 2025-03-13 01:11:56 +03:00
Maximilian Bosch
5645cd22d4 linux: expose make flags for modules in linuxKernel.packages.linux_X_Y
Closes #376820

The issue with providing `moduleMakeFlags` via `passthru` of the kernel
package is that when this package gets overriden[1], the `moduleMakeFlags`
list still references the kernel without the overrides.

This broke e.g. kernel modules of linux-rpi4 which can be reproduced
with

    nix-build --argstr system aarch64-linux -A linuxKernel.packages.linux_rpi4.zfs_2_3

This used to break with

    Error: modDirVersion 6.6.51 specified in the Nix expression is wrong, it should be: 6.6.51-v8

since KBUILD_OUTPUT referenced the kernel without the changes from
`overrideDerivation` that also changes the `modDirVersion`.

The new approach is to add the build flags right into
`linuxKernel.packages.linux_X_Y`: that way we don't need any hacks to
update `moduleMakeFlags` when the derivation with the passthru gets
overridden.

By using the fixpoint of the package-set, the `kernelModuleMakeFlags`
list is correctly updated. E.g. given

    with import ./. {};

    linuxKernel.packages.linux_6_6.extend (self: super: {
      kernel = super.kernel.overrideAttrs (_: {
        name = "linux-snens";
      });
    })

the `makeFlags` is correctly updated:

    $ nix-instantiate snenskek.nix -A zfs_2_3.makeFlags --eval --strict
    [ "ARCH=x86_64" "CROSS_COMPILE=" "KBUILD_OUTPUT=/nix/store/gsp68549k1aqbwxwczpgw67w5jjn4shw-linux-snens-dev/lib/modules/6.6.74/build" ]

[1] E.g. `linux-rpi4`.
2025-01-27 16:09:50 +01:00
K900
aa3e94fe7c treewide: kernel.makeFlags -> kernel.moduleMakeFlags 2025-01-23 14:00:43 +03:00
Andrew Marshall
60cc35abae zfs: remove code for obsolete versions
In cbc50da11c, ZFS 2.1 was removed, this
removes conditional parts of the build only needed for 2.1 and older.
2025-01-19 17:40:08 -05:00
Silvan Mosberger
4f0dadbf38 treewide: format all inactive Nix files
After final improvements to the official formatter implementation,
this commit now performs the first treewide reformat of Nix files using it.
This is part of the implementation of RFC 166.

Only "inactive" files are reformatted, meaning only files that
aren't being touched by any PR with activity in the past 2 months.
This is to avoid conflicts for PRs that might soon be merged.
Later we can do a full treewide reformat to get the rest,
which should not cause as many conflicts.

A CI check has already been running for some time to ensure that new and
already-formatted files are formatted, so the files being reformatted here
should also stay formatted.

This commit was automatically created and can be verified using

    nix-build a08b3a4d19.tar.gz \
      --argstr baseRev b32a094368
    result/bin/apply-formatting $NIXPKGS_PATH
2024-12-10 20:26:33 +01:00
Sandro Jäckel
9b6f2df0b6 zfs: substitute absolute path in arc_summary to modinfo 2024-11-14 22:45:35 +01:00
Andrew Marshall
b5e959d3c3 zfs_unstable: expand on unstable nature in long description 2024-11-01 18:50:52 -04:00
Andrew Marshall
9ce881027b zfs: remove recommendations to use unstable
`pkgs.zfs_unstable` is pre-release software and may very well have
critical bugs that make it unsuitable for general use. As such, we
should not recommend it as a general solution to the problem of "my
Kernel is too new for stable ZFS".
2024-11-01 18:50:24 -04:00
Andrew Marshall
2491be0a6d zfs: update usage of deprecated --replace
- In some cases, move into a conditional as the substitution is only
  needed on some version
- One use of `--replace-warn` since it is looking in a set of files
  where the exact files that might contain it may change over time, but
  we want to cover all of them
2024-11-01 18:50:24 -04:00
Adam Stephens
2dbc1128b3 zfs: deprecate latestCompatibleLinuxPackages
Using zfs.latestCompatibleLinuxPackages can result in downgrades to the kernel on a system, potentially causing breakage.
This breakage may not be apparent during build and switch, but only after attempting to reboot into the updated generation.
By forcing users to explicitly manage their kernel version, we can ensure that the breakage will be apparent at build time instead.
2024-09-17 08:57:38 -04:00
Andrew Marshall
abc759221f linux: remove unneeded and misleading passthru.isVanilla
This was added for use by ZFS, but it turned out that `pname == "linux"`
is sufficient enough and has better coverage since many of our Linux
variants do not have an existing `passthru.isX`, and instead are
identifiable by a different pname.
2024-09-09 10:24:41 -04:00
Will Fancher
cf572e0f31 zfs: Fix bash completions with 2.1 2024-09-06 16:07:55 -04:00
Adam C. Stephens
63aafed9dd zfs_2_2: 2.2.5 -> 2.2.6 (#339696) 2024-09-05 07:42:32 -04:00
Andrew Marshall
636134b8ed zfs_2_2: 2.2.5 -> 2.2.6
- This release brings official support for Kernel 6.10
- Also update zfs_unstable as it would otherwise lag behind
- Upstream now links `zpool` completion, so only do so on older zfs
  (since we still need to support 2.1.x)

Changelog: https://github.com/openzfs/zfs/releases/tag/zfs-2.2.6
2024-09-04 22:28:28 -04:00
Andrew Marshall
34e1748391 zfs: fix maybe getting wrong kernel in latestCompatibleLinuxPackages
E.g. might have gotten -rt, -xanmod, etc.
2024-09-03 08:18:28 -04:00
Andrew Marshall
7fa05c77b7 zfs: dynamically determine latestCompatibleLinuxPackages
This removes the need to micromanage this value, instead we simply find
the correct one based on the existing kernelCompatible attr (though that
is now a function). This not only simplifies ZFS upgrades, but also
whenever Kernel versions are removed due to EOL.
2024-08-28 20:55:06 -04:00
Andrew Marshall
52a7570e09 zfs_unstable: remove unused param 2024-08-28 09:07:55 -04:00
Adam Stephens
a65001e999 zfs: move maintainer adamcstephens to 2.2 only 2024-07-19 08:46:21 -04:00
Sigmanificient
d48a9bb622 treewide: remove unused fetchpatch arguments 2024-06-04 12:40:25 +02:00
Andrew Marshall
1f32eb724d nixos/zfs: Remove enableUnstable in favor of setting package
This just adds complexity and confusion. Once-upon-a-time, there was no
`package` and only `enableUnstable`, but now it is just confusing to
have both, as it would be possible to do e.g. `package = pkgs.zfs` and
`enableUnstable = true`, but then `enableUnstable` does nothing.
2024-02-27 19:30:19 -05:00
Andrew Marshall
929fcf9335 zfs_unstable: Rename from zfsUnstable
This matches the naming of other zfs_* pkgs.
2024-02-27 18:45:55 -05:00
Raito Bezarius
b026c45bf6 zfs: improve description and long description
When we are building for user or kernel, we are not building a kernel module all the time.
2023-11-24 15:47:21 +01:00
Raito Bezarius
e04c0b0d99 zfs_2_1: init at 2.1.13
This re-introduces the old stable ZFS version we had in the past following
the many predicted issues of ZFS 2.2.x series, that is much more stable
than any further ZFS version at the moment.

I am also removing myself from maintenance of any further ZFS versions as I am
planning to quit ZFS maintenance at some point.

In the meantime, for users like me who depend on ZFS for critical operations, here is a ZFS version
that is known to work for LTS kernels.
2023-11-24 15:47:21 +01:00
Majiir Paktu
007d92d830 zfs: add armv7 to supported platforms 2023-10-22 15:43:26 -04:00
Adam Stephens
1a81fe0cc8 zfs: 2.1.13 -> 2.2.0 2023-10-21 12:16:31 -04:00
OPNA2608
841c447326 zfs: Honour NIX_BUILD_CORES in kernel build
Otherwise configuring runs some test builds with `nproc` amount of cores.
2023-10-14 17:15:44 +02:00
Adam Stephens
37c7768047 zfsUnstable: 2.2.0-rc4 -> 2.2.0-rc5 2023-10-10 23:49:54 -04:00
Jörg Thalheim
32883aecc9 zfsUnstable: 2.1.13 -> 2.2.0-rc4 2023-09-11 21:11:01 +02:00
Adam Joseph
ede53c31bc Merge pull request #194148 from amjoseph-nixpkgs/pr/zfs/mips-bad
zfs.meta.platforms: restrict to upstream-supported $TARGET_CPUs
2023-05-16 07:31:35 +00:00
Adam Joseph
53c8cd6af8 zfs.meta.platforms: restrict to upstream-supported $TARGET_CPUs 2023-05-15 01:07:09 -07:00