[grubcfg] fix inter-module dependency with plymouthcfg modules
The plymouthcfg Calamares module is optional. Distributions which
write filesystems with a full plymouth configuration won't even
want to use it (see plymouthcfg docs).
However, now grubcfg depends on plymouthcfg to run because
the globalstorage value to trigger setting 'splash' in grub,
is set in the plymouthcfg module.
Just check for plymouth existence separately in the grub module.
Fixes ea1c8a0e5d
This commit is contained in:
parent
db7edf719b
commit
0ccca6902b
@ -44,16 +44,21 @@ def modify_grub_default(partitions, root_mount_point, distributor):
|
||||
dracut_bin = libcalamares.utils.target_env_call(
|
||||
["sh", "-c", "which dracut"]
|
||||
)
|
||||
have_dracut = dracut_bin == 0 # Shell exit value 0 means success
|
||||
plymouth_bin = libcalamares.utils.target_env_call(
|
||||
["sh", "-c", "which plymouth"]
|
||||
)
|
||||
|
||||
# Shell exit value 0 means success
|
||||
have_plymouth = plymouth_bin == 0
|
||||
have_dracut = dracut_bin == 0
|
||||
|
||||
use_splash = ""
|
||||
swap_uuid = ""
|
||||
swap_outer_uuid = ""
|
||||
swap_outer_mappername = None
|
||||
|
||||
if libcalamares.globalstorage.contains("hasPlymouth"):
|
||||
if libcalamares.globalstorage.value("hasPlymouth"):
|
||||
use_splash = "splash"
|
||||
if have_plymouth:
|
||||
use_splash = "splash"
|
||||
|
||||
cryptdevice_params = []
|
||||
|
||||
|
@ -40,14 +40,9 @@ class PlymouthController:
|
||||
"/etc/plymouth/plymouthd.conf"])
|
||||
|
||||
def detect(self):
|
||||
isPlymouth = target_env_call(["which", "plymouth"])
|
||||
isPlymouth = target_env_call(["sh", "-c", "which plymouth"])
|
||||
debug("which plymouth exit code: {!s}".format(isPlymouth))
|
||||
|
||||
if isPlymouth == 0:
|
||||
libcalamares.globalstorage.insert("hasPlymouth", True)
|
||||
else:
|
||||
libcalamares.globalstorage.insert("hasPlymouth", False)
|
||||
|
||||
return isPlymouth
|
||||
|
||||
def run(self):
|
||||
|
Loading…
Reference in New Issue
Block a user