summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-boot/plymouth/plymouth-9999.ebuild')
-rw-r--r--sys-boot/plymouth/plymouth-9999.ebuild111
1 files changed, 61 insertions, 50 deletions
diff --git a/sys-boot/plymouth/plymouth-9999.ebuild b/sys-boot/plymouth/plymouth-9999.ebuild
index 80e29469a5bb..7e288731c8cb 100644
--- a/sys-boot/plymouth/plymouth-9999.ebuild
+++ b/sys-boot/plymouth/plymouth-9999.ebuild
@@ -1,9 +1,10 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
+
+inherit meson readme.gentoo-r1 flag-o-matic
-inherit flag-o-matic
SRC_URI="https://dev.gentoo.org/~aidecoe/distfiles/${CATEGORY}/${PN}/gentoo-logo.png"
if [[ ${PV} == 9999 ]]; then
@@ -11,39 +12,51 @@ if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://gitlab.freedesktop.org/plymouth/plymouth"
else
SRC_URI="${SRC_URI} https://www.freedesktop.org/software/plymouth/releases/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
fi
-inherit autotools readme.gentoo-r1 systemd
-
DESCRIPTION="Graphical boot animation (splash) and logger"
HOMEPAGE="https://gitlab.freedesktop.org/plymouth/plymouth"
-LICENSE="GPL-2"
+LICENSE="GPL-2+"
SLOT="0"
-IUSE="debug +drm +gtk +pango selinux +split-usr static-libs +udev"
+IUSE="debug +drm +gtk +pango selinux freetype +split-usr +udev doc systemd"
+
+BDEPEND="
+ virtual/pkgconfig
+ doc? (
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+ )
+"
-CDEPEND="
+COMMON_DEPEND="
+ dev-libs/libevdev
>=media-libs/libpng-1.2.16:=
+ x11-libs/libxkbcommon
+ x11-misc/xkeyboard-config
drm? ( x11-libs/libdrm )
+ freetype? ( media-libs/freetype:2 )
gtk? (
dev-libs/glib:2
- >=x11-libs/gtk+-3.14:3
x11-libs/cairo
+ >=x11-libs/gtk+-3.14:3[X]
)
- pango? ( >=x11-libs/pango-1.21 )
+ pango? (
+ x11-libs/cairo
+ >=x11-libs/pango-1.21
+ )
+ systemd? ( sys-apps/systemd )
+ udev? ( virtual/libudev )
"
-DEPEND="${CDEPEND}
+
+DEPEND="${COMMON_DEPEND}
elibc_musl? ( sys-libs/rpmatch-standalone )
- app-text/docbook-xsl-stylesheets
- dev-libs/libxslt
- virtual/pkgconfig
"
-# Block due bug #383067
-RDEPEND="${CDEPEND}
+
+RDEPEND="${COMMON_DEPEND}
selinux? ( sec-policy/selinux-plymouthd )
udev? ( virtual/udev )
- !<sys-kernel/dracut-0.37-r3
"
DOC_CONTENTS="
@@ -51,63 +64,61 @@ DOC_CONTENTS="
https://wiki.gentoo.org/wiki/Plymouth#Configuration
"
-PATCHES=(
- "${FILESDIR}"/0.9.3-glibc-sysmacros.patch
-)
-
src_prepare() {
use elibc_musl && append-ldflags -lrpmatch
default
- eautoreconf
}
src_configure() {
- local myconf=(
- --with-system-root-install=no
- --localstatedir=/var
- --without-rhgb-compat-link
- --enable-documentation
- --enable-systemd-integration
- --with-systemdunitdir="$(systemd_get_systemunitdir)"
- $(use_enable !static-libs shared)
- $(use_enable static-libs static)
- $(use_enable debug tracing)
- $(use_enable drm)
- $(use_enable gtk)
- $(use_enable pango)
- $(use_with udev)
+ local emesonargs=(
+ --localstatedir "${EPREFIX}"/var
+ $(meson_feature gtk)
+ $(meson_feature freetype)
+ $(meson_feature pango)
+ $(meson_feature udev)
+ $(meson_use drm)
+ $(meson_use systemd systemd-integration)
+ $(meson_use doc docs)
+ $(meson_use debug tracing)
)
- econf "${myconf[@]}"
+ meson_src_configure
}
src_install() {
- default
-
+ meson_src_install
insinto /usr/share/plymouth
+
newins "${DISTDIR}"/gentoo-logo.png bizcom.png
+ # fix broken symlink
+ dosym ../../bizcom.png /usr/share/plymouth/themes/spinfinity/header-image.png
- if use split-usr ; then
+ if use split-usr; then
# Install compatibility symlinks as some rdeps hardcode the paths
dosym ../usr/bin/plymouth /bin/plymouth
dosym ../usr/sbin/plymouth-set-default-theme /sbin/plymouth-set-default-theme
dosym ../usr/sbin/plymouthd /sbin/plymouthd
fi
- readme.gentoo_create_doc
-
- # looks like make install create /var/run/plymouth
- # this is not needed for systemd, same should hold for openrc
- # so remove
- rm -rf "${D}"/var/run
+ # the file /var/spool/plymouth/boot.log is linked to the boot log after
+ # booting when there are errors, there is no runtime check to create this
+ # directory (the file is directly linked using unistd `link`) meaning there
+ # may be missing logs or unexpected behaviour if it is not kept.
+ keepdir /var/spool/plymouth
+ # /var/lib/plymouth is created at runtime, and is used to store boot/shutdown
+ # durations, it doesn't need to be created at build.
+ rm -r "${ED}"/var/lib || die
+ # /run/plymouth is also created at runtime
+ rm -r "${ED}"/run || die
- # fix broken symlink
- dosym ../../bizcom.png /usr/share/plymouth/themes/spinfinity/header-image.png
+ readme.gentoo_create_doc
}
pkg_postinst() {
readme.gentoo_print_elog
if ! has_version "sys-kernel/dracut"; then
- ewarn "If you want initramfs builder with plymouth support, please emerge"
- ewarn "sys-kernel/dracut."
+ ewarn "dracut is not installed, if you wish to have an initramfs with"
+ ewarn "plymouth support, you can emerge 'sys-kernel/dracut' otherwise"
+ ewarn "you can look at the plymouth wiki for other methods:"
+ ewarn "https://wiki.gentoo.org/wiki/Plymouth#Building_Initramfs"
fi
}