anchor.diff:  
         postPatch = optionalString buildKernel ''
           patchShebangs scripts
  +        # The arrays must remain the same length, so we repeat a flag that is
  +        # already part of the command and therefore has no effect.
  +        substituteInPlace ./module/zfs/zfs_ctldir.c --replace '"/usr/bin/env", "umount"' '"${utillinux}/bin/umount", "-n"' \
  +                                                    --replace '"/usr/bin/env", "mount"'  '"${utillinux}/bin/mount", "-n"'
  +      '' + optionalString buildUser ''
  +        substituteInPlace ./lib/libzfs/libzfs_mount.c --replace "/bin/umount"             "${utillinux}/bin/umount" \
  +                                                      --replace "/bin/mount"              "${utillinux}/bin/mount"
  +        substituteInPlace ./lib/libshare/nfs.c        --replace "/usr/sbin/exportfs"      "${nfs-utils}/bin/exportfs"
  +        substituteInPlace ./config/user-systemd.m4    --replace "/usr/lib/modules-load.d" "$out/etc/modules-load.d"
  +        substituteInPlace ./config/zfs-build.m4       --replace "\$sysconfdir/init.d"     "$out/etc/init.d"
  +        substituteInPlace ./etc/zfs/Makefile.am       --replace "\$(sysconfdir)"          "$out/etc"
  +        substituteInPlace ./cmd/zed/Makefile.am       --replace "\$(sysconfdir)"          "$out/etc"
  +        substituteInPlace ./etc/systemd/system/zfs-share.service.in \
  +          --replace "/bin/rm " "${coreutils}/bin/rm "
  +
  +        substituteInPlace ./cmd/vdev_id/vdev_id \
  +          --replace "PATH=/bin:/sbin:/usr/bin:/usr/sbin" \
  +          "PATH=${makeBinPath [ coreutils gawk gnused gnugrep systemd ]}"
         '' + optionalString stdenv.hostPlatform.isMusl ''
           substituteInPlace config/user-libtirpc.m4 \
             --replace /usr/include/tirpc ${libtirpc}/include/tirpc
         '';
   
         nativeBuildInputs = [ autoreconfHook nukeReferences ]
  -        ++ optional buildKernel (kernel.moduleBuildDependencies ++ [ perl ]);
  -      buildInputs = optionals buildUser [ zlib libuuid python3 attr ]
  -        ++ optionals (buildUser) [ openssl ]
  -        ++ optional stdenv.hostPlatform.isMusl [ libtirpc ];
  +        ++ optionals buildKernel (kernel.moduleBuildDependencies ++ [ perl ]);
  +      buildInputs = optionals buildUser [ zlib libuuid attr ]
  +        ++ optionals (buildUser) [ openssl python3 ]
  +        ++ optional stdenv.hostPlatform.isMusl libtirpc;
   
         # for zdb to get the rpath to libgcc_s, needed for pthread_cancel to work
         NIX_CFLAGS_LINK = "-lgcc_s";
   
         hardeningDisable = [ "fortify" "stackprotector" "pic" ];
   
  -      preConfigure = ''
  -        substituteInPlace ./module/zfs/zfs_ctldir.c   --replace "umount -t zfs"           "${utillinux}/bin/umount -t zfs"
  -        substituteInPlace ./module/zfs/zfs_ctldir.c   --replace "mount -t zfs"            "${utillinux}/bin/mount -t zfs"
  -        substituteInPlace ./lib/libzfs/libzfs_mount.c --replace "/bin/umount"             "${utillinux}/bin/umount"
  -        substituteInPlace ./lib/libzfs/libzfs_mount.c --replace "/bin/mount"              "${utillinux}/bin/mount"
  -        substituteInPlace ./lib/libshare/nfs.c        --replace "/usr/sbin/exportfs"      "${nfs-utils}/bin/exportfs"
  -        substituteInPlace ./cmd/ztest/ztest.c         --replace "/usr/sbin/ztest"         "$out/sbin/ztest"
  -        substituteInPlace ./cmd/ztest/ztest.c         --replace "/usr/sbin/zdb"           "$out/sbin/zdb"
  -        substituteInPlace ./config/user-systemd.m4    --replace "/usr/lib/modules-load.d" "$out/etc/modules-load.d"
  -        substituteInPlace ./config/zfs-build.m4       --replace "\$sysconfdir/init.d"     "$out/etc/init.d"
  -        substituteInPlace ./etc/zfs/Makefile.am       --replace "\$(sysconfdir)"          "$out/etc"
  -        substituteInPlace ./cmd/zed/Makefile.am       --replace "\$(sysconfdir)"          "$out/etc"
  -        substituteInPlace ./module/Makefile.in        --replace "/bin/cp"                 "cp"
  -        substituteInPlace ./etc/systemd/system/zfs-share.service.in \
  -          --replace "/bin/rm " "${coreutils}/bin/rm "
  -
  -        for f in ./udev/rules.d/*
  -        do
  -          substituteInPlace "$f" --replace "/lib/udev/vdev_id" "$out/lib/udev/vdev_id"
  -        done
  -        substituteInPlace ./cmd/vdev_id/vdev_id \
  -          --replace "PATH=/bin:/sbin:/usr/bin:/usr/sbin" \
  -          "PATH=${makeBinPath [ coreutils gawk gnused gnugrep systemd ]}"
  -
  -        ./autogen.sh
  -        configureFlagsArray+=("--libexecdir=$out/libexec")
  -      '';
  -
         configureFlags = [
           "--with-config=${configFile}"
  -        "--with-python=${python3.interpreter}"
  +        (withFeatureAs buildUser "python" python3.interpreter)
         ] ++ optionals buildUser [
           "--with-dracutdir=$(out)/lib/dracut"
           "--with-udevdir=$(out)/lib/udev"
  
positive.code:         "DEFAULT_INITCONF_DIR=\${out}/default"
        ];
  
        postInstall = ''
          # Prevent kernel modules from depending on the Linux -dev output.
          nuke-refs $(find $out -name "*.ko")
        '' + optionalString buildUser ''
          # Remove provided services as they are buggy
          rm $out/etc/systemd/system/zfs-import-*.service
  
negative.code:     # incompatibleKernelVersion = "4.19";
  
      # this package should point to a version / git revision compatible with the latest kernel release
      version = "0.8.1";
  
      sha256 = "0wlbziijx08a9bmbyq4gfz4by9l5jrx44g18i99qnfm78k2q8a84";
  