drm:
- modules.d/50drm/*
-gensplash:
- - modules.d/50gensplash/*
-
plymouth:
- modules.d/50plymouth/*
+++ /dev/null
-dracut gensplash module
------------------------
-
-INDEX
-
-0. Introduction
-1. Hostonly vs Generic
-2. Configuration and kernel parameters
-
-~
-
-0. Introduction
-
-gensplash is based on Genkernel code and that's why it's Gentoo-specific. It
-requires splashutils to work. To set up theme you may edit /etc/conf.d/splash
-or set DRACUT_GENSPLASH_THEME and DRACUT_GENSPLASH_RES variables. Your theme
-has to exist in /etc/splash and for every given resolution has to exist config
-in theme's directory, e.g. there's 1024x768.cfg in /etc/splash/natural_gentoo.
-List of resolutions is comma-separated.
-
-NOTE: The module will be rewritten to be distro-neutral. Its name will change
-to fbsplash.
-
-
-1. Hostonly vs Generic
-
-All available themes are installed only if no --hostonly is specified and no
-DRACUT_GENSPLASH_THEME and DRACUT_GENSPLASH_RES are set. Otherwise those vars
-are checked and if not set then config /etc/conf.d/splash is read.
-
-
-2. Configuration and kernel parameters
-
-Example set up by environment variables:
- DRACUT_GENSPLASH_THEME=natural_gentoo
- DRACUT_GENSPLASH_RES=1024x768,1024x600
-
-Example kernel arguments:
- splash=silent,theme:natural_gentoo console=tty1 quiet
-
-You may easily set up the module using Genkernel with arguments:
- --gensplash=<theme>:<res1>,<res2>,...
+++ /dev/null
-#!/bin/sh
-
-# shellcheck disable=SC2034
-CDROOT=0
-. /lib/gensplash-lib.sh
-splash verbose
+++ /dev/null
-#!/bin/sh
-
-# shellcheck disable=SC2034
-CDROOT=0
-. /lib/gensplash-lib.sh
-splash set_msg 'Switching to new root'
+++ /dev/null
-#!/bin/sh
-
-if getargbool 1 rd.splash -d -n rd_NO_SPLASH; then
- info "Starting Gentoo Splash"
-
- [ -x /lib/udev/console_init ] && /lib/udev/console_init /dev/tty0
- # shellcheck disable=SC2034
- CDROOT=0
- . /lib/gensplash-lib.sh
- splash init
- [ -x /lib/udev/console_init ] && /lib/udev/console_init /dev/tty0
-fi
+++ /dev/null
-#!/bin/bash
-
-# called by dracut
-check() {
- # TODO: splash_geninitramfs
- # TODO: /usr/share/splashutils/initrd.splash
- return 255
-}
-
-# called by dracut
-depends() {
- return 0
-}
-
-# called by dracut
-install() {
- local _opts
- local _splash_theme
- local _splash_res
-
- call_splash_geninitramfs() {
- local _out _ret
-
- _out=$(splash_geninitramfs -c "$1" "${@:2}" 2>&1)
- _ret=$?
-
- if [[ ${_out} ]]; then
- local IFS='
-'
- for line in ${_out}; do
- if [[ ${line} =~ ^Warning ]]; then
- dwarn "${line}"
- else
- derror "${line}"
- ((_ret == 0)) && _ret=1
- fi
- done
- fi
-
- return ${_ret}
- }
-
- find_binary splash_geninitramfs > /dev/null || return 1
-
- _opts=''
- if [[ ${DRACUT_GENSPLASH_THEME} ]]; then
- # Variables from the environment
- # They're supposed to be set up by e.g. Genkernel in basis of cmdline args.
- # If user set them he/she would expect to be included only given theme
- # rather then all even if we're building generic initramfs.
- _splash_theme=${DRACUT_GENSPLASH_THEME}
- _splash_res=${DRACUT_GENSPLASH_RES}
- elif [[ ${hostonly} ]]; then
- # Settings from config only in hostonly
- # shellcheck disable=SC1090
- [[ -e $dracutsysrootdir/etc/conf.d/splash ]] && source "$dracutsysrootdir"/etc/conf.d/splash
- [[ ! ${_splash_theme} ]] && _splash_theme=default
- [[ ${_splash_res} ]] && _opts+=" -r ${_splash_res}"
- else
- # generic
- _splash_theme=--all
- fi
-
- dinfo "Installing Gentoo Splash (using the ${_splash_theme} theme)"
-
- pushd "${initdir}" > /dev/null || exit
- mv dev dev.old
- call_splash_geninitramfs "${initdir}" "${_opts}" ${_splash_theme} || {
- derror "Could not build splash"
- return 1
- }
- rm -rf dev
- mv dev.old dev
- popd > /dev/null || exit
-
- inst_multiple chvt
- inst /usr/share/splashutils/initrd.splash /lib/gensplash-lib.sh
- inst_hook pre-pivot 90 "${moddir}"/gensplash-newroot.sh
- inst_hook pre-trigger 10 "${moddir}"/gensplash-pretrigger.sh
- inst_hook emergency 50 "${moddir}"/gensplash-emergency.sh
-}
# we do not support mksh in the initramfs
rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/00mksh
-# remove gentoo specific modules
-rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/50gensplash
-
%if %{defined _unitdir}
# with systemd IMA and selinux modules do not make sense
rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/96securityfs