summaryrefslogtreecommitdiff
path: root/setup_native/scripts/update.sh
diff options
context:
space:
mode:
Diffstat (limited to 'setup_native/scripts/update.sh')
-rw-r--r--setup_native/scripts/update.sh195
1 files changed, 0 insertions, 195 deletions
diff --git a/setup_native/scripts/update.sh b/setup_native/scripts/update.sh
deleted file mode 100644
index 1b3785b38..000000000
--- a/setup_native/scripts/update.sh
+++ /dev/null
@@ -1,195 +0,0 @@
-#!/bin/sh
-
-GNOMEXCMDS="/usr/bin/gksu"
-GNOMECMDS="/usr/bin/gnome-terminal /opt/gnome/bin/gnome-terminal"
-KDEXCMDS="/usr/bin/kdesu /opt/kde/bin/kdesu /opt/kde?/bin/kdesu"
-KDECMDS="/usr/bin/konsole /opt/kde/bin/konsole /opt/kde?/bin/konsole"
-MISCCMDS="/usr/bin/x-terminal-emulator /usr/X11/bin/xterm /usr/openwin/bin/xterm"
-
-TITLE='${PRODUCTNAME} update'
-
-#
-# Usage
-#
-
-Usage () {
- if [ "`basename $0`" = "update" ]; then
- echo "Usage: `basename $0` [<path to ${PRODUCTNAME} installation>]"
- fi
- echo
- exit 2
-}
-
-make_tempfile() {
-
- # Always prefer mktemp when available
- if [ -x "$MKTEMP" ]; then
- "$MKTEMP" "/tmp/$1.XXXXXX"
- else
- TMPCMD="/tmp/$1.$$"
- touch $TMPCMD
- echo $TMPCMD
- fi
-
-}
-
-#
-# make_command_file - generate a command file to pass to xterm & co
-#
-run_in_terminal () {
-
- TMPCMD=`make_tempfile 'OpenOffice.org-Online-Update'`
-
- cat >> $TMPCMD
-
- cat >> $TMPCMD << \EOF
-if [ $? -eq 0 -a ! -z "$DISPLAY" ]; then
- echo
- echo "Press <Enter> to close this window"
- read DUMMY
-fi
-EOF
-
- cat >> $TMPCMD << EOF
-rm -f $TMPCMD
-EOF
-
- chmod a+x $TMPCMD
- exec "$@" -e $TMPCMD
-}
-
-#
-# run the command line passed as positional parameters either via
-# gksu/kdesu or via su command in a terminal emulator.
-#
-elevate() {
-
- TITLEOPT=""
- GEOMOPT=""
- case `basename $XTERM` in
- "xterm")
- TITLEOPT="-title"
- GEOMOPT="-geometry "
- ;;
- "gnome-terminal" | "konsole" | "x-terminal-emulator")
- TITLEOPT="--title"
- GEOMOPT="--geometry="
- ;;
- esac
-
- case `basename $SU` in
- "kdesu" )
- # --caption
- SUOPT="-t"
- ;;
- "gksu" )
- # --title
- SUOPT=""
- ;;
- "su" )
- SUOPT="- root -c"
- ;;
- esac
-
- ( echo "echo The application \"$@\" will update your ${PRODUCTNAME} installation."
- echo "echo"
- echo "$SU" "$SUOPT" "$@"
- ) | run_in_terminal "$XTERM" "$TITLEOPT" "$TITLE" ${GEOMOPT}+300+300
-}
-
-
-update_pkg() {
- ADMINFILE=`make_tempfile 'LibreOffice-Online-Update-admin'`
-
-cat >> $ADMINFILE << EOF
-action=nocheck
-conflict=nocheck
-setuid=nocheck
-idepend=nocheck
-rdepend=nocheck
-mail=
-EOF
-
- PKGLIST=""
- for i in `cd $1; ls -d *`; do
- pkginfo -q $i && PKGLIST="$PKGLIST $i"
- done
-
- pkgrm -n -a $ADMINFILE $PKGLIST
- pkgadd -n -a $ADMINFILE -d $1 $PKGLIST
-
- rm -f $ADMINFILE
-}
-
-#
-# main
-#
-
-CMD="`basename $0`"
-BASEDIR="`dirname $0`"
-ABSBASEDIR="`cd $BASEDIR; pwd`"
-
-if [ -z "$DISPLAY" ]; then
- SU="su"
- XTERM=""
-else
- # define search order depending on the desktop in use ..
- if [ "`uname -s`" = "SunOS" ]; then
- XPROP=/usr/openwin/bin/xprop
- GREP=/usr/xpg4/bin/grep
- MKTEMP=/usr/bin/mktemp
- else
- if [ -x /usr/X11/bin/xprop ]; then
- XPROP=/usr/X11/bin/xprop
- else
- XPROP=/usr/bin/xprop
- fi
- GREP=grep
- MKTEMP=/bin/mktemp
- fi
-
- # use desktop specific tools where possible, but prefer X11 su over terminal emulators
- if $XPROP -root | $GREP -q '^KWIN_RUNNING'; then
- SULIST="$KDEXCMDS $GNOMEXCMDS"
- XTERMLIST="$KDECMDS $MISCCMDS"
- else
- SULIST="$GNOMEXCMDS $KDEXCMDS"
- XTERMLIST="$GNOMECMDS $MISCCMDS"
- fi
-
- # search for the first available terminal emulator
- for i in $XTERMLIST; do
- if [ -x $i ]; then
- XTERM=$i
- break
- fi
- done
-
- # we prefer gksu or kdesu if available
- SU="su"
- for i in $SULIST; do
- if [ -x $i ]; then
- SU=$i
- break
- fi
- done
-fi
-
-if [ "$CMD" = "update" ]; then
- if [ $# -gt 0 ]; then
- [ -d $1 -a $# -eq 1 ] || Usage
- elevate "$ABSBASEDIR/$CMD"
- else
- if [ -d "$BASEDIR/RPMS" ]; then
- # do not use --hash as the control sequence to edit the current line does not work
- # in our setup (at least not with kdesu)
- rpm -v --freshen `find "$BASEDIR"/RPMS -name '*.rpm'`
- elif [ -d "$BASEDIR/DEBS" ]; then
- dpkg --install --selected-only --recursive "$BASEDIR"/DEBS
- elif [ -d "$BASEDIR/packages" ]; then
- update_pkg "$BASEDIR/packages"
- fi
- fi
-else
- Usage
-fi