Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=xfcetesting.git;a=commitdiff;h=38bf9b4ed1cc84aaf60f97bcd534e43b9b08ca82

commit 38bf9b4ed1cc84aaf60f97bcd534e43b9b08ca82
Author: James Buren <[email protected]>
Date:   Wed Jun 6 01:34:19 2012 -0500

squid-3.1.19-1-x86_64
* convert to use systemd schema

diff --git a/source/network-extra/squid/FrugalBuild 
b/source/network-extra/squid/FrugalBuild
index 1048994..cdcb6a5 100644
--- a/source/network-extra/squid/FrugalBuild
+++ b/source/network-extra/squid/FrugalBuild
@@ -2,8 +2,8 @@
# Maintainer: Miklos Vajna <[email protected]>

pkgname=squid
-pkgver=3.1.18
-pkgrel=3
+pkgver=3.1.19
+pkgrel=1
pkgdesc="Squid Web Proxy Cache"
url="http://www.squid-cache.org/";
depends=('openssl>=1.0.0' 'perl' 'libcap' 'libstdc++' 'systemd')
@@ -16,6 +16,10 @@ 
source=(http://www.squid-cache.org/Versions/v3/3.1/$pkgname-$pkgver.tar.bz2 \
squid cache_swap.sh squid.service squid.sysconfig)
signatures=("${source[0]}.asc" '' '' '' '')

+_F_systemd_scriptlet="$pkgname.install"
+_F_systemd_units=(squid=)
+Finclude systemd
+
build()
{
Fpatchall
@@ -50,6 +54,7 @@ build()
cat > $Fdestdir/etc/tmpfiles.d/squid.conf << EOF
d $Flocalstatedir/run 0755 root root -
EOF
+       Fgenscriptlet
}

# optimization OK
diff --git a/source/network-extra/squid/squid.install 
b/source/network-extra/squid/squid.install
index 499027d..f7a8c45 100644
--- a/source/network-extra/squid/squid.install
+++ b/source/network-extra/squid/squid.install
@@ -1,21 +1,60 @@
+sysvinit_units=(@_F_sysvinit_units@)
+systemd_units=(@_F_systemd_units@)
+
post_install()
{
grep -q proxy /etc/group || groupadd -g 105 proxy
id proxy &>/dev/null || useradd -u 105 -g proxy -d /var/empty proxy
chown proxy.proxy var/{cache,log}/squid
+
+       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()
{
-       post_install $1
+       grep -q proxy /etc/group || groupadd -g 105 proxy
+       id proxy &>/dev/null || useradd -u 105 -g proxy -d /var/empty proxy
+       chown proxy.proxy var/{cache,log}/squid
+
+       for i in ${sysvinit_units[@]}; do
+               chkconfig --del rc.$i >/dev/null 2>&1
+       done
+
+       systemctl daemon-reload >/dev/null 2>&1
}

pre_remove()
{
-       systemctl --no-reload disable squid.service >/dev/null 2>&1
-       systemctl stop squid.service >/dev/null 2>&1
userdel proxy
groupdel proxy
+
+       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()
@@ -25,5 +64,4 @@ post_remove()

op=$1
shift
-
$op $*
_______________________________________________
Frugalware-git mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to