gentoo-ebuilds/x11-misc/dunst/dunst-9999.ebuild
Anna (navi) Figueiredo Gomes 64a9d993d4
x11-misc/dunst: add user initd
Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
Closes: https://github.com/gentoo/gentoo/pull/40798
Signed-off-by: Sam James <sam@gentoo.org>
2025-02-28 12:07:13 +00:00

90 lines
1.8 KiB
Bash

# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit git-r3 systemd toolchain-funcs
EGIT_REPO_URI="https://github.com/dunst-project/dunst"
DESCRIPTION="Lightweight replacement for common notification daemons"
HOMEPAGE="https://dunst-project.org/ https://github.com/dunst-project/dunst"
LICENSE="BSD"
SLOT="0"
IUSE="+completions +dunstify wayland +X +xdg"
DEPEND="
dev-libs/glib:2
sys-apps/dbus
x11-libs/cairo[X?,glib]
x11-libs/gdk-pixbuf:2
x11-libs/pango[X?]
dunstify? ( x11-libs/libnotify )
wayland? ( dev-libs/wayland )
X? (
x11-libs/libX11
x11-libs/libXext
x11-libs/libXScrnSaver
x11-libs/libXinerama
x11-libs/libXrandr
)
xdg? ( x11-misc/xdg-utils )
"
RDEPEND="${DEPEND}"
BDEPEND="
dev-lang/perl
virtual/pkgconfig
wayland? ( dev-libs/wayland-protocols )
"
REQUIRED_USE="|| ( wayland X )"
src_prepare() {
default
# Respect users CFLAGS
sed -e 's/-Os//' -i config.mk || die
# Use correct path for dbus and system unit
sed -e "s|##PREFIX##|${EPREFIX}/usr|" -i dunst.systemd.service.in || die
sed -e "s|##PREFIX##|${EPREFIX}/usr|" -i org.knopwob.dunst.service.in || die
}
src_configure() {
tc-export CC PKG_CONFIG
default
}
src_compile() {
local myemakeargs=(
DUNSTIFY="$(usex dunstify 1 0)"
SYSCONFDIR="${EPREFIX}/etc/xdg"
SYSTEMD="0"
WAYLAND="$(usex wayland 1 0)"
X11="$(usex X 1 0)"
)
emake "${myemakeargs[@]}"
}
src_install() {
local myemakeargs=(
COMPLETIONS="$(usex completions 1 0)"
DUNSTIFY="$(usex dunstify 1 0)"
PREFIX="${ED}/usr"
SYSCONFDIR="${ED}/etc/xdg"
SYSTEMD="0"
WAYLAND="$(usex wayland 1 0)"
X11="$(usex X 1 0)"
)
emake "${myemakeargs[@]}" install
exeinto /etc/user/init.d
newexe "${FILESDIR}/dunst.initd" dunst
systemd_newuserunit dunst.systemd.service.in dunst.service
}