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.
The previous version stopped working when we started elaborating Rust
metadata. Here, I've made it a bit nicer by actually setting
targetPlatform to an elaborated system. Setting the config to wasi to
get elaborate to understand it is a bit of a hack, but I think it's
less of a hack than what we had before.
The only actual difference this makes to the rustc-wasm32 derivation
compared to the previous working version, is that now crt-static is
set. This is probably the right thing anyway.
Fixes: e3e57b8f18 ("lib.systems: elaborate Rust metadata")
And also the following refactoring:
hare:
1. Replace `NIX_BUILD_TOP` usage with `mktemp`
2. Enable parallel building
3. Get rid of `config-template.mk`, by using `makeFlagsArray` instead
4. Move `wrapProgram` call to `postFixup`
5. Set the `LOCALVER` environment variable to `nix`, so that the `hare
version` command outputs `dev-nix`[1]
6. Set `meta` attribute `mainProgram`
7. Make the package accessible through `all-packages.nix` instead of
`aliases.nix`
8. Move package path from `pkgs/development/compilers/hare/hare` to
`pkgs/development/compilers/hare`, since the scope is now made at
`pkgs/top-level/hare-packages.nix`
harec:
1. Remove `hardeningDisable = [ "fortify" ];`, since both harec and hare
compile normally with it enabled
2. Enable parallel building
3. Set `meta` attribute `mainProgram`
4. Make the package accessible through `all-packages.nix` instead of
`aliases.nix`
5. Move package path from `pkgs/development/compilers/hare/harec` to
`pkgs/development/compilers/harec`, since the scope is now made at
`pkgs/top-level/hare-packages.nix`
harePackages:
1. Move hare packages scope from
`pkgs/development/compilers/hare/default.nix` to
`pkgs/top-level/hare-packages.nix`
2. Remove `hare` and `harec` from `aliases.nix`, moving them to
`all-packages.nix`
3. Change the `callPackage` argument in `all-packages.nix` from
`../development/compilers/hare` to `./hare-packages.nix`
[1]: 1048620a7a/item/scripts/version (L2)
Co-authored-by: starzation <nixpkgs@starzation.net>