changeset 27350:75dbde4f3a1d

Rename binary-codecs.sh once more to binary_codecs.sh as it is called in Debian.
author diego
date Thu, 31 Jul 2008 09:49:16 +0000
parents e5a937e0f8d2
children 4f0fa46528ff
files TOOLS/README TOOLS/binary-codecs.sh TOOLS/binary_codecs.sh
diffstat 3 files changed, 228 insertions(+), 184 deletions(-) [+]
line wrap: on
line diff
--- a/TOOLS/README	Thu Jul 31 09:36:18 2008 +0000
+++ b/TOOLS/README	Thu Jul 31 09:49:16 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
--- a/TOOLS/binary-codecs.sh	Thu Jul 31 09:36:18 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,181 +0,0 @@
-#!/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
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/TOOLS/binary_codecs.sh	Thu Jul 31 09:49:16 2008 +0000
@@ -0,0 +1,225 @@
+#!/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