mirror of
git://slackware.nl/current.git
synced 2024-12-30 10:24:23 +01:00
76fc4757ac
Mon Nov 4 17:08:47 UTC 2013 Slackware 14.1 x86_64 stable is released! It's been another interesting release cycle here at Slackware bringing new features like support for UEFI machines, updated compilers and development tools, the switch from MySQL to MariaDB, and many more improvements throughout the system. Thanks to the team, the upstream developers, the dedicated Slackware community, and everyone else who pitched in to help make this release a reality. The ISOs are off to be replicated, a 6 CD-ROM 32-bit set and a dual-sided 32-bit/64-bit x86/x86_64 DVD. Please consider supporting the Slackware project by picking up a copy from store.slackware.com. We're taking pre-orders now, and offer a discount if you sign up for a subscription. Have fun! :-)
87 lines
2.5 KiB
Bash
87 lines
2.5 KiB
Bash
#!/bin/sh
|
|
# Load the mixer settings and OSS compatibility (if enabled) for ALSA.
|
|
# (the Advanced Linux Sound Architecture)
|
|
|
|
# A function to load the ALSA mixer settings:
|
|
load_alsa_mixer() {
|
|
if [ -r /var/lib/alsa/asound.state ]; then
|
|
echo "Loading ALSA mixer settings: /usr/sbin/alsactl restore"
|
|
/usr/sbin/alsactl restore
|
|
else
|
|
# It's possible a user might not want to set a default sound state.
|
|
# In that case, do this: touch /var/lib/alsa/no.asound.state
|
|
if [ ! -r /var/lib/alsa/no.asound.state ]; then
|
|
echo "Setting default ALSA mixer settings."
|
|
# set default mixer volumes for ALSA
|
|
# Taken from the alsaconf script.
|
|
amixer -s -q <<EOF
|
|
set Master 75% unmute
|
|
set Master -12dB
|
|
set 'Master Mono' 75% unmute
|
|
set 'Master Mono' -12dB
|
|
set Front 75% unmute
|
|
set Front -12dB
|
|
set PCM 90% unmute
|
|
set PCM 0dB
|
|
mixer Synth 90% unmute
|
|
mixer Synth 0dB
|
|
mixer CD 90% unmute
|
|
mixer CD 0dB
|
|
# mute mic
|
|
set Mic 0% mute
|
|
# ESS 1969 chipset has 2 PCM channels
|
|
set PCM,1 90% unmute
|
|
set PCM,1 0dB
|
|
# Trident/YMFPCI/emu10k1
|
|
set Wave 100% unmute
|
|
set Music 100% unmute
|
|
set AC97 100% unmute
|
|
# CS4237B chipset:
|
|
set 'Master Digital' 75% unmute
|
|
# Envy24 chips with analog outs
|
|
set DAC 90% unmute
|
|
set DAC -12dB
|
|
set DAC,0 90% unmute
|
|
set DAC,0 -12dB
|
|
set DAC,1 90% unmute
|
|
set DAC,1 -12dB
|
|
# some notebooks use headphone instead of master
|
|
set Headphone 75% unmute
|
|
set Headphone -12dB
|
|
set Playback 100% unmute
|
|
# turn off digital switches
|
|
set "SB Live Analog/Digital Output Jack" off
|
|
set "Audigy Analog/Digital Output Jack" off
|
|
EOF
|
|
echo "Storing default ALSA mixer settings: /usr/sbin/alsactl store"
|
|
/usr/sbin/alsactl store
|
|
fi
|
|
fi
|
|
}
|
|
|
|
# If udev or something else has loaded the ALSA modules, then
|
|
# simply load the mixer settings and make sure the OSS compat
|
|
# modules are loaded (if enabled):
|
|
if [ -d /proc/asound ]; then
|
|
if [ -x /etc/rc.d/rc.alsa-oss ]; then
|
|
sh /etc/rc.d/rc.alsa-oss
|
|
fi
|
|
load_alsa_mixer
|
|
else
|
|
# If there are ALSA modules defined in /etc/modprobe.d/*, but
|
|
# ALSA is not yet loaded, then load the modules now:
|
|
DRIVERS=$(modprobe -c | grep -E "^[[:space:]]*alias[[:space:]]+snd-card-[[:digit:]]" | tr -s "[[:blank:]]" " " | cut -d " " -f 3)
|
|
if [ ! "$DRIVERS" = "" ]; then
|
|
echo "Loading ALSA kernel modules."
|
|
for module in $DRIVERS; do
|
|
modprobe $module
|
|
done
|
|
fi
|
|
# If ALSA is now up, then load the mixer settings and OSS modules (if enabled):
|
|
if [ -d /proc/asound ]; then
|
|
if [ -x /etc/rc.d/rc.alsa-oss ]; then
|
|
sh /etc/rc.d/rc.alsa-oss
|
|
fi
|
|
load_alsa_mixer
|
|
fi
|
|
fi
|