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

commit 7b3924efda0b633ce6fc065e24dd2c62ddba2fbf
Author: James Buren <[email protected]>
Date:   Wed Jun 6 02:57:03 2012 -0500

oss-v4.2_build2006-9-x86_64
* convert to use systemd schema

diff --git a/source/multimedia-extra/oss/FrugalBuild 
b/source/multimedia-extra/oss/FrugalBuild
index 6ca9872..1a035d9 100644
--- a/source/multimedia-extra/oss/FrugalBuild
+++ b/source/multimedia-extra/oss/FrugalBuild
@@ -7,7 +7,7 @@
pkgname=oss
pkgver=v4.2_build2006
_ver="${pkgver/_/-}"
-pkgrel=8
+pkgrel=9
pkgdesc="Open Sound System Version 4 for Linux (Alternative to ALSA)."
url="http://developer.opensound.com";
_dlurl='http://www.4front-tech.com/developer/sources/stable/gpl'
@@ -17,15 +17,17 @@ rodepends=("$pkgname-libs")
archs=('i686' 'x86_64')
up2date="Flastarchive $_dlurl $_ext"
backup=('usr/lib/oss/soundon.user')
-_F_kernelmod_scriptlet="$pkgname.install"
+_F_sysvinit_units=(oss)
+_F_systemd_units=(oss-on=e oss-off=e)
source=($_dlurl/$pkgname-$_ver$_ext
$pkgname-frugalware.patch
oss-on.service
oss-off.service
-       rc.oss
-       $pkgname.install)
+       rc.oss)
options=('scriptlet' 'genscriptlet')
-Finclude kernel-module
+Finclude kernel-module systemd
+_F_genscriptlet_install="$startdir/$pkgname.install"
+install="$Fsrcdir/$pkgname.install"
subpkgs=("$pkgname-gtk-mixer" "$pkgname-libs")
subdescs=('GUI mixer for oss that uses GTK+' 'Libraries and headers for oss.')
subrodepends=("$pkgname" "")
@@ -42,8 +44,7 @@ sha1sums=('2fe8b432d8621fcbde74a6e25038d586881188ef' \
'e7887412fa6434e12ea8bf441cd6fd52008997e5' \
'c11b5241b8b6cd805b9e32f6d3677c647e0abaa9' \
'cad69f7d4d653340947a7119888d4976640b8410' \
-          '7f1c8c3758179bb1890dd17f232ebf824505cfea' \
-          '2aa31e12ac38964ae9d53ac6165a77fe010d1311')
+          '7f1c8c3758179bb1890dd17f232ebf824505cfea')

_symlink_lib()
{
@@ -140,7 +141,7 @@ build()
Fsplit $pkgname-libs /usr/lib/oss/include
Fsplit $pkgname-libs /etc/oss.conf

-       Fbuild_kernelmod_scriptlet
+       Fgenscriptlet
Fkernelver_compress_modules
}

diff --git a/source/multimedia-extra/oss/oss.install 
b/source/multimedia-extra/oss/oss.install
index 4e58ae3..c89ca87 100644
--- a/source/multimedia-extra/oss/oss.install
+++ b/source/multimedia-extra/oss/oss.install
@@ -1,44 +1,74 @@
+sysvinit_units=(@_F_sysvinit_units@)
+systemd_units=(@_F_systemd_units@)
+
post_install()
{
echo -n "Suppressing ALSA drivers... "
-       find /lib/modules -name "sound-preoss.tar.bz2" -not -path 
"*@_F_kernelmod_uname@*" -delete
/usr/lib/oss/scripts/remove_drv.sh &> /dev/null
-       for i in /lib/systemd/system/alsa-{re,}store.service; do
-               [ -f "$i" ] && systemctl disable `basename $i` &> /dev/null
-       done
-       chkconfig --del rc.oss
-       systemctl enable oss-on.service &> /dev/null
-       systemctl enable oss-off.service &> /dev/null
-       systemctl daemon-reload &> /dev/null
-       depmod -a @_F_kernelmod_uname@
echo "done."
-       true
+
+       depmod -a @_F_kernelmod_uname@
+
+       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
-       true
+       echo -n "Suppressing ALSA drivers... "
+       /usr/lib/oss/scripts/remove_drv.sh &> /dev/null
+       echo "done."
+
+       find /lib/modules -name "sound-preoss.tar.bz2" -not -path 
"*@_F_kernelmod_uname@*" -delete
+
+       depmod -a @_F_kernelmod_uname@
+
+       for i in ${sysvinit_units[@]}; do
+               chkconfig --del rc.$i >/dev/null 2>&1
+       done
+
+       systemctl daemon-reload >/dev/null 2>&1
}

pre_remove()
{
echo -n "Restoring ALSA drivers... "
/usr/lib/oss/scripts/restore_drv.sh &> /dev/null
-       for i in /lib/systemd/system/alsa-{re,}store.service; do
-               [ -f "$i" ] && systemctl enable `basename $i` &> /dev/null
-       done
-       systemctl disable oss-on.service &> /dev/null
-       systemctl disable oss-off.service &> /dev/null
echo "done."
-       true
+
+       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()
{
depmod -a @_F_kernelmod_uname@
-       systemctl daemon-reload &> /dev/null
-       true
+
+       systemctl daemon-reload >/dev/null 2>&1
}

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

Reply via email to