install-grub: Make more robust against GC'ed system profile entries

Previously this barfed with:

updating GRUB 2 menu...
fileparse(): need a valid pathname at /nix/store/zldbbngl0f8g5iv4rslygxwp0dbg1624-install-grub.pl line 391.
warning: error(s) occured while switching to the new configuration

Changed files
+4
nixos
modules
system
boot
loader
+4
nixos/modules/system/boot/loader/grub/install-grub.pl
···
my $curEntry = 0;
foreach my $link (@links) {
last if $curEntry++ >= $configurationLimit;
+
if (! -e "$link/nixos-version") {
+
warn "skipping corrupt system profile entry ‘$link’\n";
+
next;
+
}
my $date = strftime("%F", localtime(lstat($link)->mtime));
my $version =
-e "$link/nixos-version"