Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=openjava.git;a=commitdiff;h=61a468ec47652ac6716a130a09c56bbf9195e52d

commit 61a468ec47652ac6716a130a09c56bbf9195e52d
Author: James Buren <[email protected]>
Date:   Fri Jun 8 04:02:57 2012 -0500

cyrus-sasl-2.1.25-5-x86_64
* convert to use systemd schema

diff --git a/source/network/cyrus-sasl/FrugalBuild 
b/source/network/cyrus-sasl/FrugalBuild
index f279fa9..4b5f592 100644
--- a/source/network/cyrus-sasl/FrugalBuild
+++ b/source/network/cyrus-sasl/FrugalBuild
@@ -3,20 +3,21 @@

pkgname=cyrus-sasl
pkgver=2.1.25
-pkgrel=4
+pkgrel=5
pkgdesc="SASL Authentication mechanism"
url="http://ftp.andrew.cmu.edu/pub/cyrus-mail/";
-depends=('openssl>=1.0.0' 'gdbm>=1.10' 'pam')
+depends=('openssl>=1.0.0' 'gdbm>=1.10' 'pam' 'systemd')
groups=('network')
archs=('i686' 'x86_64' 'arm')
source=(ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-sasl-$pkgver.tar.gz \
-       psql.patch rc.saslauthd saslauthd \
+       psql.patch rc.saslauthd saslauthd.service saslauthd \
README.Frugalware)
up2date="lynx -dump 'http://ftp.andrew.cmu.edu/pub/cyrus-mail/?M=D'|grep 
cyrus-sasl.*tar.gz$|sed -n 's/.*-\(.*\)\.t.*/\1/;1 p'"
sha1sums=('b6c34426012d9b5d448d5646cbecd818a5eeacbf' \
'b4eeaf03a4b672f3153e0b5ef2eec59802d0214d' \
'0b360c2c59175f8a3f53d9a5ef63b60eb332bd69' \
-          'f3c648fa7e5d9047bd051abbf70e3532abaa0fad' \
+          '8867cae952e6b31d9bb2f4c2976a6f6bae4301e3' \
+          '5fa8a4fd427eafd732eb9f539e7a7eeab44f234f' \
'50150f268a1c3fd6de37ed88606ba8937f6f2b34')

subpkgs=("$pkgname-sql" "$pkgname-gssapiv2" "saslauthd")
@@ -28,6 +29,7 @@ makedepends=('krb5' 'mysql>=5.1.45-2')
subgroups=('network' 'network' 'network')
subarchs=('i686 x86_64 arm' 'i686 x86_64 arm' 'i686 x86_64 arm')
subbackup=('' '' 'etc/sysconfig/saslauthd')
+subinstall=('' '' 'saslauthd.install')

build()
{
@@ -48,9 +50,11 @@ build()
Fsplit saslauthd usr/sbin/*saslauthd
Fsplit saslauthd usr/share/man/man8/saslauthd.*
Finstall 0644 saslauthd etc/sysconfig/saslauthd
+       Ffile /lib/systemd/system/saslauthd.service
Frcd2 saslauthd
Fsplit saslauthd etc/rc.d
Fsplit saslauthd etc/sysconfig
+       Fsplit saslauthd lib/systemd/system
Frm /etc
Fdoc README.Frugalware
}
diff --git a/source/network/cyrus-sasl/saslauthd 
b/source/network/cyrus-sasl/saslauthd
index a123957..b7ef86e 100644
--- a/source/network/cyrus-sasl/saslauthd
+++ b/source/network/cyrus-sasl/saslauthd
@@ -1,11 +1,4 @@
# /etc/sysconfig/saslauthd

-# set this value to 0 if you want to start saslauthd
-SASL_DIE=1
-
-# set the authentication mechanism
-auth_mechanism="" # authentication mechanism can be:
-
-# extra options
+# See man saslauthd for options.
options=""
-
diff --git a/source/network/cyrus-sasl/saslauthd.install 
b/source/network/cyrus-sasl/saslauthd.install
new file mode 100644
index 0000000..756c7cc
--- /dev/null
+++ b/source/network/cyrus-sasl/saslauthd.install
@@ -0,0 +1,56 @@
+sysvinit_units=(saslauthd)
+systemd_units=(saslauthd=)
+
+post_install()
+{
+       local unit
+       local op
+
+       for i in ${sysvinit_units[@]}; do
+               chkconfig --del rc.$i >/dev/null 2>&1
+       done
+
+       for i in ${systemd_units[@]}; do
+               unit=$(echo $i | cut -f 1 -d '=')
+               op=$(echo $i | cut -f 2 -d '=')
+               if echo $op | grep -q 'e'; then
+                       systemctl enable $unit.service >/dev/null 2>&1
+               fi
+               if echo $op | grep -q 's'; then
+                       systemctl start $unit.service >/dev/null 2>&1
+               fi
+       done
+}
+
+post_upgrade()
+{
+       for i in ${sysvinit_units[@]}; do
+               chkconfig --del rc.$i >/dev/null 2>&1
+       done
+
+       systemctl daemon-reload >/dev/null 2>&1
+}
+
+pre_remove()
+{
+       local unit
+
+       for i in ${sysvinit_units[@]}; do
+               chkconfig --del rc.$i >/dev/null 2>&1
+       done
+
+       for i in ${systemd_units[@]}; do
+               unit=$(echo $i | cut -f 1 -d '=')
+               systemctl --no-reload disable $unit.service >/dev/null 2>&1
+               systemctl stop $unit.service >/dev/null 2>&1
+       done
+}
+
+post_remove()
+{
+       systemctl daemon-reload >/dev/null 2>&1
+}
+
+op=$1
+shift
+$op $*
diff --git a/source/network/cyrus-sasl/saslauthd.service 
b/source/network/cyrus-sasl/saslauthd.service
new file mode 100644
index 0000000..ad16d01
--- /dev/null
+++ b/source/network/cyrus-sasl/saslauthd.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=SASL authentication daemon
+After=network.target
+
+[Service]
+EnvironmentFile=/etc/sysconfig/saslauthd
+ExecStart=/usr/sbin/saslauthd $options
+PIDFile=/var/run/courier/saslauthd.pid
+Type=forking
+
+[Install]
+WantedBy=multi-user.target
_______________________________________________
Frugalware-git mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to