commit:     1faf6927b1f0278985026aeb67e0c4982115ce06
Author:     Henrik Steffen Gaßmann <henrik <AT> gassmann <DOT> onl>
AuthorDate: Mon Nov 10 15:48:16 2025 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Mon Nov 10 15:48:16 2025 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=1faf6927

gui-apps/ashell: add systemd user unit

Signed-off-by: Henrik Steffen Gaßmann <henrik <AT> gassmann.onl>

 gui-apps/ashell/ashell-0.6.0.ebuild  | 14 +++++++++++++-
 gui-apps/ashell/files/ashell.service | 14 ++++++++++++++
 gui-apps/ashell/metadata.xml         |  1 +
 3 files changed, 28 insertions(+), 1 deletion(-)

diff --git a/gui-apps/ashell/ashell-0.6.0.ebuild 
b/gui-apps/ashell/ashell-0.6.0.ebuild
index a80c49fbed..9cfe3835a9 100644
--- a/gui-apps/ashell/ashell-0.6.0.ebuild
+++ b/gui-apps/ashell/ashell-0.6.0.ebuild
@@ -704,7 +704,7 @@ declare -A GIT_CRATES=(
 LLVM_COMPAT=( 18 19 20 )
 RUST_NEEDS_LLVM=1
 
-inherit cargo llvm-r1
+inherit cargo llvm-r1 systemd
 
 DESCRIPTION="A ready to go Wayland status bar for Hyprland"
 HOMEPAGE="https://github.com/MalpenZibo/ashell";
@@ -739,3 +739,15 @@ pkg_setup() {
        llvm-r1_pkg_setup
        rust_pkg_setup
 }
+
+src_install() {
+       # default invokes `make install` which invokes `sudo cp`
+       # therefore explicitly invoke cargo_src_install
+       cargo_src_install
+       einstalldocs
+       systemd_douserunit "${FILESDIR}/ashell.service"
+}
+
+pkg_postinst() {
+       systemd_is_booted && elog "This port provides the systemd user service 
unit ashell.service."
+}

diff --git a/gui-apps/ashell/files/ashell.service 
b/gui-apps/ashell/files/ashell.service
new file mode 100644
index 0000000000..f09d54cc1d
--- /dev/null
+++ b/gui-apps/ashell/files/ashell.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=A ready to go Wayland status bar for Hyprland.
+Documentation=https://malpenzibo.github.io/ashell/docs/intro
+PartOf=graphical-session.target
+After=graphical-session.target
+Requisite=graphical-session.target
+
+[Service]
+ExecStart=/usr/bin/ashell
+ExecReload=kill -SIGUSR2 $MAINPID
+Restart=on-failure
+
+[Install]
+WantedBy=graphical-session.target

diff --git a/gui-apps/ashell/metadata.xml b/gui-apps/ashell/metadata.xml
index 2bd3bc1974..013348e3c9 100644
--- a/gui-apps/ashell/metadata.xml
+++ b/gui-apps/ashell/metadata.xml
@@ -3,6 +3,7 @@
 <pkgmetadata>
        <!-- maintainer-needed -->
        <upstream>
+               <doc>https://malpenzibo.github.io/ashell/docs/intro</doc>
                <bugs-to>https://github.com/MalpenZibo/ashell/issues</bugs-to>
                
<changelog>https://github.com/MalpenZibo/ashell/releases</changelog>
                <remote-id type="github">MalpenZibo/ashell</remote-id>

Reply via email to