mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-16 06:45:16 +01:00
nixos/grub: use the correct ZFS version
When `config.boot.zfs.enableUnstable` is set to true, grub was built with the `zfs` package even though the rest of the system uses the `zfsUnstable` package. The effect of this can only be seen when `zfs` and `zfsUnstable` actually differ (which is not currently the case), for example when overriding one of them locally.
This commit is contained in:
parent
a3957236ce
commit
c71cb77cd6
2 changed files with 12 additions and 1 deletions
|
@ -36,7 +36,7 @@ let
|
|||
# Package set of targeted architecture
|
||||
if cfg.forcei686 then pkgs.pkgsi686Linux else pkgs;
|
||||
|
||||
realGrub = if cfg.zfsSupport then grubPkgs.grub2.override { zfsSupport = true; }
|
||||
realGrub = if cfg.zfsSupport then grubPkgs.grub2.override { zfsSupport = true; zfs = cfg.zfsPackage; }
|
||||
else grubPkgs.grub2;
|
||||
|
||||
grub =
|
||||
|
@ -614,6 +614,16 @@ in
|
|||
'';
|
||||
};
|
||||
|
||||
zfsPackage = mkOption {
|
||||
type = types.package;
|
||||
internal = true;
|
||||
default = pkgs.zfs;
|
||||
defaultText = literalExpression "pkgs.zfs";
|
||||
description = lib.mdDoc ''
|
||||
Which ZFS package to use if `config.boot.loader.grub.zfsSupport` is true.
|
||||
'';
|
||||
};
|
||||
|
||||
efiSupport = mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
|
|
|
@ -667,6 +667,7 @@ in
|
|||
# TODO FIXME See https://github.com/NixOS/nixpkgs/pull/99386#issuecomment-798813567. To not break people's bootloader and as probably not everybody would read release notes that thoroughly add inSystem.
|
||||
boot.loader.grub = mkIf (inInitrd || inSystem) {
|
||||
zfsSupport = true;
|
||||
zfsPackage = cfgZfs.package;
|
||||
};
|
||||
|
||||
services.zfs.zed.settings = {
|
||||
|
|
Loading…
Reference in a new issue