Mercurial > mplayer.hg
view TOOLS/install-w32codecs.sh @ 26763:c13288eeb9f6
Add support for AppleIR Remote as an input under Linux systems.
This requires Linux 2.6 with evdev and appleir drivers.
The keymapping is done to mimics the one that was done for MacOSX.
WARNING: Most distributions do not seems to bother and only let root
access to the device. Modify udev rules accordingly if you want regular
user to be able to use the remote.
author | ben |
---|---|
date | Sun, 18 May 2008 11:53:00 +0000 |
parents | 0432c831819d |
children |
line wrap: on
line source
#!/bin/sh set -e # This script will download binary codecs for MPlayer unto a Debian system. # Author: thuglife, mennucc1 # CODECDIR=/usr/lib/codecs PREFDIR=/var/lib/mplayer/prefs MYSITE='http://people.debian.org/~mennucc1/mplayer' dpkgarch=$(dpkg --print-installation-architecture) [ -d $PREFDIR ] || mkdir -v $PREFDIR [ -d $CODECDIR ] || mkdir -v $CODECDIR cd $CODECDIR [ -d mplayer_binary_codecs ] || mkdir -v mplayer_binary_codecs choosemirror () { cd $PREFDIR #if [ ! -r mirrors ] || find mirrors -mtime +20 ; then echo Downloading mirrors list.. wget -nv -c -N $MYSITE/mirrors || true #fi if [ ! -r bestsites ] || [ mirrors -nt bestsites ] || \ find bestsites -mtime +20 > /dev/null ; then if which netselect > /dev/null ; then echo Choosing best mirrors using netselect.... netselect -s 5 $( cat mirrors ) | awk '{print $2}' > bestsites elif which fping > /dev/null ; then fping -C 1 $( sed 's#.*//##;s#/.*##' mirrors ) 2>&1 | \ egrep -v 'bytes.*loss' | sort -n -k3 | \ grep -v ': *-' | awk '/:/{print $1}' | head -5 > bestsites else echo "(If you install 'netselect', it will select the best mirror for you" echo " you may wish to stop this script and rerun after installation)" sleep 5 head -3 mirrors > bestsites fi fi } INSTALL () { filename="$3" dir="$2" url="$1" cd $CODECDIR/mplayer_binary_codecs if [ -r $filename ] ; then cp $filename $filename.bak fi if [ "$url" = @MAINSITE@ ] ; then cat $PREFDIR/bestsites | while read mainsite ; do echo Downloading $filename from $mainsite ... wget -v -c -N $mainsite/$dir/$filename || true if [ -r "$filename" ] ; then UNPACK "$filename" [ -r $filename.bak ] && rm $filename.bak return 0 fi done else wget -v -c -N $url/$dir/$filename || true if [ -r "$filename" ] ; then UNPACK "$filename" [ -r $filename.bak ] && rm $filename.bak return 0 fi fi } UNPACK () { filename="$1" if [ ! -r $filename.bak ] || ! cmp $filename.bak $filename ; then echo Installing $filename ... if [ -r $filename.list ] ; then tr '\n' '\000' < $filename.list | xargs -r0 rm || true UNLINK $filename.list rm $filename.list fi case "$filename" in *.tar.gz) tar xvzf $filename > $filename.list #rm $filename ;; *.tgz) tar xvzf $filename > $filename.list #rm $filename ;; *.tar.bz2) tar --bzip2 -xvf $filename > $filename.list #rm $filename ;; esac LINK $filename.list echo "Installed $filename Succesfully!" fi } LINK () { cd $CODECDIR/ cat $CODECDIR/mplayer_binary_codecs/$1 | while read f ; do ln -sbf mplayer_binary_codecs/"$f" . done } UNLINK () { ### FIXME # cd $CODECDIR # cat $CODECDIR/mplayer_binary_codecs/$1 | while f do # ln -sbf mplayer_binary_codecs/"$f" # done if which symlinks > /dev/null ; then symlinks -d $CODECDIR fi } if [ `whoami` != root ]; then echo "You must be 'root' to use this script. Login as root first!" exit 1 fi case "$1" in install) choosemirror cd $PREFDIR #if [ ! -r codecs_list ] || find codecs_list -mtime +20 ; then echo 'Getting codecs list ...' wget -nv -c -N $MYSITE/codecs_list || true #fi if grep -q "^$dpkgarch" $PREFDIR/codecs_list ] ; then egrep -v "^[[:space:]]*(#|$)" $PREFDIR/codecs_list | \ while read arch url dir file info ; do if [ "$dpkgarch" = "$arch" ]; then echo Installing $file $info... INSTALL "$url" "$dir" "$file" n=1 fi done else echo "Sorry, no codecs for your arch '$dpkgarch'. Sorry dude :(" exit 1 fi ;; uninstall) cd $CODECDIR/ rm -rf mplayer_binary_codecs #FIXME we need a better clean system if which symlinks > /dev/null ; then symlinks -d . else echo "please install the package 'symlinks' and run 'symlinks -d $CODECDIR' " fi echo "Uninstalled Succesfully!" ;; *) echo "Usage: {install|uninstall}" echo "This program will install binary codecs for MPlayer." exit 1 ;; esac exit 0