mirror of
https://github.com/ostreedev/ostree.git
synced 2025-01-03 05:18:24 +03:00
Merge pull request #3300 from travier/main-static-config-null
bootloader/grub2: Handle empty static configs
This commit is contained in:
commit
558f260554
@ -30,6 +30,7 @@
|
||||
#define BOOTUPD_CONFIG "boot/bootupd-state.json"
|
||||
// Horrible hack, to avoid including a JSON parser we just grep for this
|
||||
#define BOOTUPD_CONFIG_STATIC_JSON_FRAGMENT "\"static-configs\""
|
||||
#define BOOTUPD_CONFIG_STATIC_JSON_FRAGMENT_NULL "\"static-configs\":null"
|
||||
|
||||
/* Maintain backwards compatibility with legacy GRUB
|
||||
* installations that might rely on the -16 suffix
|
||||
@ -90,9 +91,12 @@ _ostree_bootloader_grub2_query (OstreeBootloader *bootloader, gboolean *out_is_a
|
||||
return glnx_prefix_error (error, "Failed to read bootupd config");
|
||||
if (strstr (bootupd_config_contents, BOOTUPD_CONFIG_STATIC_JSON_FRAGMENT) != NULL)
|
||||
{
|
||||
g_debug ("Found static bootupd config");
|
||||
*out_is_active = FALSE;
|
||||
return TRUE;
|
||||
if (strstr (bootupd_config_contents, BOOTUPD_CONFIG_STATIC_JSON_FRAGMENT_NULL) == NULL)
|
||||
{
|
||||
g_debug ("Found static bootupd config");
|
||||
*out_is_active = FALSE;
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -10,7 +10,7 @@ bootupd_state=/boot/bootupd-state.json
|
||||
mount -o remount,rw /boot
|
||||
if grep -qFe "\"static-configs\"" "${bootupd_state}"; then
|
||||
echo "Host is using static configs already, overriding this"
|
||||
jq 'del(.["static-configs"])' < "${bootupd_state}" > "${bootupd_state}".new
|
||||
jq --compact-output '.["static-configs"] = null' < "${bootupd_state}" > "${bootupd_state}".new
|
||||
mv "${bootupd_state}.new" "${bootupd_state}"
|
||||
fi
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user