diff --git a/srcpkgs/xbps-triggers/files/systemd-service b/srcpkgs/xbps-triggers/files/systemd-service deleted file mode 100755 index e2842a5f125..00000000000 --- a/srcpkgs/xbps-triggers/files/systemd-service +++ /dev/null @@ -1,146 +0,0 @@ -#!/bin/sh -# -# systemd trigger to enable/disable services, create/remove files via -# systemd-tmpfiles(5) and load/unload modules via modules-load.d(5). -# -# The following env vars are recognized: -# - systemd_services (expects at least two arguments: service name -# and a boolean to restart automatically the service on upgrade). -# - systemd_tmpfiles (expects a black separated list of fileanmes). -# - systemd_modules (expects a blank separated list of filenames). -# -# Examples: - -# systemd_services="foo.service off blah.service on" -# systemd_tmpfiles="foo.conf blah.conf" -# systemd_modules="foo.conf blah.conf" -# -# Arguments: $ACTION = [run/targets] -# $TARGET = [post-install/pre-remove] -# $PKGNAME -# $VERSION -# $UPDATE = [yes/no] -# -ACTION="$1" -TARGET="$2" -PKGNAME="$3" -VERSION="$4" -UPDATE="$5" - -export PATH="$PATH:/usr/local/bin" - -case "$ACTION" in -targets) - echo "post-install pre-remove" - ;; -run) - [ ! -x bin/systemctl ] && exit 0 - [ -z "$systemd_services" -a -z "$systemd_tmpfiles" -a -z "$systemd_modules" ] && exit 1 - - systemd-notify --booted - if [ $? -eq 0 ]; then - systemd_booted=yes - fi - - set -- ${systemd_services} - while [ $# -gt 0 ]; do - _srv="$1" - case "$2" in - [Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|[Oo][Nn]|1) - restart=1 - ;; - *) - unset restart - ;; - esac - if [ "$TARGET" = "pre-remove" ]; then - if [ "$UPDATE" = "no" ]; then - # package is being removed. - # stop and disable the unit. - echo "Stopping systemd service ${_srv}..." - systemctl stop ${_srv} >/dev/null 2>&1 || : - echo "Disabling systemd service ${_srv}..." - systemctl --no-reload disable ${_srv} >/dev/null 2>&1 || : - else - # Package update, just disable the unit. - echo "Disabling systemd service ${_srv}..." - systemctl --no-reload disable ${_srv} >/dev/null 2>&1 || : - - fi - else - if [ "$UPDATE" = "no" ]; then - # package is being installed. - # enable (but don't start) the unit by default. - echo "Enabling systemd service ${_srv}..." - systemctl enable ${_srv} >/dev/null 2>&1 || : - if [ -n "$systemd_booted" ]; then - # reload systemd if running. - systemctl daemon-reload >/dev/null 2>&1 || : - fi - cat <<_EOF -========================================================================== - -The service "${_srv}" has been enabled by default, -that means that it will be started in next boot. To start it immediately, -execute the following command (as root): - - $ systemctl start ${_srv} - -And to stop it: - - $ systemctl stop ${_srv} - -Refer to the systemd documentation if more information is required. - -========================================================================== -_EOF - else - # Enable the unit in case it wasn't added. - systemctl enable ${_srv} >/dev/null 2>&1 || : - - # package is being updated. - if [ -n "$system_booted" ]; then - # reload systemd if running. - systemctl daemon-reload >/dev/null 2>&1 || : - fi - if [ -n "$restart" ]; then - # try restarting package service. - systemctl try-restart ${_srv} >/dev/null 2>&1 || : - else - echo "systemd ${_srv} service must be restarted manually!" - fi - fi - fi - shift; shift - done - if [ "$TARGET" = "pre-remove" ]; then - # Unload the modules specified in systemd_modules files. - for f in ${systemd_modules}; do - for j in $(cat usr/lib/modules-load.d/${f}); do - modprobe -rq ${j} || : - done - done - else - # Create stuff specified in systemd_tmpfiles files. - for f in ${systemd_tmpfiles}; do - if [ "$PKGNAME" = "systemd" -a "$f" = "systemd.conf" ]; then - # This file is only meant to be run at boot-time. - continue - fi - systemd-tmpfiles --create ${f} || : - done - # Load modules specified in systemd_modules files. - for f in ${systemd_modules}; do - [ ! -f "usr/lib/modules-load.d/${f}" ] && continue - for j in "$(cat usr/lib/modules-load.d/${f})"; do - modprobe -q ${j} || : - done - done - fi - ;; -*) - exit 1 - ;; -esac - -exit 0 diff --git a/srcpkgs/xbps-triggers/template b/srcpkgs/xbps-triggers/template index 827fa3553ca..a08b7b0ef15 100644 --- a/srcpkgs/xbps-triggers/template +++ b/srcpkgs/xbps-triggers/template @@ -1,6 +1,6 @@ # Template file for 'xbps-triggers' pkgname=xbps-triggers -version=0.101 +version=0.102 revision=1 noarch=yes bootstrap=yes