+29
-5
nixos/modules/system/boot/loader/grub/grub.nix
+29
-5
nixos/modules/system/boot/loader/grub/grub.nix
············+"PERL5LIB=${makePerlPath (with pkgs.perlPackages; [ FileSlurp XMLLibXML XMLSAX ListCompare ])} " +
+113
-7
nixos/modules/system/boot/loader/grub/install-grub.pl
+113
-7
nixos/modules/system/boot/loader/grub/install-grub.pl
············next if $mountPoint eq "/nix/store" && (grep { $_ eq "rw" } @superOptions) && (grep { $_ eq "ro" } @mountOptions);···+my $defaultGrubState = GrubState->new(version => "", efi => "", devices => "", efiMountPoint => "" );+my $grubState = GrubState->new(version => $version, efi => $efi, devices => $devices, efiMountPoint => $efiMountPoint );foreach my $dev ($dom->findnodes('/expr/attrs/attr[@name = "devices"]/list/string/@value')) {+my $devicesDiffer = scalar (List::Compare->new( '-u', '-a', \@deviceTargets, \@prevDeviceTargets)->get_symmetric_difference() );+my $requireNewInstall = $devicesDiffer || $versionDiffer || $efiDiffer || $efiMountPointDiffer || (($ENV{'NIXOS_INSTALL_GRUB'} // "") eq "1");+system("$grub/sbin/grub-install", "--recheck", "--target=$grubTarget", Cwd::abs_path($dev)) == 0+system("$grubEfi/sbin/grub-install", "--recheck", "--target=$grubTargetEfi", "--efi-directory=$efiSysMountPoint") == 0+system("$grubEfi/sbin/grub-install", "--recheck", "--target=$grubTargetEfi", "--efi-directory=$efiSysMountPoint", "--no-nvram") == 0
+13
pkgs/tools/misc/grub/2.0x.nix
+13
pkgs/tools/misc/grub/2.0x.nix
···+inPCSystems = any (system: stdenv.system == system) (mapAttrsToList (name: _: name) pcSystems);···++ optionals efiSupport [ "--with-platform=efi" "--target=${efiSystems.${stdenv.system}.target}" "--program-prefix=" ];
+8
pkgs/top-level/perl-packages.nix
+8
pkgs/top-level/perl-packages.nix
···