Skip to content

Commit 72ad0d6

Browse files
committed
Check for name collision with existing EFI applications and rename our
own if appropriate.
1 parent 4e6b7eb commit 72ad0d6

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

bin/GoboLinuxInstaller

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -287,20 +287,24 @@ class BootLoader :
287287

288288
def createEFIConfig(self, grubdir, efimnt) :
289289
efidir = "%s/EFI/BOOT" %efimnt
290+
efiapp = "BOOTx64.EFI"
290291
self.convertGrubDeviceToUUID(grubdir, efidir, "grub-efi.cfg")
292+
goboversion = open("/System/Settings/GoboLinuxVersion").read().strip("\n")
291293

292294
olddir = os.getenv("PWD")
293295
os.chdir(efidir)
296+
if os.path.exists(efiapp) :
297+
efiapp = "Gobo" + goboversion + ".EFI"
294298
cmd = 'grub-mkstandalone-efi -d /lib/grub/x86_64-efi -O x86_64-efi '
295299
cmd += '--modules="part_gpt part_msdos iso9660 all_video efi_gop efi_uga video_cirrus gfxterm gettext font" '
296-
cmd += '--fonts="unicode" --themes="" -o BOOTx64.EFI --compress=gz '
300+
cmd += '--fonts="unicode" --themes="" -o %s --compress=gz ' %efiapp
297301
cmd += '"boot/grub/grub.cfg=grub-efi.cfg"'
298302
safeRun(cmd, 'grub-mkstandalone-efi', 1, self.logger)
299303
os.chdir(olddir)
300304

301305
rootDisk = ''.join(i for i in os.path.basename(self.targetDisc) if not i.isdigit())
302306
partitionNum = ''.join(i for i in os.path.basename(self.targetDisc) if i.isdigit())
303-
safeRun('efibootmgr --create --label "GoboLinux 016" --loader "\EFI\BOOT\BOOTx64.EFI" --disk /dev/%s --part %s' %(rootDisk, partitionNum))
307+
safeRun('efibootmgr --create --label "GoboLinux %s" --loader "\EFI\BOOT\%s" --disk /dev/%s --part %s' %(goboversion, efiapp, rootDisk, partitionNum))
304308
print tr('EFI boot manager entries:')
305309
print tr('\n'.join(safeRun('efibootmgr -v')))
306310

@@ -1238,7 +1242,7 @@ def _RunInstallation():
12381242
# Configure bootloaders
12391243
log(tr('Creating GRUB config file'))
12401244
if installer.getValue('InstallBootloader') and platform.pureEFI() :
1241-
log(tr('Installing BOOTx64.EFI on %s' %bootloaderTarget))
1245+
log(tr('Installing EFI application on %s' %bootloaderTarget))
12421246
diskutil.mount(os.path.basename(bootloaderTarget), '/Mount/EFI')
12431247
bootloader.createGrubConfig('/boot/grub', uuidBeforeMkfs)
12441248
bootloader.createEFIConfig('/boot/grub', '/Mount/EFI')

0 commit comments

Comments
 (0)