summaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
Diffstat (limited to 'packages')
-rw-r--r--packages/alsa/alsa-state.bb16
-rwxr-xr-xpackages/alsa/alsa-state/alsa-state29
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