diff options
Diffstat (limited to 'packages/alsa')
-rw-r--r-- | packages/alsa/alsa-state.bb | 16 | ||||
-rwxr-xr-x | packages/alsa/alsa-state/alsa-state | 29 |
2 files changed, 42 insertions, 3 deletions
diff --git a/packages/alsa/alsa-state.bb b/packages/alsa/alsa-state.bb index d49aa3231b..53c69c5c69 100644 --- a/packages/alsa/alsa-state.bb +++ b/packages/alsa/alsa-state.bb @@ -14,21 +14,30 @@ LICENSE = "GPL" ###################################################################################### -PV = "0.0.1" +PV = "0.0.2" PR = "r0" ###################################################################################### -SRC_URI = "file://asound.state" +SRC_URI = "file://asound.state \ + file://alsa-state" FILES_${PN} = "/etc/*" ###################################################################################### +inherit update-rc.d + +INITSCRIPT_NAME = "alsa-state" +INITSCRIPT_PARAMS = "defaults 10" + +###################################################################################### + do_install() { - install -d ${D}${sysconfdir} + install -d ${D}${sysconfdir}/init.d install -m 0644 ${WORKDIR}/asound.state ${D}${sysconfdir} + install -m 0755 ${WORKDIR}/alsa-state ${D}${sysconfdir}/init.d } @@ -38,3 +47,4 @@ pkg_postinst_${PN}() { /usr/sbin/alsactl -f ${sysconfdir}/asound.state restore fi } + diff --git a/packages/alsa/alsa-state/alsa-state b/packages/alsa/alsa-state/alsa-state new file mode 100755 index 0000000000..c6bc1fd494 --- /dev/null +++ b/packages/alsa/alsa-state/alsa-state @@ -0,0 +1,29 @@ +#! /bin/sh +# +# Copyright Matthias Hentges <devel@hentges.net> (c) 2007 +# License: GPL (see http://www.gnu.org/licenses/gpl.txt for a copy of the license) +# +# Filename: alsa-state +# Date: 20070308 (YMD) + + +asound_restore(){ + echo "ALSA: Restoring mixer settings..." + if test -x /usr/sbin/alsactl -a -e /etc/asound.state + then + /usr/sbin/alsactl -f /etc/asound.state restore + fi +} + +asound_store(){ + echo "ALSA: Storing mixer settings..." + if test -x /usr/sbin/alsactl + then + /usr/sbin/alsactl -f /etc/asound.state store + fi +} + +case "$1" in +start) asound_restore ;; +stop) asound_store ;; +esac |