Mercurial > mplayer.hg
changeset 27351:4f0fa46528ff
Revert previous broken rename of binary-codecs.sh that had random changes.
author | diego |
---|---|
date | Thu, 31 Jul 2008 22:38:34 +0000 |
parents | 75dbde4f3a1d |
children | e0aa87d3f88f |
files | TOOLS/README TOOLS/binary-codecs.sh TOOLS/binary_codecs.sh |
diffstat | 3 files changed, 184 insertions(+), 228 deletions(-) [+] |
line wrap: on
line diff
--- a/TOOLS/README Thu Jul 31 09:49:16 2008 +0000 +++ b/TOOLS/README Thu Jul 31 22:38:34 2008 +0000 @@ -429,15 +429,15 @@ which can be found at http://www.kyz.uklinux.net/cabextract.php3. -binary_codecs.sh +binary-codecs.sh Author: Andrea Menucci, thuglife Description: Downloads binary codecs from mplayerhq.hu and installs them on a Debian system. -Usage: binary_codecs.sh install - binary_codecs.sh uninstall +Usage: binary-codecs.sh install + binary-codecs.sh uninstall vobshift.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/TOOLS/binary-codecs.sh Thu Jul 31 22:38:34 2008 +0000 @@ -0,0 +1,181 @@ +#!/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
--- a/TOOLS/binary_codecs.sh Thu Jul 31 09:49:16 2008 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,225 +0,0 @@ -#!/bin/sh -set -e -umask 0022 - -# 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 -N $MYSITE/mirrors || true - #fi - if [ ! -r bestsites ] || [ mirrors -nt bestsites ] || \ - find bestsites -mtime +20 | grep -q bestsites ; then - if which netselect > /dev/null ; then - echo Choosing best mirrors using netselect.... - netselect -s 5 -t 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 | ( while read mainsite ; do - grep $mainsite $PREFDIR/mirrors ; done ) > bestsites - else - echo "(If you install 'netselect' or 'fping', it will select the best mirror for you" - echo " you may wish to stop this script and rerun after installation)" - sleep 3 - head -3 mirrors > bestsites - fi - fi - - #sometimes the above fails - if ! test -s bestsites ; then - head -3 mirrors > bestsites - 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 -c -N $mainsite/$dir/$filename || true - if [ -r "$filename" ] ; then - UNPACK "$filename" - return 0 - fi - done - else - wget -c -N $url/$dir/$filename || true - if [ -r "$filename" ] ; then - UNPACK "$filename" - return 0 - fi - fi -} - - - - -UNPACK () -{ - filename="$1" - if [ -r $filename.bak ] && cmp $filename.bak $filename && [ -r $filename.list ] ; then - echo It appears that $filename was already succesfully installed - [ -r $filename.bak ] && rm $filename.bak - else - if grep -q " $filename$" $PREFDIR/MD5SUMS ; then - echo Checking MD5 for $filename - grep " $filename$" $PREFDIR/MD5SUMS | md5sum -c - - else - echo Warning: no MD5 for $filename were found. Hit enter to continue. - read - fi - echo Installing $filename ... - if [ -r $filename.list ] ; then - tr '\n' '\000' < $filename.list | xargs -r0 rm || true - UNLINK $filename.list - rm $filename.list - fi - - tarfail () { echo FAILED $filename ; rm $filename.list ; exit 1 ; } - - case "$filename" in - *.tar.gz) - tar xvzf $filename > $filename.list || tarfail - #rm $filename - ;; - *.tgz) - tar xvzf $filename > $filename.list || tarfail - #rm $filename - ;; - *.tar.bz2) - tar --bzip2 -xvf $filename > $filename.list || tarfail - #rm $filename - ;; - esac - [ -r $filename.bak ] && rm $filename.bak - 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) - if test -x /bin/bzip2 || test -x /usr/bin/bzip2 ; then : ; else - echo You need to install bzip2 - exit 1 - fi - choosemirror - cd $PREFDIR - #if [ ! -r codecs_list ] || find codecs_list -mtime +20 ; then - echo 'Getting codecs list ...' - wget -nv -N $MYSITE/codecs_list || true - #fi - - cd $PREFDIR - echo Downloading MD5 sums from main site - [ -r MD5SUMS ] && mv MD5SUMS MD5SUMS.bak - if wget -nv -N http://www.mplayerhq.hu/MPlayer/releases/codecs/MD5SUMS ; then - [ -r MD5SUMS.bak ] && rm MD5SUMS.bak - else - echo failed... - if [ -r MD5SUMS.bak ] ; then - echo trying to use backup ... ; - mv MD5SUMS.bak MD5SUMS - fi - 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 Downloading and installing $file $info... - INSTALL "$url" "$dir" "$file" - fi - done - if test "$dpkgarch" = powerpc && ! test -r /usr/lib/libstdc++.so.5 ; then - echo 'Warning: you need to install libstdc++ 5 libraries' - echo -n 'Do it now? ' - read R - case $R in - y*) apt-get install libstdc++5 ;; - *) echo 'If you change your mind, use the command' - echo ' apt-get install libstdc++5' ;; - esac - fi - 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