Patchwork [meta-systemd,1/2] systemd-systemctl-native: handle ALIAS tag

login
register
mail settings
Submitter Andreas Müller
Date Aug. 7, 2012, 11:04 p.m.
Message ID <1344380665-3759-2-git-send-email-schnitzeltony@googlemail.com>
Download mbox | patch
Permalink /patch/34059/
State Accepted
Commit d6408d879392f0fc9f44f6545a315a8cf6f51ebb
Headers show

Comments

Andreas Müller - Aug. 7, 2012, 11:04 p.m.
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
 .../systemd/systemd-systemctl-native.bb            |    2 +-
 .../systemd/systemd-systemctl-native/systemctl     |   17 +++++++++++++++++
 2 files changed, 18 insertions(+), 1 deletions(-)

Patch

diff --git a/meta-systemd/recipes-core/systemd/systemd-systemctl-native.bb b/meta-systemd/recipes-core/systemd/systemd-systemctl-native.bb
index 5f23e98..25ddbda 100644
--- a/meta-systemd/recipes-core/systemd/systemd-systemctl-native.bb
+++ b/meta-systemd/recipes-core/systemd/systemd-systemctl-native.bb
@@ -3,7 +3,7 @@  DESCRIPTION = "Wrapper to enable of systemd services"
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58"
 
-PR = "r4"
+PR = "r5"
 
 inherit native
 
diff --git a/meta-systemd/recipes-core/systemd/systemd-systemctl-native/systemctl b/meta-systemd/recipes-core/systemd/systemd-systemctl-native/systemctl
index a5bd770..5c21e7f 100755
--- a/meta-systemd/recipes-core/systemd/systemd-systemctl-native/systemctl
+++ b/meta-systemd/recipes-core/systemd/systemd-systemctl-native/systemctl
@@ -96,6 +96,23 @@  for service in $services; do
 		fi
 	done
 
+	# create the required symbolic 'Alias' links
+	alias=$(grep Alias $ROOT/$service_file \
+		        | sed 's,Alias=,,g' \
+		        | tr ',' '\n' \
+		        | grep '\.service$')
+
+	for r in $alias; do
+		if [ "$action" = "enable" ]; then
+			mkdir -p $ROOT/etc/systemd/system
+			ln -s $service_file $ROOT/etc/systemd/system/$r
+			echo "Enabled $service for $alias."
+		else
+			rm -f $ROOT/etc/systemd/system/$r
+			echo "Disabled $service for $alias."
+		fi
+	done
+
 	# call us for the other required scripts
 	also=$(grep Also $ROOT/$service_file \
 		   | sed 's,Also=,,g' \