summaryrefslogtreecommitdiff
path: root/sys-apps
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps')
-rw-r--r--sys-apps/shepherd/Manifest1
-rw-r--r--sys-apps/shepherd/metadata.xml12
-rw-r--r--sys-apps/shepherd/shepherd-1.0.9.ebuild79
3 files changed, 92 insertions, 0 deletions
diff --git a/sys-apps/shepherd/Manifest b/sys-apps/shepherd/Manifest
new file mode 100644
index 0000000..bf52aff
--- /dev/null
+++ b/sys-apps/shepherd/Manifest
@@ -0,0 +1 @@
+DIST shepherd-1.0.9.tar.gz 891001 BLAKE2B e04ec2f69dd07f07e8afe9a428b39c48cd353e968d162d49ddae14b9986daa082a05f6e384c35f11c55d7535f64f88e145e0acfa049a36fa876bcab813952c84 SHA512 36819244f28e922b4adc267b99b270f4d93f8d33179fb9fa15241765faf0851e8231575b747a1bb7603315aea7ee27f3681e826f70a365b736fdf1505d41f790
diff --git a/sys-apps/shepherd/metadata.xml b/sys-apps/shepherd/metadata.xml
new file mode 100644
index 0000000..90d6952
--- /dev/null
+++ b/sys-apps/shepherd/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <upstream>
+ <remote-id type="savannah">shepherd</remote-id>
+ </upstream>
+ <longdescription>
+ GNU Shepherd is a service manager written in GNU Guile. It supervises
+ system services using dependency-based service definitions and can also
+ manage per-user services.
+ </longdescription>
+</pkgmetadata>
diff --git a/sys-apps/shepherd/shepherd-1.0.9.ebuild b/sys-apps/shepherd/shepherd-1.0.9.ebuild
new file mode 100644
index 0000000..3e07352
--- /dev/null
+++ b/sys-apps/shepherd/shepherd-1.0.9.ebuild
@@ -0,0 +1,79 @@
+EAPI=8
+
+DESCRIPTION="GNU service manager written in Guile"
+HOMEPAGE="https://www.gnu.org/software/shepherd/"
+SRC_URI="mirror://gnu/shepherd/${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+DEPEND="
+ dev-scheme/guile:3.0
+ >=dev-scheme/fibers-1.1.0
+"
+
+RDEPEND="
+ ${DEPEND}
+ app-arch/gzip
+ app-arch/zstd
+"
+
+BDEPEND="
+ app-text/texinfo
+ dev-util/help2man
+ sys-devel/gettext
+"
+
+src_configure() {
+ econf \
+ --with-gzip="${EPREFIX}/usr/bin/gzip" \
+ --with-zstd="${EPREFIX}/usr/bin/zstd"
+}
+
+src_compile() {
+ emake GUILE_AUTO_COMPILE=0
+}
+
+src_test() {
+ emake -k check GUILE_AUTO_COMPILE=0
+}
+
+src_install() {
+ emake DESTDIR="${D}" install GUILE_AUTO_COMPILE=0
+
+ dodoc AUTHORS NEWS README THANKS
+
+ insinto /usr/share/licenses/${PN}
+ doins COPYING
+
+ if [[ -e "${ED}"/usr/bin/reboot ]]; then
+ mv "${ED}"/usr/bin/reboot \
+ "${ED}"/usr/bin/shepherd-reboot || die
+ fi
+
+ if [[ -e "${ED}"/usr/bin/halt ]]; then
+ mv "${ED}"/usr/bin/halt \
+ "${ED}"/usr/bin/shepherd-halt || die
+ fi
+
+ if [[ -e "${ED}"/usr/bin/shutdown ]]; then
+ mv "${ED}"/usr/bin/shutdown \
+ "${ED}"/usr/bin/shepherd-shutdown || die
+ fi
+
+ if [[ -e "${ED}"/usr/share/man/man8/reboot.8 ]]; then
+ mv "${ED}"/usr/share/man/man8/reboot.8 \
+ "${ED}"/usr/share/man/man8/shepherd-reboot.8 || die
+ fi
+
+ if [[ -e "${ED}"/usr/share/man/man8/halt.8 ]]; then
+ mv "${ED}"/usr/share/man/man8/halt.8 \
+ "${ED}"/usr/share/man/man8/shepherd-halt.8 || die
+ fi
+
+ if [[ -e "${ED}"/usr/share/man/man8/shutdown.8 ]]; then
+ mv "${ED}"/usr/share/man/man8/shutdown.8 \
+ "${ED}"/usr/share/man/man8/shepherd-shutdown.8 || die
+ fi
+}