sps-extra · log · files · refs · tags · releases · people · languages · GitHub · commit
f2ec401
extra: ship systemd and OpenRC units for display and network extras
Parents
Stat
desktop/sddm/files/openrc-sddm | 12 ++++++++++++ desktop/sddm/files/sddm.service | 12 ++++++++++++ desktop/sddm/hooks/post-install | 5 +++++ desktop/sddm/recipe | 9 +++++++-- net/bluez/files/bluetooth.service | 10 ++++++++++ net/bluez/files/openrc-bluetooth | 10 ++++++++++ net/bluez/hooks/post-install | 5 +++++ net/bluez/recipe | 5 ++++- net/iwd/files/iwd.service | 10 ++++++++++ net/iwd/files/openrc-iwd | 11 +++++++++++ net/iwd/hooks/post-install | 5 +++++ net/iwd/recipe | 5 ++++- net/networkmanager/files/NetworkManager.service | 12 ++++++++++++ net/networkmanager/files/openrc-NetworkManager | 12 ++++++++++++ net/networkmanager/hooks/post-install | 5 +++++ net/networkmanager/recipe | 5 ++++- print/cups/files/cups.service | 10 ++++++++++ print/cups/files/openrc-cupsd | 11 +++++++++++ print/cups/hooks/post-install | 5 +++++ print/cups/recipe | 5 ++++- sys/power-profiles-daemon/hooks/post-install | 5 +++++ sys/power-profiles-daemon/recipe | 2 +- sys/seatd/files/openrc-seatd | 10 ++++++++++ sys/seatd/files/seatd.service | 10 ++++++++++ sys/seatd/hooks/post-install | 5 +++++ sys/seatd/recipe | 5 ++++- 26 files changed, 193 insertions(+), 8 deletions(-)
Diff
diff --git a/desktop/sddm/files/openrc-sddm b/desktop/sddm/files/openrc-sddm
new file mode 100644
index 0000000..fe44593
--- /dev/null
+++ b/desktop/sddm/files/openrc-sddm
@@ -0,0 +1,12 @@
+#!/sbin/openrc-run
+# OpenRC unit for SDDM. systemd installs sddm.service from files/.
+
+description="Simple Desktop Display Manager"
+command="/usr/bin/sddm"
+command_background="yes"
+pidfile="/run/sddm.pid"
+
+depend() {
+ need dbus
+ after dbus
+}
diff --git a/desktop/sddm/files/sddm.service b/desktop/sddm/files/sddm.service
new file mode 100644
index 0000000..e5187f7
--- /dev/null
+++ b/desktop/sddm/files/sddm.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Simple Desktop Display Manager
+Documentation=man:sddm(1)
+After=local-fs.target systemd-user-sessions.service
+After=dbus.service
+
+[Service]
+ExecStart=/usr/bin/sddm
+Restart=always
+
+[Install]
+WantedBy=graphical.target
diff --git a/desktop/sddm/hooks/post-install b/desktop/sddm/hooks/post-install
new file mode 100644
index 0000000..541b0e0
--- /dev/null
+++ b/desktop/sddm/hooks/post-install
@@ -0,0 +1,5 @@
+# Enable SDDM for the init recorded in $SPS_ROOT/etc/sps/init.
+[ -n "${SPS_LIBDIR-}" ] && [ -f "$SPS_LIBDIR/setup/service.sh" ] || exit 0
+# shellcheck disable=SC1091
+. "$SPS_LIBDIR/setup/service.sh"
+setup_service_hook_enable || :
diff --git a/desktop/sddm/recipe b/desktop/sddm/recipe
index cb3e32c..81a15e5 100644
--- a/desktop/sddm/recipe
+++ b/desktop/sddm/recipe
@@ -1,6 +1,6 @@
name sddm
version 0.21.0
-release 1
+release 2
description sddm: display manager
source https://github.com/sddm/sddm/archive/refs/tags/v0.21.0.tar.gz
@@ -8,8 +8,13 @@ hash sha256:f895de2683627e969e4849dbfbbb2b500787481ca5ba0de6d6dfdae5f1549
depend filesystem
depend qt6
-depend elogind
+depend dbus
+optional elogind
+optional systemd
configure cmake -S . -B build -G Ninja -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF -DENABLE_JOURNALD=OFF -DNO_SYSTEMD=ON
build cmake --build build --parallel "$MAKEJOBS"
install DESTDIR="$PKG" cmake --install build
+install mkdir -p "$PKG/usr/lib/systemd/system" "$PKG/etc/init.d"
+install install -m 0644 "$SRC/files/sddm.service" "$PKG/usr/lib/systemd/system/sddm.service"
+install install -m 0755 "$SRC/files/openrc-sddm" "$PKG/etc/init.d/sddm"
diff --git a/net/bluez/files/bluetooth.service b/net/bluez/files/bluetooth.service
new file mode 100644
index 0000000..b57004e
--- /dev/null
+++ b/net/bluez/files/bluetooth.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Bluetooth service
+After=dbus.service
+
+[Service]
+ExecStart=/usr/libexec/bluetooth/bluetoothd
+Restart=on-failure
+
+[Install]
+WantedBy=multi-user.target
diff --git a/net/bluez/files/openrc-bluetooth b/net/bluez/files/openrc-bluetooth
new file mode 100644
index 0000000..28a6cf9
--- /dev/null
+++ b/net/bluez/files/openrc-bluetooth
@@ -0,0 +1,10 @@
+#!/sbin/openrc-run
+description="Bluetooth daemon"
+command="/usr/libexec/bluetooth/bluetoothd"
+command_background="yes"
+pidfile="/run/bluetoothd.pid"
+
+depend() {
+ need dbus
+ after dbus
+}
diff --git a/net/bluez/hooks/post-install b/net/bluez/hooks/post-install
new file mode 100644
index 0000000..537437f
--- /dev/null
+++ b/net/bluez/hooks/post-install
@@ -0,0 +1,5 @@
+# Enable this package's service for the init recorded in $SPS_ROOT/etc/sps/init.
+[ -n "${SPS_LIBDIR-}" ] && [ -f "$SPS_LIBDIR/setup/service.sh" ] || exit 0
+# shellcheck disable=SC1091
+. "$SPS_LIBDIR/setup/service.sh"
+setup_service_hook_enable || :
diff --git a/net/bluez/recipe b/net/bluez/recipe
index ba40019..2fab5f2 100644
--- a/net/bluez/recipe
+++ b/net/bluez/recipe
@@ -1,6 +1,6 @@
name bluez
version 5.84
-release 1
+release 2
description bluez: Bluetooth protocol stack
source https://mirrors.edge.kernel.org/pub/linux/bluetooth/bluez-5.84.tar.xz
@@ -15,3 +15,6 @@ depend readline
configure ./configure --prefix=/usr --enable-library --disable-systemd --disable-manpages
build make -j"$MAKEJOBS"
install make install DESTDIR="$PKG"
+install mkdir -p "$PKG/usr/lib/systemd/system" "$PKG/etc/init.d"
+install install -m 0644 "$SRC/files/bluetooth.service" "$PKG/usr/lib/systemd/system/bluetooth.service"
+install install -m 0755 "$SRC/files/openrc-bluetooth" "$PKG/etc/init.d/bluetooth"
diff --git a/net/iwd/files/iwd.service b/net/iwd/files/iwd.service
new file mode 100644
index 0000000..25663af
--- /dev/null
+++ b/net/iwd/files/iwd.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Internet Wireless Daemon
+After=dbus.service
+
+[Service]
+ExecStart=/usr/libexec/iwd
+Restart=on-failure
+
+[Install]
+WantedBy=multi-user.target
diff --git a/net/iwd/files/openrc-iwd b/net/iwd/files/openrc-iwd
new file mode 100644
index 0000000..b7bb685
--- /dev/null
+++ b/net/iwd/files/openrc-iwd
@@ -0,0 +1,11 @@
+#!/sbin/openrc-run
+description="iNet wireless daemon"
+command="/usr/libexec/iwd"
+command_background="yes"
+pidfile="/run/iwd.pid"
+
+depend() {
+ need dbus
+ after dbus
+ provide net
+}
diff --git a/net/iwd/hooks/post-install b/net/iwd/hooks/post-install
new file mode 100644
index 0000000..537437f
--- /dev/null
+++ b/net/iwd/hooks/post-install
@@ -0,0 +1,5 @@
+# Enable this package's service for the init recorded in $SPS_ROOT/etc/sps/init.
+[ -n "${SPS_LIBDIR-}" ] && [ -f "$SPS_LIBDIR/setup/service.sh" ] || exit 0
+# shellcheck disable=SC1091
+. "$SPS_LIBDIR/setup/service.sh"
+setup_service_hook_enable || :
diff --git a/net/iwd/recipe b/net/iwd/recipe
index c65f5a6..0c929a3 100644
--- a/net/iwd/recipe
+++ b/net/iwd/recipe
@@ -1,6 +1,6 @@
name iwd
version 3.9
-release 1
+release 2
description iwd: iNet wireless daemon
source https://cdn.kernel.org/pub/linux/network/wireless/iwd-3.9.tar.xz
@@ -13,3 +13,6 @@ depend dbus
configure ./configure --prefix=/usr --disable-systemd-service
build make -j"$MAKEJOBS"
install make install DESTDIR="$PKG"
+install mkdir -p "$PKG/usr/lib/systemd/system" "$PKG/etc/init.d"
+install install -m 0644 "$SRC/files/iwd.service" "$PKG/usr/lib/systemd/system/iwd.service"
+install install -m 0755 "$SRC/files/openrc-iwd" "$PKG/etc/init.d/iwd"
diff --git a/net/networkmanager/files/NetworkManager.service b/net/networkmanager/files/NetworkManager.service
new file mode 100644
index 0000000..f8c0cc6
--- /dev/null
+++ b/net/networkmanager/files/NetworkManager.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Network Manager
+Wants=network.target
+After=dbus.service
+Before=network.target
+
+[Service]
+ExecStart=/usr/sbin/NetworkManager --no-daemon
+Restart=on-failure
+
+[Install]
+WantedBy=multi-user.target
diff --git a/net/networkmanager/files/openrc-NetworkManager b/net/networkmanager/files/openrc-NetworkManager
new file mode 100644
index 0000000..f0a0c00
--- /dev/null
+++ b/net/networkmanager/files/openrc-NetworkManager
@@ -0,0 +1,12 @@
+#!/sbin/openrc-run
+description="NetworkManager"
+command="/usr/sbin/NetworkManager"
+command_args="--no-daemon"
+command_background="yes"
+pidfile="/run/NetworkManager.pid"
+
+depend() {
+ need dbus
+ after dbus
+ provide net
+}
diff --git a/net/networkmanager/hooks/post-install b/net/networkmanager/hooks/post-install
new file mode 100644
index 0000000..537437f
--- /dev/null
+++ b/net/networkmanager/hooks/post-install
@@ -0,0 +1,5 @@
+# Enable this package's service for the init recorded in $SPS_ROOT/etc/sps/init.
+[ -n "${SPS_LIBDIR-}" ] && [ -f "$SPS_LIBDIR/setup/service.sh" ] || exit 0
+# shellcheck disable=SC1091
+. "$SPS_LIBDIR/setup/service.sh"
+setup_service_hook_enable || :
diff --git a/net/networkmanager/recipe b/net/networkmanager/recipe
index 5f6be9a..0f516c2 100644
--- a/net/networkmanager/recipe
+++ b/net/networkmanager/recipe
@@ -1,6 +1,6 @@
name networkmanager
version 1.54.0
-release 1
+release 2
description networkmanager: network configuration
source https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/archive/1.54.0/NetworkManager-1.54.0.tar.gz
@@ -15,3 +15,6 @@ depend jansson
configure meson setup build --prefix=/usr --buildtype=release -Dsystemd=false -Dsession_tracking=elogind -Dtests=no
build meson compile -C build
install DESTDIR="$PKG" meson install -C build --no-rebuild
+install mkdir -p "$PKG/usr/lib/systemd/system" "$PKG/etc/init.d"
+install install -m 0644 "$SRC/files/NetworkManager.service" "$PKG/usr/lib/systemd/system/NetworkManager.service"
+install install -m 0755 "$SRC/files/openrc-NetworkManager" "$PKG/etc/init.d/NetworkManager"
diff --git a/print/cups/files/cups.service b/print/cups/files/cups.service
new file mode 100644
index 0000000..0a8be5b
--- /dev/null
+++ b/print/cups/files/cups.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=CUPS Scheduler
+After=dbus.service
+
+[Service]
+ExecStart=/usr/sbin/cupsd -f
+Restart=on-failure
+
+[Install]
+WantedBy=multi-user.target
diff --git a/print/cups/files/openrc-cupsd b/print/cups/files/openrc-cupsd
new file mode 100644
index 0000000..df9b651
--- /dev/null
+++ b/print/cups/files/openrc-cupsd
@@ -0,0 +1,11 @@
+#!/sbin/openrc-run
+description="CUPS printing service"
+command="/usr/sbin/cupsd"
+command_args="-f"
+command_background="yes"
+pidfile="/run/cupsd.pid"
+
+depend() {
+ use dbus
+ after dbus
+}
diff --git a/print/cups/hooks/post-install b/print/cups/hooks/post-install
new file mode 100644
index 0000000..537437f
--- /dev/null
+++ b/print/cups/hooks/post-install
@@ -0,0 +1,5 @@
+# Enable this package's service for the init recorded in $SPS_ROOT/etc/sps/init.
+[ -n "${SPS_LIBDIR-}" ] && [ -f "$SPS_LIBDIR/setup/service.sh" ] || exit 0
+# shellcheck disable=SC1091
+. "$SPS_LIBDIR/setup/service.sh"
+setup_service_hook_enable || :
diff --git a/print/cups/recipe b/print/cups/recipe
index ede9219..cf2b203 100644
--- a/print/cups/recipe
+++ b/print/cups/recipe
@@ -1,6 +1,6 @@
name cups
version 2.4.14
-release 1
+release 2
description cups: Common UNIX Printing System
source https://github.com/OpenPrinting/cups/releases/download/v2.4.14/cups-2.4.14-source.tar.gz
@@ -13,3 +13,6 @@ depend zlib
configure ./configure --prefix=/usr --with-rcdir=no --with-systemd=no --with-components=all
build make -j"$MAKEJOBS"
install make install DESTDIR="$PKG"
+install mkdir -p "$PKG/usr/lib/systemd/system" "$PKG/etc/init.d"
+install install -m 0644 "$SRC/files/cups.service" "$PKG/usr/lib/systemd/system/cups.service"
+install install -m 0755 "$SRC/files/openrc-cupsd" "$PKG/etc/init.d/cupsd"
diff --git a/sys/power-profiles-daemon/hooks/post-install b/sys/power-profiles-daemon/hooks/post-install
new file mode 100644
index 0000000..537437f
--- /dev/null
+++ b/sys/power-profiles-daemon/hooks/post-install
@@ -0,0 +1,5 @@
+# Enable this package's service for the init recorded in $SPS_ROOT/etc/sps/init.
+[ -n "${SPS_LIBDIR-}" ] && [ -f "$SPS_LIBDIR/setup/service.sh" ] || exit 0
+# shellcheck disable=SC1091
+. "$SPS_LIBDIR/setup/service.sh"
+setup_service_hook_enable || :
diff --git a/sys/power-profiles-daemon/recipe b/sys/power-profiles-daemon/recipe
index 33d09ee..eee5e43 100644
--- a/sys/power-profiles-daemon/recipe
+++ b/sys/power-profiles-daemon/recipe
@@ -1,6 +1,6 @@
name power-profiles-daemon
version 0.23
-release 2
+release 3
description power-profiles-daemon: power profiles
source https://gitlab.freedesktop.org/upower/power-profiles-daemon/-/archive/0.23/power-profiles-daemon-0.23.tar.gz
diff --git a/sys/seatd/files/openrc-seatd b/sys/seatd/files/openrc-seatd
new file mode 100644
index 0000000..84c45cc
--- /dev/null
+++ b/sys/seatd/files/openrc-seatd
@@ -0,0 +1,10 @@
+#!/sbin/openrc-run
+description="seat management daemon"
+command="/usr/bin/seatd"
+command_args="-g video"
+command_background="yes"
+pidfile="/run/seatd.pid"
+
+depend() {
+ need localmount
+}
diff --git a/sys/seatd/files/seatd.service b/sys/seatd/files/seatd.service
new file mode 100644
index 0000000..19d87d5
--- /dev/null
+++ b/sys/seatd/files/seatd.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Seat management daemon
+Before=graphical.target
+
+[Service]
+ExecStart=/usr/bin/seatd -g video
+Restart=on-failure
+
+[Install]
+WantedBy=multi-user.target
diff --git a/sys/seatd/hooks/post-install b/sys/seatd/hooks/post-install
new file mode 100644
index 0000000..537437f
--- /dev/null
+++ b/sys/seatd/hooks/post-install
@@ -0,0 +1,5 @@
+# Enable this package's service for the init recorded in $SPS_ROOT/etc/sps/init.
+[ -n "${SPS_LIBDIR-}" ] && [ -f "$SPS_LIBDIR/setup/service.sh" ] || exit 0
+# shellcheck disable=SC1091
+. "$SPS_LIBDIR/setup/service.sh"
+setup_service_hook_enable || :
diff --git a/sys/seatd/recipe b/sys/seatd/recipe
index 583a547..2772a1d 100644
--- a/sys/seatd/recipe
+++ b/sys/seatd/recipe
@@ -1,6 +1,6 @@
name seatd
version 0.9.1
-release 1
+release 2
description seatd: seat management daemon
source https://git.sr.ht/~kennylevinsen/seatd/archive/0.9.1.tar.gz
@@ -11,3 +11,6 @@ depend filesystem
configure meson setup build --prefix=/usr --buildtype=release
build meson compile -C build
install DESTDIR="$PKG" meson install -C build --no-rebuild
+install mkdir -p "$PKG/usr/lib/systemd/system" "$PKG/etc/init.d"
+install install -m 0644 "$SRC/files/seatd.service" "$PKG/usr/lib/systemd/system/seatd.service"
+install install -m 0755 "$SRC/files/openrc-seatd" "$PKG/etc/init.d/seatd"