Update to 23.360.11
This commit is contained in:
parent
e08eb228ae
commit
636c8aee18
1
.gitignore
vendored
1
.gitignore
vendored
@ -21,3 +21,4 @@ plymouth-0.8.4.tar.bz2
|
|||||||
/plymouth-22.02.122.tar.bz2
|
/plymouth-22.02.122.tar.bz2
|
||||||
/plymouth-23.356.9.tar.bz2
|
/plymouth-23.356.9.tar.bz2
|
||||||
/plymouth-23.358.4.tar.bz2
|
/plymouth-23.358.4.tar.bz2
|
||||||
|
/plymouth-23.360.11.tar.bz2
|
||||||
|
@ -1,98 +0,0 @@
|
|||||||
From 2fe900a4f3308e31f94efa286898fb511d2d46db Mon Sep 17 00:00:00 2001
|
|
||||||
From: Adam Williamson <awilliam@redhat.com>
|
|
||||||
Date: Mon, 25 Dec 2023 14:48:27 -0800
|
|
||||||
Subject: [PATCH] Fix checks for existence of vars set by fc-match
|
|
||||||
|
|
||||||
The first line here checked for the wrong variable and is a dupe
|
|
||||||
from two lines earlier anyway, and the second line isn't guarded
|
|
||||||
at all, which seems to cause the weird failure we've been seeing
|
|
||||||
in openQA testing.
|
|
||||||
|
|
||||||
Also add a couple more existence checks for the same variables
|
|
||||||
later.
|
|
||||||
|
|
||||||
Signed-off-by: Adam Williamson <awilliam@redhat.com>
|
|
||||||
---
|
|
||||||
scripts/plymouth-populate-initrd.in | 7 +++----
|
|
||||||
1 file changed, 3 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/scripts/plymouth-populate-initrd.in b/scripts/plymouth-populate-initrd.in
|
|
||||||
index 0c391523..20614a22 100755
|
|
||||||
--- a/scripts/plymouth-populate-initrd.in
|
|
||||||
+++ b/scripts/plymouth-populate-initrd.in
|
|
||||||
@@ -572,69 +572,68 @@ PLYMOUTH_MONOSPACE_FONT_PATH=""
|
|
||||||
PLYMOUTH_MONOSPACE_FONT=$(grep "\bMonospaceFont *= *" ${PLYMOUTH_SYSROOT}${PLYMOUTH_THEME_DIR}/${PLYMOUTH_THEME_NAME}.plymouth | sed 's/MonospaceFont *= *//' | head -1)
|
|
||||||
if [ ! -z "$PLYMOUTH_MONOSPACE_FONT" ]; then
|
|
||||||
PLYMOUTH_MONOSPACE_FONT_PATH=$(fc-match -f %{file} "$PLYMOUTH_MONOSPACE_FONT" 2> /dev/null)
|
|
||||||
if [ ! -z "$PLYMOUTH_MONOSPACE_FONT_PATH" ]; then
|
|
||||||
inst "$PLYMOUTH_MONOSPACE_FONT_PATH" $INITRDDIR
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
if [ ! -f ${PLYMOUTH_SYSROOT}${PLYMOUTH_PLUGIN_PATH}/${PLYMOUTH_MODULE_NAME}.so ]; then
|
|
||||||
echo "The default plymouth plugin (${PLYMOUTH_MODULE_NAME}) doesn't exist" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
inst ${PLYMOUTH_PLUGIN_PATH}/${PLYMOUTH_MODULE_NAME}.so $INITRDDIR
|
|
||||||
|
|
||||||
[ -f "${PLYMOUTH_SYSROOT}${PLYMOUTH_PLUGIN_PATH}/renderers/drm.so" ] && inst ${PLYMOUTH_PLUGIN_PATH}/renderers/drm.so $INITRDDIR
|
|
||||||
inst ${PLYMOUTH_PLUGIN_PATH}/renderers/frame-buffer.so $INITRDDIR
|
|
||||||
|
|
||||||
if [ -d "${PLYMOUTH_SYSROOT}${PLYMOUTH_THEME_DIR}" ]; then
|
|
||||||
inst_recur "${PLYMOUTH_THEME_DIR}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "${PLYMOUTH_IMAGE_DIR}" != "${PLYMOUTH_THEME_DIR}" -a -d "${PLYMOUTH_SYSROOT}${PLYMOUTH_IMAGE_DIR}" ]; then
|
|
||||||
inst_recur "${PLYMOUTH_IMAGE_DIR}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
DEFAULT_FONT=$(fc-match -f %{file} 2> /dev/null)
|
|
||||||
[ ! -z "$DEFAULT_FONT" ] && inst "$DEFAULT_FONT" $INITRDDIR
|
|
||||||
DEFAULT_MONOSPACE_FONT=$(fc-match -f %{file} monospace 2> /dev/null)
|
|
||||||
-[ ! -z "$DEFAULT_MONOSPACE_FONT" ] && inst "$DEFAULT_FONT" $INITRDDIR
|
|
||||||
-inst "$DEFAULT_MONOSPACE_FONT" $INITRDDIR
|
|
||||||
+[ ! -z "$DEFAULT_MONOSPACE_FONT" ] && inst "$DEFAULT_MONOSPACE_FONT" $INITRDDIR
|
|
||||||
|
|
||||||
if [ -f "${PLYMOUTH_PLUGIN_PATH}/label-freetype.so" ]; then
|
|
||||||
inst ${PLYMOUTH_PLUGIN_PATH}/label-freetype.so $INITRDDIR
|
|
||||||
# The label-freetype plugin expects it at this location
|
|
||||||
mkdir -p $INITRDDIR/usr/share/fonts
|
|
||||||
- ln -s "$DEFAULT_FONT" $INITRDDIR/usr/share/fonts/Plymouth.ttf
|
|
||||||
- ln -s "$DEFAULT_MONOSPACE_FONT" $INITRDDIR/usr/share/fonts/Plymouth-monospace.ttf
|
|
||||||
+ [ ! -z "$DEFAULT_FONT" ] && ln -s "$DEFAULT_FONT" $INITRDDIR/usr/share/fonts/Plymouth.ttf
|
|
||||||
+ [ ! -z "$DEFAULT_MONOSPACE_FONT" ] && ln -s "$DEFAULT_MONOSPACE_FONT" $INITRDDIR/usr/share/fonts/Plymouth-monospace.ttf
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -L ${PLYMOUTH_SYSROOT}${PLYMOUTH_DATADIR}/plymouth/themes/default.plymouth ]; then
|
|
||||||
cp -a ${PLYMOUTH_SYSROOT}${PLYMOUTH_DATADIR}/plymouth/themes/default.plymouth $INITRDDIR${PLYMOUTH_DATADIR}/plymouth/themes
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -n "$SYSTEMD_UNIT_DIR" -a -d "${PLYMOUTH_SYSROOT}$SYSTEMD_UNIT_DIR" ]; then
|
|
||||||
inst $SYSTEMD_UNIT_DIR/systemd-ask-password-plymouth.path $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/systemd-ask-password-plymouth.service $INITRDDIR
|
|
||||||
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-switch-root.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-start.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-quit.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-quit-wait.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-reboot.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-kexec.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-poweroff.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-halt.service $INITRDDIR
|
|
||||||
|
|
||||||
inst $SYSTEMD_UNIT_DIR/initrd-switch-root.target.wants/plymouth-switch-root.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/initrd-switch-root.target.wants/plymouth-start.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/sysinit.target.wants/plymouth-start.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/multi-user.target.wants/plymouth-quit.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/multi-user.target.wants/plymouth-quit-wait.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/reboot.target.wants/plymouth-reboot.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/kexec.target.wants/plymouth-kexec.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/poweroff.target.wants/plymouth-poweroff.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/halt.target.wants/plymouth-halt.service $INITRDDIR
|
|
||||||
fi
|
|
||||||
|
|
||||||
--
|
|
||||||
2.43.0
|
|
||||||
|
|
@ -1,76 +0,0 @@
|
|||||||
From 1de4e487fb7457871301a898cae724531bd0233d Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Ball=C3=B3=20Gy=C3=B6rgy?= <ballogyor@gmail.com>
|
|
||||||
Date: Mon, 25 Dec 2023 13:29:25 +0000
|
|
||||||
Subject: [PATCH] meson: Fix PLY_ENABLE_SYSTEMD_INTEGRATION define
|
|
||||||
|
|
||||||
---
|
|
||||||
meson.build | 1 +
|
|
||||||
1 file changed, 1 insertion(+)
|
|
||||||
|
|
||||||
diff --git a/meson.build b/meson.build
|
|
||||||
index 522abb8d..26789060 100644
|
|
||||||
--- a/meson.build
|
|
||||||
+++ b/meson.build
|
|
||||||
@@ -46,58 +46,59 @@ if get_option('systemd-integration')
|
|
||||||
)
|
|
||||||
systemd_ask_password_agent = find_program('systemd-tty-ask-password-agent')
|
|
||||||
endif
|
|
||||||
|
|
||||||
if get_option('upstart-monitoring')
|
|
||||||
dbus_dep = dependency('dbus-1')
|
|
||||||
curses_dep = dependency('curses')
|
|
||||||
endif
|
|
||||||
|
|
||||||
# Logo
|
|
||||||
plymouth_logo_file = get_option('logo')
|
|
||||||
use_fallback_logo = plymouth_logo_file == ''
|
|
||||||
if use_fallback_logo
|
|
||||||
plymouth_logo_file = get_option('prefix') / get_option('datadir') / 'plymouth' / 'bizcom.png'
|
|
||||||
endif
|
|
||||||
|
|
||||||
# Global C flags
|
|
||||||
add_project_arguments([
|
|
||||||
'-D_GNU_SOURCE',
|
|
||||||
'-include', 'config.h',
|
|
||||||
],
|
|
||||||
language: 'c'
|
|
||||||
)
|
|
||||||
|
|
||||||
# config.h
|
|
||||||
conf = configuration_data()
|
|
||||||
conf.set_quoted('BOOT_TTY', get_option('boot-tty'))
|
|
||||||
conf.set_quoted('SHUTDOWN_TTY', get_option('shutdown-tty'))
|
|
||||||
conf.set_quoted('RELEASE_FILE', get_option('release-file'))
|
|
||||||
conf.set('HAVE_UDEV', libudev_dep.found())
|
|
||||||
+conf.set('PLY_ENABLE_SYSTEMD_INTEGRATION', get_option('systemd-integration'))
|
|
||||||
conf.set('PLY_ENABLE_TRACING', get_option('tracing'))
|
|
||||||
conf.set_quoted('PLYMOUTH_RUNTIME_DIR', plymouth_runtime_dir)
|
|
||||||
conf.set_quoted('PLYMOUTH_THEME_PATH', plymouth_theme_path)
|
|
||||||
conf.set_quoted('PLYMOUTH_RUNTIME_THEME_PATH', plymouth_runtime_theme_path)
|
|
||||||
conf.set_quoted('PLYMOUTH_PLUGIN_PATH', plymouth_plugin_path)
|
|
||||||
conf.set_quoted('PLYMOUTH_POLICY_DIR', plymouth_policy_dir)
|
|
||||||
conf.set_quoted('PLYMOUTH_CONF_DIR', plymouth_conf_dir)
|
|
||||||
conf.set_quoted('PLYMOUTH_TIME_DIRECTORY', plymouth_time_dir)
|
|
||||||
conf.set('HAVE_NCURSESW_TERM_H', get_option('upstart-monitoring')? cc.has_header('ncursesw/term.h') : false)
|
|
||||||
conf.set('HAVE_NCURSES_TERM_H', get_option('upstart-monitoring')? cc.has_header('ncurses/term.h') : false)
|
|
||||||
config_file = configure_file(
|
|
||||||
output: 'config.h',
|
|
||||||
configuration: conf,
|
|
||||||
)
|
|
||||||
config_h_inc = include_directories('.')
|
|
||||||
|
|
||||||
# Subdirectories
|
|
||||||
subdir('images')
|
|
||||||
subdir('po')
|
|
||||||
subdir('src')
|
|
||||||
subdir('themes')
|
|
||||||
subdir('scripts')
|
|
||||||
if get_option('systemd-integration')
|
|
||||||
subdir('systemd-units')
|
|
||||||
endif
|
|
||||||
if get_option('docs')
|
|
||||||
subdir('docs')
|
|
||||||
endif
|
|
||||||
--
|
|
||||||
2.43.0
|
|
||||||
|
|
@ -1,150 +0,0 @@
|
|||||||
From 2b18218ef6b5fe33b64a418d9596924acd62b093 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Ray Strode <rstrode@redhat.com>
|
|
||||||
Date: Mon, 25 Dec 2023 20:20:31 -0500
|
|
||||||
Subject: [PATCH] ply-device-manager: Fall back to text plugin if no renderers
|
|
||||||
installed
|
|
||||||
|
|
||||||
If there's no renderers installed there's no point in continuing to
|
|
||||||
listen for DRM events and trying to load the drm plugin.
|
|
||||||
|
|
||||||
This commit just forces text mode right away in that case.
|
|
||||||
---
|
|
||||||
src/libply-splash-core/ply-device-manager.c | 7 +++++++
|
|
||||||
1 file changed, 7 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/src/libply-splash-core/ply-device-manager.c b/src/libply-splash-core/ply-device-manager.c
|
|
||||||
index 99433345..d65d9dd6 100644
|
|
||||||
--- a/src/libply-splash-core/ply-device-manager.c
|
|
||||||
+++ b/src/libply-splash-core/ply-device-manager.c
|
|
||||||
@@ -25,60 +25,61 @@
|
|
||||||
#include <stdbool.h>
|
|
||||||
#include <stdlib.h>
|
|
||||||
#include <stdio.h>
|
|
||||||
#include <string.h>
|
|
||||||
#include <sys/inotify.h>
|
|
||||||
#include <sys/stat.h>
|
|
||||||
#include <sys/types.h>
|
|
||||||
|
|
||||||
#ifdef HAVE_UDEV
|
|
||||||
#include <libudev.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <xkbcommon/xkbcommon.h>
|
|
||||||
|
|
||||||
#include "ply-logger.h"
|
|
||||||
#include "ply-event-loop.h"
|
|
||||||
#include "ply-hashtable.h"
|
|
||||||
#include "ply-list.h"
|
|
||||||
#include "ply-key-file.h"
|
|
||||||
#include "ply-utils.h"
|
|
||||||
#include "ply-input-device.h"
|
|
||||||
|
|
||||||
#define SUBSYSTEM_DRM "drm"
|
|
||||||
#define SUBSYSTEM_FRAME_BUFFER "graphics"
|
|
||||||
#define SUBSYSTEM_INPUT "input"
|
|
||||||
|
|
||||||
#ifdef HAVE_UDEV
|
|
||||||
static void create_devices_from_udev (ply_device_manager_t *manager);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
+static void create_non_graphical_devices (ply_device_manager_t *manager);
|
|
||||||
static bool create_devices_for_terminal_and_renderer_type (ply_device_manager_t *manager,
|
|
||||||
const char *device_path,
|
|
||||||
ply_terminal_t *terminal,
|
|
||||||
ply_renderer_type_t renderer_type);
|
|
||||||
static void create_pixel_displays_for_renderer (ply_device_manager_t *manager,
|
|
||||||
ply_renderer_t *renderer);
|
|
||||||
|
|
||||||
struct _ply_device_manager
|
|
||||||
{
|
|
||||||
ply_device_manager_flags_t flags;
|
|
||||||
ply_event_loop_t *loop;
|
|
||||||
ply_hashtable_t *terminals;
|
|
||||||
ply_hashtable_t *renderers;
|
|
||||||
ply_hashtable_t *input_devices;
|
|
||||||
ply_terminal_t *local_console_terminal;
|
|
||||||
const char *keymap;
|
|
||||||
ply_list_t *keyboards;
|
|
||||||
ply_list_t *text_displays;
|
|
||||||
ply_list_t *pixel_displays;
|
|
||||||
struct udev *udev_context;
|
|
||||||
struct udev_monitor *udev_monitor;
|
|
||||||
ply_fd_watch_t *fd_watch;
|
|
||||||
|
|
||||||
struct xkb_context *xkb_context;
|
|
||||||
struct xkb_keymap *xkb_keymap;
|
|
||||||
|
|
||||||
ply_keyboard_added_handler_t keyboard_added_handler;
|
|
||||||
ply_keyboard_removed_handler_t keyboard_removed_handler;
|
|
||||||
ply_pixel_display_added_handler_t pixel_display_added_handler;
|
|
||||||
ply_pixel_display_removed_handler_t pixel_display_removed_handler;
|
|
||||||
@@ -1070,60 +1071,66 @@ create_text_displays_for_terminal (ply_device_manager_t *manager,
|
|
||||||
|
|
||||||
if (manager->text_display_added_handler != NULL)
|
|
||||||
manager->text_display_added_handler (manager->event_handler_data, display);
|
|
||||||
}
|
|
||||||
|
|
||||||
static bool
|
|
||||||
create_devices_for_terminal_and_renderer_type (ply_device_manager_t *manager,
|
|
||||||
const char *device_path,
|
|
||||||
ply_terminal_t *terminal,
|
|
||||||
ply_renderer_type_t renderer_type)
|
|
||||||
{
|
|
||||||
ply_renderer_t *renderer = NULL;
|
|
||||||
ply_keyboard_t *keyboard = NULL;
|
|
||||||
|
|
||||||
if (device_path != NULL)
|
|
||||||
renderer = ply_hashtable_lookup (manager->renderers, (void *) device_path);
|
|
||||||
|
|
||||||
if (renderer != NULL) {
|
|
||||||
ply_trace ("ignoring device %s since it's already managed", device_path);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
ply_trace ("creating devices for %s (renderer type: %u) (terminal: %s)",
|
|
||||||
device_path ? : "", renderer_type, terminal ? ply_terminal_get_name (terminal) : "none");
|
|
||||||
|
|
||||||
if (renderer_type != PLY_RENDERER_TYPE_NONE) {
|
|
||||||
ply_renderer_t *old_renderer = NULL;
|
|
||||||
renderer = ply_renderer_new (renderer_type, device_path, terminal);
|
|
||||||
|
|
||||||
if (renderer != NULL && !ply_renderer_open (renderer)) {
|
|
||||||
+ if (errno == ENOENT) {
|
|
||||||
+ ply_trace ("No renderers available creating non-graphical devices");
|
|
||||||
+ create_non_graphical_devices (manager);
|
|
||||||
+ manager->device_timeout_elapsed = true;
|
|
||||||
+ return false;
|
|
||||||
+ }
|
|
||||||
ply_trace ("could not open renderer for %s", device_path);
|
|
||||||
ply_renderer_free (renderer);
|
|
||||||
renderer = NULL;
|
|
||||||
|
|
||||||
if (renderer_type != PLY_RENDERER_TYPE_AUTO)
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (renderer != NULL) {
|
|
||||||
old_renderer = ply_hashtable_lookup (manager->renderers,
|
|
||||||
(void *) ply_renderer_get_device_name (renderer));
|
|
||||||
|
|
||||||
if (old_renderer != NULL) {
|
|
||||||
ply_trace ("ignoring device %s since it's already managed",
|
|
||||||
ply_renderer_get_device_name (renderer));
|
|
||||||
ply_renderer_free (renderer);
|
|
||||||
|
|
||||||
renderer = NULL;
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
add_input_devices_to_renderer (manager, renderer);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (renderer != NULL) {
|
|
||||||
keyboard = ply_keyboard_new_for_renderer (renderer);
|
|
||||||
ply_list_append_data (manager->keyboards, keyboard);
|
|
||||||
|
|
||||||
if (manager->keyboard_added_handler != NULL)
|
|
||||||
--
|
|
||||||
2.43.0
|
|
||||||
|
|
@ -1,83 +0,0 @@
|
|||||||
From 2f89dc90609dcbe9f500c41ea2bbfc83a7e4922e Mon Sep 17 00:00:00 2001
|
|
||||||
From: Ray Strode <rstrode@redhat.com>
|
|
||||||
Date: Mon, 25 Dec 2023 11:07:47 -0500
|
|
||||||
Subject: [PATCH] plymouth-populate-initrd: Fix usage message
|
|
||||||
|
|
||||||
It currently says the scripts name is `plymouth` not
|
|
||||||
`plymouth-populate-initrd`.
|
|
||||||
|
|
||||||
This commit changes it to use $0
|
|
||||||
---
|
|
||||||
scripts/plymouth-populate-initrd.in | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/scripts/plymouth-populate-initrd.in b/scripts/plymouth-populate-initrd.in
|
|
||||||
index 1c29e4c7..8ccac22c 100755
|
|
||||||
--- a/scripts/plymouth-populate-initrd.in
|
|
||||||
+++ b/scripts/plymouth-populate-initrd.in
|
|
||||||
@@ -397,61 +397,61 @@ function read_setting_from_file()
|
|
||||||
# $1: Configuration file
|
|
||||||
function set_configured_theme_path_from_file()
|
|
||||||
{
|
|
||||||
CONFIGURED_THEME_DIR=$(read_setting_from_file "$1" "ThemeDir")
|
|
||||||
CONFIGURED_THEME_NAME=$(read_setting_from_file "$1" "Theme")
|
|
||||||
}
|
|
||||||
|
|
||||||
function set_theme_dir()
|
|
||||||
{
|
|
||||||
set_configured_theme_path_from_file ${PLYMOUTH_CONFDIR}/plymouthd.conf
|
|
||||||
if [ -z "$CONFIGURED_THEME_DIR" ] || [ ! -d "$CONFIGURED_THEME_DIR/$CONFIGURED_THEME_NAME" ]; then
|
|
||||||
set_configured_theme_path_from_file ${PLYMOUTH_POLICYDIR}/plymouthd.defaults
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -n "$CONFIGURED_THEME_DIR" ] && [ -d "$CONFIGURED_THEME_DIR/$CONFIGURED_THEME_NAME" ]; then
|
|
||||||
PLYMOUTH_THEME_NAME=$CONFIGURED_THEME_NAME
|
|
||||||
PLYMOUTH_THEME_DIR=$CONFIGURED_THEME_DIR/$CONFIGURED_THEME_NAME
|
|
||||||
else
|
|
||||||
PLYMOUTH_THEME_DIR=$PLYMOUTH_DATADIR/plymouth/themes/$PLYMOUTH_THEME_NAME
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
function usage() {
|
|
||||||
local output="/proc/self/fd/1"
|
|
||||||
local rc=0
|
|
||||||
if [ "$1" == "error" ]; then
|
|
||||||
output="/proc/self/fd/2"
|
|
||||||
rc=1
|
|
||||||
fi
|
|
||||||
|
|
||||||
- echo "usage: plymouth [ --verbose | -v ] { --targetdir | -t } <initrd_directory> { --x11-directory | -x } <x11_directory>" > $output
|
|
||||||
+ echo "usage: $0 [ --verbose | -v ] { --targetdir | -t } <initrd_directory> { --x11-directory | -x } <x11_directory>" > $output
|
|
||||||
exit $rc
|
|
||||||
}
|
|
||||||
|
|
||||||
verbose=false
|
|
||||||
INITRDDIR=""
|
|
||||||
X11_DIRECTORY="/usr/share/X11"
|
|
||||||
while [ $# -gt 0 ]; do
|
|
||||||
case $1 in
|
|
||||||
--verbose|-v)
|
|
||||||
verbose=true
|
|
||||||
;;
|
|
||||||
--targetdir|-t)
|
|
||||||
shift
|
|
||||||
INITRDDIR="$1"
|
|
||||||
;;
|
|
||||||
--help|-h)
|
|
||||||
usage normal
|
|
||||||
;;
|
|
||||||
--x11-directory|-x)
|
|
||||||
shift
|
|
||||||
X11_DIRECTORY="$1"
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
usage error
|
|
||||||
break
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
shift
|
|
||||||
done
|
|
||||||
|
|
||||||
--
|
|
||||||
2.43.0
|
|
||||||
|
|
@ -1,249 +0,0 @@
|
|||||||
From 97a19552f39491e1cade1011fa96120710935f06 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Ray Strode <rstrode@redhat.com>
|
|
||||||
Date: Mon, 25 Dec 2023 14:42:53 -0500
|
|
||||||
Subject: [PATCH] plymouth-populate-initrd: Handle xkb and fontconfig not being
|
|
||||||
installed
|
|
||||||
|
|
||||||
Some minimal installs won't have fontconfig or xkb. In those cases,
|
|
||||||
the script should continue to work even if the initramfs will be
|
|
||||||
less featureful.
|
|
||||||
|
|
||||||
This commit fixes that.
|
|
||||||
---
|
|
||||||
scripts/plymouth-populate-initrd.in | 99 +++++++++++++++--------------
|
|
||||||
1 file changed, 51 insertions(+), 48 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/scripts/plymouth-populate-initrd.in b/scripts/plymouth-populate-initrd.in
|
|
||||||
index 8ccac22c..a7919ded 100755
|
|
||||||
--- a/scripts/plymouth-populate-initrd.in
|
|
||||||
+++ b/scripts/plymouth-populate-initrd.in
|
|
||||||
@@ -448,103 +448,105 @@ while [ $# -gt 0 ]; do
|
|
||||||
X11_DIRECTORY="$1"
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
usage error
|
|
||||||
break
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
shift
|
|
||||||
done
|
|
||||||
|
|
||||||
[ -z "$INITRDDIR" ] && usage error
|
|
||||||
|
|
||||||
ddebug "Running with PLYMOUTH_SYSROOT=$PLYMOUTH_SYSROOT"
|
|
||||||
ddebug "Running with PLYMOUTH_LDD=$PLYMOUTH_LDD"
|
|
||||||
ddebug "Running with PLYMOUTH_LDD_PATH=$PLYMOUTH_LDD_PATH"
|
|
||||||
|
|
||||||
mkdir -p ${INITRDDIR}${PLYMOUTH_DATADIR}/plymouth/themes
|
|
||||||
inst ${PLYMOUTH_DAEMON_PATH} $INITRDDIR
|
|
||||||
inst ${PLYMOUTH_CLIENT_PATH} $INITRDDIR
|
|
||||||
inst ${PLYMOUTH_DRM_ESCROW_PATH} $INITRDDIR
|
|
||||||
inst ${PLYMOUTH_DATADIR}/plymouth/themes/text/text.plymouth $INITRDDIR
|
|
||||||
inst ${PLYMOUTH_PLUGIN_PATH}/text.so $INITRDDIR
|
|
||||||
inst ${PLYMOUTH_DATADIR}/plymouth/themes/details/details.plymouth $INITRDDIR
|
|
||||||
inst ${PLYMOUTH_PLUGIN_PATH}/details.so $INITRDDIR
|
|
||||||
inst ${PLYMOUTH_LOGO_FILE} $INITRDDIR
|
|
||||||
inst @RELEASE_FILE@ $INITRDDIR
|
|
||||||
inst ${PLYMOUTH_POLICYDIR}/plymouthd.defaults $INITRDDIR
|
|
||||||
inst ${PLYMOUTH_CONFDIR}/plymouthd.conf $INITRDDIR
|
|
||||||
|
|
||||||
# Install xkb info
|
|
||||||
-mkdir -p "${INITRDDIR}/${X11_DIRECTORY}/xkb/"
|
|
||||||
-mkdir -p "${INITRDDIR}/${X11_DIRECTORY}/xkb/compat/"
|
|
||||||
-
|
|
||||||
-mkdir -p "${INITRDDIR}/${X11_DIRECTORY}/xkb/keycodes/"
|
|
||||||
-mkdir -p "${INITRDDIR}/${X11_DIRECTORY}/xkb/rules/"
|
|
||||||
-mkdir -p "${INITRDDIR}/${X11_DIRECTORY}/xkb/symbols/"
|
|
||||||
-mkdir -p "${INITRDDIR}/${X11_DIRECTORY}/xkb/types/"
|
|
||||||
-mkdir -p "${INITRDDIR}/${X11_DIRECTORY}/locale/"
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/compat/accessx $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/compat/basic $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/compat/caps $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/compat/complete $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/compat/iso9995 $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/compat/ledcaps $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/compat/lednum $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/compat/ledscroll $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/compat/level5 $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/compat/misc $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/compat/mousekeys $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/compat/xfree86 $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/keycodes/aliases $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/keycodes/evdev $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/rules/evdev $INITRDDIR
|
|
||||||
-find ${X11_DIRECTORY}/xkb/symbols -maxdepth 1 ! -type d | while read file; do
|
|
||||||
- inst $file $INITRDDIR
|
|
||||||
-done
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/types/basic $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/types/complete $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/types/extra $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/types/iso9995 $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/types/level5 $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/types/mousekeys $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/types/numpad $INITRDDIR
|
|
||||||
-inst ${X11_DIRECTORY}/xkb/types/pc $INITRDDIR
|
|
||||||
-
|
|
||||||
-# In the off chance the user uses their compose key when
|
|
||||||
-# typing their password, install compose sequences
|
|
||||||
-inst ${X11_DIRECTORY}/locale/compose.dir $INITRDDIR
|
|
||||||
-grep UTF-8/Compose: ${X11_DIRECTORY}/locale/compose.dir | awk -F: '{ print $1 }' | sort -u | xargs dirname | while read DIR; do
|
|
||||||
- find ${X11_DIRECTORY}/locale/$DIR -maxdepth 1 ! -type d | while read file; do
|
|
||||||
+if [ -d "${X11_DIRECTORY}" ]; then
|
|
||||||
+ mkdir -p "${INITRDDIR}/${X11_DIRECTORY}/xkb/"
|
|
||||||
+ mkdir -p "${INITRDDIR}/${X11_DIRECTORY}/xkb/compat/"
|
|
||||||
+
|
|
||||||
+ mkdir -p "${INITRDDIR}/${X11_DIRECTORY}/xkb/keycodes/"
|
|
||||||
+ mkdir -p "${INITRDDIR}/${X11_DIRECTORY}/xkb/rules/"
|
|
||||||
+ mkdir -p "${INITRDDIR}/${X11_DIRECTORY}/xkb/symbols/"
|
|
||||||
+ mkdir -p "${INITRDDIR}/${X11_DIRECTORY}/xkb/types/"
|
|
||||||
+ mkdir -p "${INITRDDIR}/${X11_DIRECTORY}/locale/"
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/compat/accessx $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/compat/basic $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/compat/caps $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/compat/complete $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/compat/iso9995 $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/compat/ledcaps $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/compat/lednum $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/compat/ledscroll $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/compat/level5 $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/compat/misc $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/compat/mousekeys $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/compat/xfree86 $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/keycodes/aliases $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/keycodes/evdev $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/rules/evdev $INITRDDIR
|
|
||||||
+ find ${X11_DIRECTORY}/xkb/symbols -maxdepth 1 ! -type d | while read file; do
|
|
||||||
inst $file $INITRDDIR
|
|
||||||
- done
|
|
||||||
-done
|
|
||||||
+ done
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/types/basic $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/types/complete $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/types/extra $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/types/iso9995 $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/types/level5 $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/types/mousekeys $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/types/numpad $INITRDDIR
|
|
||||||
+ inst ${X11_DIRECTORY}/xkb/types/pc $INITRDDIR
|
|
||||||
+
|
|
||||||
+ # In the off chance the user uses their compose key when
|
|
||||||
+ # typing their password, install compose sequences
|
|
||||||
+ inst ${X11_DIRECTORY}/locale/compose.dir $INITRDDIR
|
|
||||||
+ grep UTF-8/Compose: ${X11_DIRECTORY}/locale/compose.dir | awk -F: '{ print $1 }' | sort -u | xargs dirname | while read DIR; do
|
|
||||||
+ find ${X11_DIRECTORY}/locale/$DIR -maxdepth 1 ! -type d | while read file; do
|
|
||||||
+ inst $file $INITRDDIR
|
|
||||||
+ done
|
|
||||||
+ done
|
|
||||||
+fi
|
|
||||||
|
|
||||||
if [ -z "$PLYMOUTH_THEME_NAME" ]; then
|
|
||||||
echo "No default plymouth plugin is set" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
set_theme_dir
|
|
||||||
mkdir -p ${INITRDDIR}${PLYMOUTH_THEME_DIR}
|
|
||||||
|
|
||||||
if [ $THEME_OVERRIDE ]; then
|
|
||||||
conf=$INITRDDIR/${PLYMOUTH_CONFDIR}/plymouthd.conf
|
|
||||||
echo "modifying plymouthd.conf: Theme=$PLYMOUTH_THEME_NAME" >&2
|
|
||||||
# make sure the section and key exist so we can modify them
|
|
||||||
grep -q "^ *\[Daemon\]" $conf || echo "[Daemon]" >> $conf
|
|
||||||
grep -q "^ *Theme *=" $conf || echo "Theme=fade-in" >> $conf
|
|
||||||
sed -i "s/^ *Theme *=.*/# theme modified by plymouth-populate-initrd\nTheme=$PLYMOUTH_THEME_NAME/" $conf
|
|
||||||
if [ "$THEME_DIR_OVERRIDE" ]; then
|
|
||||||
echo "modifying plymouthd.conf: ThemeDir=$PLYMOUTH_CONFIGURED_DIR_PATH" >&2
|
|
||||||
grep -q "^ *ThemeDir *=" $conf || echo "ThemeDir=/some/path" >> $conf
|
|
||||||
sed -i "s@^ *ThemeDir *=.*@# theme dir modified by plymouth-populate-initrd\nThemeDir=$PLYMOUTH_CONFIGURED_DIR_PATH@" $conf
|
|
||||||
PLYMOUTH_THEME_DIR=${PLYMOUTH_CONFIGURED_DIR_PATH}
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
PLYMOUTH_MODULE_NAME=$(grep "ModuleName *= *" ${PLYMOUTH_SYSROOT}${PLYMOUTH_THEME_DIR}/${PLYMOUTH_THEME_NAME}.plymouth | sed 's/ModuleName *= *//')
|
|
||||||
PLYMOUTH_IMAGE_DIR=$(grep "ImageDir *= *" ${PLYMOUTH_SYSROOT}${PLYMOUTH_THEME_DIR}/${PLYMOUTH_THEME_NAME}.plymouth | sed 's/ImageDir *= *//')
|
|
||||||
|
|
||||||
|
|
||||||
PLYMOUTH_FONT_PATH=""
|
|
||||||
PLYMOUTH_FONT=$(grep "\bFont *= *" ${PLYMOUTH_SYSROOT}${PLYMOUTH_THEME_DIR}/${PLYMOUTH_THEME_NAME}.plymouth | sed 's/Font *= *//' | head -1)
|
|
||||||
@@ -565,71 +567,72 @@ if [ ! -z "$PLYMOUTH_TITLE_FONT" ]; then
|
|
||||||
fi
|
|
||||||
|
|
||||||
PLYMOUTH_MONOSPACE_FONT_PATH=""
|
|
||||||
PLYMOUTH_MONOSPACE_FONT=$(grep "\bMonospaceFont *= *" ${PLYMOUTH_SYSROOT}${PLYMOUTH_THEME_DIR}/${PLYMOUTH_THEME_NAME}.plymouth | sed 's/MonospaceFont *= *//' | head -1)
|
|
||||||
if [ ! -z "$PLYMOUTH_MONOSPACE_FONT" ]; then
|
|
||||||
PLYMOUTH_MONOSPACE_FONT_PATH=$(fc-match -f %{file} "$PLYMOUTH_MONOSPACE_FONT")
|
|
||||||
if [ ! -z "$PLYMOUTH_MONOSPACE_FONT_PATH" ]; then
|
|
||||||
inst "$PLYMOUTH_MONOSPACE_FONT_PATH" $INITRDDIR
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
if [ ! -f ${PLYMOUTH_SYSROOT}${PLYMOUTH_PLUGIN_PATH}/${PLYMOUTH_MODULE_NAME}.so ]; then
|
|
||||||
echo "The default plymouth plugin (${PLYMOUTH_MODULE_NAME}) doesn't exist" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
inst ${PLYMOUTH_PLUGIN_PATH}/${PLYMOUTH_MODULE_NAME}.so $INITRDDIR
|
|
||||||
|
|
||||||
[ -f "${PLYMOUTH_SYSROOT}${PLYMOUTH_PLUGIN_PATH}/renderers/drm.so" ] && inst ${PLYMOUTH_PLUGIN_PATH}/renderers/drm.so $INITRDDIR
|
|
||||||
inst ${PLYMOUTH_PLUGIN_PATH}/renderers/frame-buffer.so $INITRDDIR
|
|
||||||
|
|
||||||
if [ -d "${PLYMOUTH_SYSROOT}${PLYMOUTH_THEME_DIR}" ]; then
|
|
||||||
inst_recur "${PLYMOUTH_THEME_DIR}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "${PLYMOUTH_IMAGE_DIR}" != "${PLYMOUTH_THEME_DIR}" -a -d "${PLYMOUTH_SYSROOT}${PLYMOUTH_IMAGE_DIR}" ]; then
|
|
||||||
inst_recur "${PLYMOUTH_IMAGE_DIR}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
-DefaultFont=$(fc-match -f %{file})
|
|
||||||
-inst "$DefaultFont" $INITRDDIR
|
|
||||||
-DefaultMonospaceFont=$(fc-match -f %{file} monospace)
|
|
||||||
-inst "$DefaultMonospaceFont" $INITRDDIR
|
|
||||||
+DEFAULT_FONT=$(fc-match -f %{file})
|
|
||||||
+[ ! -z "$DEFAULT_FONT" ] && inst "$DEFAULT_FONT" $INITRDDIR
|
|
||||||
+DEFAULT_MONOSPACE_FONT=$(fc-match -f %{file} monospace)
|
|
||||||
+[ ! -z "$DEFAULT_MONOSPACE_FONT" ] && inst "$DEFAULT_FONT" $INITRDDIR
|
|
||||||
+inst "$DEFAULT_MONOSPACE_FONT" $INITRDDIR
|
|
||||||
|
|
||||||
if [ -f "${PLYMOUTH_PLUGIN_PATH}/label-freetype.so" ]; then
|
|
||||||
inst ${PLYMOUTH_PLUGIN_PATH}/label-freetype.so $INITRDDIR
|
|
||||||
# The label-freetype plugin expects it at this location
|
|
||||||
mkdir -p $INITRDDIR/usr/share/fonts
|
|
||||||
- ln -s "$DefaultFont" $INITRDDIR/usr/share/fonts/Plymouth.ttf
|
|
||||||
- ln -s "$DefaultMonospaceFont" $INITRDDIR/usr/share/fonts/Plymouth-monospace.ttf
|
|
||||||
+ ln -s "$DEFAULT_FONT" $INITRDDIR/usr/share/fonts/Plymouth.ttf
|
|
||||||
+ ln -s "$DEFAULT_MONOSPACE_FONT" $INITRDDIR/usr/share/fonts/Plymouth-monospace.ttf
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -L ${PLYMOUTH_SYSROOT}${PLYMOUTH_DATADIR}/plymouth/themes/default.plymouth ]; then
|
|
||||||
cp -a ${PLYMOUTH_SYSROOT}${PLYMOUTH_DATADIR}/plymouth/themes/default.plymouth $INITRDDIR${PLYMOUTH_DATADIR}/plymouth/themes
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -n "$SYSTEMD_UNIT_DIR" -a -d "${PLYMOUTH_SYSROOT}$SYSTEMD_UNIT_DIR" ]; then
|
|
||||||
inst $SYSTEMD_UNIT_DIR/systemd-ask-password-plymouth.path $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/systemd-ask-password-plymouth.service $INITRDDIR
|
|
||||||
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-switch-root.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-start.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-quit.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-quit-wait.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-reboot.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-kexec.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-poweroff.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-halt.service $INITRDDIR
|
|
||||||
|
|
||||||
inst $SYSTEMD_UNIT_DIR/initrd-switch-root.target.wants/plymouth-switch-root.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/initrd-switch-root.target.wants/plymouth-start.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/sysinit.target.wants/plymouth-start.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/multi-user.target.wants/plymouth-quit.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/multi-user.target.wants/plymouth-quit-wait.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/reboot.target.wants/plymouth-reboot.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/kexec.target.wants/plymouth-kexec.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/poweroff.target.wants/plymouth-poweroff.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/halt.target.wants/plymouth-halt.service $INITRDDIR
|
|
||||||
fi
|
|
||||||
|
|
||||||
--
|
|
||||||
2.43.0
|
|
||||||
|
|
@ -1,176 +0,0 @@
|
|||||||
From ac6c34b9f54c648cd01008a1460cb25d5b05bd8c Mon Sep 17 00:00:00 2001
|
|
||||||
From: Ray Strode <rstrode@redhat.com>
|
|
||||||
Date: Mon, 25 Dec 2023 15:24:29 -0500
|
|
||||||
Subject: [PATCH] plymouth-populate-initrd: More dependency softification
|
|
||||||
|
|
||||||
This commit makes lack of fc-match less noisy and makes
|
|
||||||
compose.dir from libX11 be optional as well.
|
|
||||||
---
|
|
||||||
scripts/plymouth-populate-initrd.in | 24 +++++++++++++-----------
|
|
||||||
1 file changed, 13 insertions(+), 11 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/scripts/plymouth-populate-initrd.in b/scripts/plymouth-populate-initrd.in
|
|
||||||
index a7919ded..0c391523 100755
|
|
||||||
--- a/scripts/plymouth-populate-initrd.in
|
|
||||||
+++ b/scripts/plymouth-populate-initrd.in
|
|
||||||
@@ -486,144 +486,146 @@ if [ -d "${X11_DIRECTORY}" ]; then
|
|
||||||
mkdir -p "${INITRDDIR}/${X11_DIRECTORY}/locale/"
|
|
||||||
inst ${X11_DIRECTORY}/xkb/compat/accessx $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/compat/basic $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/compat/caps $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/compat/complete $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/compat/iso9995 $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/compat/ledcaps $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/compat/lednum $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/compat/ledscroll $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/compat/level5 $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/compat/misc $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/compat/mousekeys $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/compat/xfree86 $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/keycodes/aliases $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/keycodes/evdev $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/rules/evdev $INITRDDIR
|
|
||||||
find ${X11_DIRECTORY}/xkb/symbols -maxdepth 1 ! -type d | while read file; do
|
|
||||||
inst $file $INITRDDIR
|
|
||||||
done
|
|
||||||
inst ${X11_DIRECTORY}/xkb/types/basic $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/types/complete $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/types/extra $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/types/iso9995 $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/types/level5 $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/types/mousekeys $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/types/numpad $INITRDDIR
|
|
||||||
inst ${X11_DIRECTORY}/xkb/types/pc $INITRDDIR
|
|
||||||
|
|
||||||
# In the off chance the user uses their compose key when
|
|
||||||
# typing their password, install compose sequences
|
|
||||||
- inst ${X11_DIRECTORY}/locale/compose.dir $INITRDDIR
|
|
||||||
- grep UTF-8/Compose: ${X11_DIRECTORY}/locale/compose.dir | awk -F: '{ print $1 }' | sort -u | xargs dirname | while read DIR; do
|
|
||||||
- find ${X11_DIRECTORY}/locale/$DIR -maxdepth 1 ! -type d | while read file; do
|
|
||||||
- inst $file $INITRDDIR
|
|
||||||
- done
|
|
||||||
- done
|
|
||||||
+ if [ -f "${X11_DIRECTORY}/locale/compose.dir" ]; then
|
|
||||||
+ inst ${X11_DIRECTORY}/locale/compose.dir $INITRDDIR
|
|
||||||
+ grep UTF-8/Compose: ${X11_DIRECTORY}/locale/compose.dir | awk -F: '{ print $1 }' | sort -u | xargs dirname | while read DIR; do
|
|
||||||
+ find ${X11_DIRECTORY}/locale/$DIR -maxdepth 1 ! -type d | while read file; do
|
|
||||||
+ inst $file $INITRDDIR
|
|
||||||
+ done
|
|
||||||
+ done
|
|
||||||
+ fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z "$PLYMOUTH_THEME_NAME" ]; then
|
|
||||||
echo "No default plymouth plugin is set" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
set_theme_dir
|
|
||||||
mkdir -p ${INITRDDIR}${PLYMOUTH_THEME_DIR}
|
|
||||||
|
|
||||||
if [ $THEME_OVERRIDE ]; then
|
|
||||||
conf=$INITRDDIR/${PLYMOUTH_CONFDIR}/plymouthd.conf
|
|
||||||
echo "modifying plymouthd.conf: Theme=$PLYMOUTH_THEME_NAME" >&2
|
|
||||||
# make sure the section and key exist so we can modify them
|
|
||||||
grep -q "^ *\[Daemon\]" $conf || echo "[Daemon]" >> $conf
|
|
||||||
grep -q "^ *Theme *=" $conf || echo "Theme=fade-in" >> $conf
|
|
||||||
sed -i "s/^ *Theme *=.*/# theme modified by plymouth-populate-initrd\nTheme=$PLYMOUTH_THEME_NAME/" $conf
|
|
||||||
if [ "$THEME_DIR_OVERRIDE" ]; then
|
|
||||||
echo "modifying plymouthd.conf: ThemeDir=$PLYMOUTH_CONFIGURED_DIR_PATH" >&2
|
|
||||||
grep -q "^ *ThemeDir *=" $conf || echo "ThemeDir=/some/path" >> $conf
|
|
||||||
sed -i "s@^ *ThemeDir *=.*@# theme dir modified by plymouth-populate-initrd\nThemeDir=$PLYMOUTH_CONFIGURED_DIR_PATH@" $conf
|
|
||||||
PLYMOUTH_THEME_DIR=${PLYMOUTH_CONFIGURED_DIR_PATH}
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
PLYMOUTH_MODULE_NAME=$(grep "ModuleName *= *" ${PLYMOUTH_SYSROOT}${PLYMOUTH_THEME_DIR}/${PLYMOUTH_THEME_NAME}.plymouth | sed 's/ModuleName *= *//')
|
|
||||||
PLYMOUTH_IMAGE_DIR=$(grep "ImageDir *= *" ${PLYMOUTH_SYSROOT}${PLYMOUTH_THEME_DIR}/${PLYMOUTH_THEME_NAME}.plymouth | sed 's/ImageDir *= *//')
|
|
||||||
|
|
||||||
|
|
||||||
PLYMOUTH_FONT_PATH=""
|
|
||||||
PLYMOUTH_FONT=$(grep "\bFont *= *" ${PLYMOUTH_SYSROOT}${PLYMOUTH_THEME_DIR}/${PLYMOUTH_THEME_NAME}.plymouth | sed 's/Font *= *//' | head -1)
|
|
||||||
if [ ! -z "$PLYMOUTH_FONT" ]; then
|
|
||||||
- PLYMOUTH_FONT_PATH=$(fc-match -f %{file} "$PLYMOUTH_FONT")
|
|
||||||
+ PLYMOUTH_FONT_PATH=$(fc-match -f %{file} "$PLYMOUTH_FONT" 2> /dev/null)
|
|
||||||
if [ ! -z "$PLYMOUTH_FONT_PATH" ]; then
|
|
||||||
inst "$PLYMOUTH_FONT_PATH" $INITRDDIR
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
PLYMOUTH_TITLE_FONT_PATH=""
|
|
||||||
PLYMOUTH_TITLE_FONT=$(grep "\bTitleFont *= *" ${PLYMOUTH_SYSROOT}${PLYMOUTH_THEME_DIR}/${PLYMOUTH_THEME_NAME}.plymouth | sed 's/TitleFont *= *//' | head -1)
|
|
||||||
if [ ! -z "$PLYMOUTH_TITLE_FONT" ]; then
|
|
||||||
- PLYMOUTH_TITLE_FONT_PATH=$(fc-match -f %{file} "$PLYMOUTH_TITLE_FONT")
|
|
||||||
+ PLYMOUTH_TITLE_FONT_PATH=$(fc-match -f %{file} "$PLYMOUTH_TITLE_FONT" 2> /dev/null)
|
|
||||||
if [ ! -z "$PLYMOUTH_TITLE_FONT_PATH" ]; then
|
|
||||||
inst "$PLYMOUTH_TITLE_FONT_PATH" $INITRDDIR
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
PLYMOUTH_MONOSPACE_FONT_PATH=""
|
|
||||||
PLYMOUTH_MONOSPACE_FONT=$(grep "\bMonospaceFont *= *" ${PLYMOUTH_SYSROOT}${PLYMOUTH_THEME_DIR}/${PLYMOUTH_THEME_NAME}.plymouth | sed 's/MonospaceFont *= *//' | head -1)
|
|
||||||
if [ ! -z "$PLYMOUTH_MONOSPACE_FONT" ]; then
|
|
||||||
- PLYMOUTH_MONOSPACE_FONT_PATH=$(fc-match -f %{file} "$PLYMOUTH_MONOSPACE_FONT")
|
|
||||||
+ PLYMOUTH_MONOSPACE_FONT_PATH=$(fc-match -f %{file} "$PLYMOUTH_MONOSPACE_FONT" 2> /dev/null)
|
|
||||||
if [ ! -z "$PLYMOUTH_MONOSPACE_FONT_PATH" ]; then
|
|
||||||
inst "$PLYMOUTH_MONOSPACE_FONT_PATH" $INITRDDIR
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
if [ ! -f ${PLYMOUTH_SYSROOT}${PLYMOUTH_PLUGIN_PATH}/${PLYMOUTH_MODULE_NAME}.so ]; then
|
|
||||||
echo "The default plymouth plugin (${PLYMOUTH_MODULE_NAME}) doesn't exist" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
inst ${PLYMOUTH_PLUGIN_PATH}/${PLYMOUTH_MODULE_NAME}.so $INITRDDIR
|
|
||||||
|
|
||||||
[ -f "${PLYMOUTH_SYSROOT}${PLYMOUTH_PLUGIN_PATH}/renderers/drm.so" ] && inst ${PLYMOUTH_PLUGIN_PATH}/renderers/drm.so $INITRDDIR
|
|
||||||
inst ${PLYMOUTH_PLUGIN_PATH}/renderers/frame-buffer.so $INITRDDIR
|
|
||||||
|
|
||||||
if [ -d "${PLYMOUTH_SYSROOT}${PLYMOUTH_THEME_DIR}" ]; then
|
|
||||||
inst_recur "${PLYMOUTH_THEME_DIR}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "${PLYMOUTH_IMAGE_DIR}" != "${PLYMOUTH_THEME_DIR}" -a -d "${PLYMOUTH_SYSROOT}${PLYMOUTH_IMAGE_DIR}" ]; then
|
|
||||||
inst_recur "${PLYMOUTH_IMAGE_DIR}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
-DEFAULT_FONT=$(fc-match -f %{file})
|
|
||||||
+DEFAULT_FONT=$(fc-match -f %{file} 2> /dev/null)
|
|
||||||
[ ! -z "$DEFAULT_FONT" ] && inst "$DEFAULT_FONT" $INITRDDIR
|
|
||||||
-DEFAULT_MONOSPACE_FONT=$(fc-match -f %{file} monospace)
|
|
||||||
+DEFAULT_MONOSPACE_FONT=$(fc-match -f %{file} monospace 2> /dev/null)
|
|
||||||
[ ! -z "$DEFAULT_MONOSPACE_FONT" ] && inst "$DEFAULT_FONT" $INITRDDIR
|
|
||||||
inst "$DEFAULT_MONOSPACE_FONT" $INITRDDIR
|
|
||||||
|
|
||||||
if [ -f "${PLYMOUTH_PLUGIN_PATH}/label-freetype.so" ]; then
|
|
||||||
inst ${PLYMOUTH_PLUGIN_PATH}/label-freetype.so $INITRDDIR
|
|
||||||
# The label-freetype plugin expects it at this location
|
|
||||||
mkdir -p $INITRDDIR/usr/share/fonts
|
|
||||||
ln -s "$DEFAULT_FONT" $INITRDDIR/usr/share/fonts/Plymouth.ttf
|
|
||||||
ln -s "$DEFAULT_MONOSPACE_FONT" $INITRDDIR/usr/share/fonts/Plymouth-monospace.ttf
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -L ${PLYMOUTH_SYSROOT}${PLYMOUTH_DATADIR}/plymouth/themes/default.plymouth ]; then
|
|
||||||
cp -a ${PLYMOUTH_SYSROOT}${PLYMOUTH_DATADIR}/plymouth/themes/default.plymouth $INITRDDIR${PLYMOUTH_DATADIR}/plymouth/themes
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -n "$SYSTEMD_UNIT_DIR" -a -d "${PLYMOUTH_SYSROOT}$SYSTEMD_UNIT_DIR" ]; then
|
|
||||||
inst $SYSTEMD_UNIT_DIR/systemd-ask-password-plymouth.path $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/systemd-ask-password-plymouth.service $INITRDDIR
|
|
||||||
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-switch-root.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-start.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-quit.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-quit-wait.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-reboot.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-kexec.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-poweroff.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/plymouth-halt.service $INITRDDIR
|
|
||||||
|
|
||||||
inst $SYSTEMD_UNIT_DIR/initrd-switch-root.target.wants/plymouth-switch-root.service $INITRDDIR
|
|
||||||
inst $SYSTEMD_UNIT_DIR/initrd-switch-root.target.wants/plymouth-start.service $INITRDDIR
|
|
||||||
--
|
|
||||||
2.43.0
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
|||||||
Summary: Graphical Boot Animation and Logger
|
Summary: Graphical Boot Animation and Logger
|
||||||
Name: plymouth
|
Name: plymouth
|
||||||
Version: 23.358.4
|
Version: 23.360.11
|
||||||
Release: %autorelease
|
Release: %autorelease
|
||||||
License: GPLv2+
|
License: GPLv2+
|
||||||
URL: http://www.freedesktop.org/wiki/Software/Plymouth
|
URL: http://www.freedesktop.org/wiki/Software/Plymouth
|
||||||
@ -8,13 +8,6 @@ URL: http://www.freedesktop.org/wiki/Software/Plymouth
|
|||||||
Source0: https://gitlab.freedesktop.org/plymouth/plymouth/-/archive/%{version}/%{name}-%{version}.tar.bz2
|
Source0: https://gitlab.freedesktop.org/plymouth/plymouth/-/archive/%{version}/%{name}-%{version}.tar.bz2
|
||||||
Source2: charge.plymouth
|
Source2: charge.plymouth
|
||||||
|
|
||||||
Patch: 0001-plymouth-populate-initrd-Fix-usage-message.patch
|
|
||||||
Patch: 0001-meson-Fix-PLY_ENABLE_SYSTEMD_INTEGRATION-define.patch
|
|
||||||
Patch: 0001-plymouth-populate-initrd-Handle-xkb-and-fontconfig-n.patch
|
|
||||||
Patch: 0001-plymouth-populate-initrd-More-dependency-softificati.patch
|
|
||||||
Patch: 0001-ply-device-manager-Fall-back-to-text-plugin-if-no-re.patch
|
|
||||||
Patch: 0001-Fix-checks-for-existence-of-vars-set-by-fc-match.patch
|
|
||||||
|
|
||||||
BuildRequires: meson
|
BuildRequires: meson
|
||||||
BuildRequires: fedora-logos
|
BuildRequires: fedora-logos
|
||||||
BuildRequires: gcc libtool git
|
BuildRequires: gcc libtool git
|
||||||
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
SHA512 (plymouth-23.358.4.tar.bz2) = eb92244f7fd341e6056008bf3a6ed46e4664749ec3f01e0caf0129b617f7e5bbb3e7c6d890911d1d84e421346b658e641fb6d96b6d4a39b702816ba43b669d35
|
SHA512 (plymouth-23.360.11.tar.bz2) = f599b1cf31be5aee44f0d5b19bb0550a99a1c819b6318bc6983e70aa69f416b047185df7c2feed11b778ec34623b1ff321667b2158538173464c92b494a9fd91
|
||||||
|
Loading…
Reference in New Issue
Block a user