Asus W3N-Kompendium: Ubuntu Sondertasten
Aus Wikibooks
Inhaltsverzeichnis |
[Bearbeiten] Sondertasten unter (K)Ubuntu 5.10
In (K)Ubuntu 5.10 wurden die Tasten auf einzelne Dateien verteilt.
Beispiel Stop-Taste für xmms & amarok:
/etc/acpi/stopbtn.sh
#!/bin/bash
. /etc/default/acpi-support
. /usr/share/acpi-support/power-funcs
getXconsole;
if [ x"$XAUTHORITY" != x"" ]; then
# acpi_fakekey 164
user=`who| grep " :0" | awk '{print $1}'`
if ps -Af | grep '[x]mms'
then
su $user -c "export DISPLAY=:0.0; /usr/bin/xmms -s &"
else
su $user -c "export DISPLAY=:0.0; /usr/bin/amarok -s &"
fi
fi
[Bearbeiten] Sondertasten unter (K)Ubuntu 5.04
[Bearbeiten] Beschreibung der Tasten
- Fn + F10
- Mute (Lautlos) Taste, die Master Lautstärke wird aus-/eingeschaltet
/usr/bin/amixer set Master toggle
- Fn + F11
- Leiser Taste, die Master Lautstärke wird verringert
/usr/bin/amixer set Master 1-
- Fn + F12
- Lauter Taste, die Master Lautstärke wird erhöht
/usr/bin/amixer set Master 1+
- CD-Taste (links)
- hier belegt mit CD auswerfen
eject cdrom
- Zurück Taste (links)
- zurück bei Programm xmms
- man-Eintrag -r, --rew Skip backwards in playlist.
- username durch den Benutzernamen des Hauptbenutzers ersetzen (gilt auch für folgende Befehle)
su - username -c "/usr/bin/xmms -r &"
- Stop Taste (links)
- stop bei Programm xmms
- man-Eintrag -s, --stop Stop current song.
su - username -c "/usr/bin/xmms -s &"
- Play/Pause Taste (links)
- spielen/anhalten bei Programm xmms
- man-Eintrag -t, --play-pause Pause if playing, play otherwise.
su - username -c "/usr/bin/xmms -t &"
- Vorwärts Taste (links)
- vorwärts bei Programm xmms
- man-Eintrag -f, --fwd Skip forward in playlist.
su - username -c "/usr/bin/xmms -f &"
- Web Taste (rechts); Browser wird gestartet
su - username -c "mozilla-firefox --display=:0.0"
- WiFi button (rechts) bzw Fn + F2
- WLAN wird ein-/ausgeschaltet und die Status-LED wird angepasst
/etc/acpi/wireless.sh
- Speed button (rechts oben erste Taste)
- Umschalten zwischen den powersave (600MHz) und ondemand (600-1700MHz)
/etc/acpi/speed.sh
[Bearbeiten] Skripte
[Bearbeiten] Hotkey aktivieren
/etc/acpi/events/hotkey
event=hotkey ATKD .*
action=/etc/acpi/actions/hotkey.sh %e
[Bearbeiten] Festlegen der Aktionen
/etc/acpi/actions/hotkey.sh
#!/bin/bash
#Benutzer feststellen
user=`who| grep " :0" | awk '{print $1}'`
case "$3" in
# Mute button
00000032) /usr/bin/amixer set Master toggle
;;
# Volume up button
00000030) /usr/bin/amixer set Master 1+
;;
# Volume down button
00000031) /usr/bin/amixer set Master 1-
;;
# Rewind button
00000040) su - $user -c "/usr/bin/xmms -r &"
;;
# Stop button
00000043) su - $user -c "/usr/bin/xmms -s &"
;;
# Play/pause button
00000045) su - $user -c "/usr/bin/xmms -t &"
;;
# Forward button
00000041) su - $user -c "/usr/bin/xmms -f &"
;;
# CD-player ON/OFF button (I use it to eject the cdrom)
0000004c) eject cdrom
;;
# Web button
00000051) su - $user -c "mozilla-firefox --display=:0.0"
;;
# WiFi button
0000005d) /etc/acpi/wireless.sh
;;
# Speed button
0000005c) /etc/acpi/speed.sh
;;
*) logger "ACPI hotkey $3 is not defined"
;;
esac
/etc/acpi/wireless.sh
#!/bin/bash
# Find and enable/disable wireless devices
for DEVICE in /sys/class/net/*; do
if [ -d $DEVICE/wireless ]; then
# $DEVICE is a wireless device. Check if it's powered on:
if [ `cat $DEVICE/device/power/state` = 0 ]; then
# It's powered on. Switch it off.
( echo -n 3 > $DEVICE/device/power/state;
# WLAN LED off
echo -n 0 > /proc/acpi/asus/wled;
);
else
# It's powered off. Switch it on.
( echo -n 0 > $DEVICE/device/power/state;
# WLAN LED on
echo -n 1 > /proc/acpi/asus/wled;
);
fi
fi
done
[Bearbeiten] WLAN Status-LED
Status der WLAN-LED nach Booten und Suspend festlegen
/etc/init.d/wled.sh
#!/bin/bash
# enable/disable WLAN LED
for DEVICE in /sys/class/net/*; do
if [ -d $DEVICE/wireless ]; then
# $DEVICE is a wireless device. Check if it's powered on:
if [ `cat $DEVICE/device/power/state` = 0 ]; then
# It's powered on. LED on.
echo -n 1 > /proc/acpi/asus/wled;
else
# It's powered off. LED off.
echo -n 0 > /proc/acpi/asus/wled;
fi
fi
done
Status nach Suspend /etc/acpi/resume.sh (Zusatz am Ende)
... . /etc/init.d/wled.sh
Status beim Booten
/etc/rc2.d/S70wled -> ./../init.d/wled.sh
[Bearbeiten] CPU Geschwindigkeit einstellen
Umschalten zwischen den powersave (600MHz) und ondemand (600-1700MHz)
cat /etc/acpi/speed.sh
#!/bin/bash
var=$(cat /proc/cpufreq)
if [ -z "${var#*powersave*}" ]; then
( # von powersave nach ondemand wechseln
echo "0%0%100%ondemand" > /proc/cpufreq;
logger "powersave -> ondemand";
)
else
( # von ondemand nach powersave wechseln
echo "0%35%35%powersave" > /proc/cpufreq;
logger "ondemand -> powersave";
)
fi
[Bearbeiten] Link mit Infos
http://m6n.ath.cx/forum/viewtopic.php?t=208

