# openmamba post installation script # Copyright (c) 2007-2010 by Silvan Calarco # # Released under the terms of the GNU GPLv3 License VERSION=0.3 TEXTDOMAIN=mambabase TEXTDOMAINDIR=/opt/kde3/share/locale/ INSTALL_DATE=`date +%Y%m%d-%H%M` INPUT_FILE=~/.mambabase.conf LOG_FILE=/var/log/install-mamba-$INSTALL_DATE.log KERNEL_RELEASE=`uname -r` PROGRESS_POS=0 PKGGROUPS_DB=/usr/share/openmamba/pkggroups.db tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/mamba-tempfile . $PKGGROUPS_DB function dcop_write() { [ "$DCOPID" ] && { [ $2 = -1 ] && PROGRESS_POS=$TOTAL_PROGRESS || PROGRESS_POS=`expr $PROGRESS_POS + $2` dcop $DCOPID KommanderIf setText progressText "$1" dcop $DCOPID KommanderIf setText progressBar $PROGRESS_POS } } function apt_parser() { while read line; do [ "$DCOPID" ] && { echo $line dcop $DCOPID KommanderIf setText progressText2 "$line" } done } [ "$1" = "-y" ] || { echo $"Warning: this script will perform an automatic installation erasing all the" echo $" contents of device $INSTALL_DEVICE; use $0 -y to actually start the" echo $" operation." exit 0 } function apt_get_parsed() { sudo smart $@ | apt_parser } DCOPID=$2 echo $"\ openmamba installation script - version $VERSION Copyright (c) 2007-2010 by Silvan Calarco " [ "$DCOPID" ] && dcop $DCOPID KommanderIf setChecked NextBox false dcop_write $"Starting installation..." 0 [ -r $INPUT_FILE ] || { echo $"Error: cannot read input file $INPUT_FILE; aborting." >&2 abort } . $INPUT_FILE TOTAL_PROGRESS=10 [ "$INSTALL_BASE" = "1" ] && TOTAL_PROGRESS=`expr $TOTAL_PROGRESS + 35` [ "$INSTALL_UPDATE" = "1" ] && TOTAL_PROGRESS=`expr $TOTAL_PROGRESS + 15` [ "$INSTALL_OFFICE" = "1" ] && TOTAL_PROGRESS=`expr $TOTAL_PROGRESS + 15` [ "$INSTALL_PLAYERS" = "1" ] && TOTAL_PROGRESS=`expr $TOTAL_PROGRESS + 15` [ "$INSTALL_MULTIMEDIA_EDITING" = "1" ] && TOTAL_PROGRESS=`expr $TOTAL_PROGRESS + 15` [ "$INSTALL_INTERNET" = "1" ] && TOTAL_PROGRESS=`expr $TOTAL_PROGRESS + 15` [ "$INSTALL_GRAPHICS" = "1" ] && TOTAL_PROGRESS=`expr $TOTAL_PROGRESS + 15` [ "$INSTALL_GAMES" = "1" ] && TOTAL_PROGRESS=`expr $TOTAL_PROGRESS + 15` [ "$INSTALL_VIRTUALIZATION" = "1" ] && TOTAL_PROGRESS=`expr $TOTAL_PROGRESS + 15` [ "$INSTALL_SERVER" = "1" ] && TOTAL_PROGRESS=`expr $TOTAL_PROGRESS + 15` [ "$INSTALL_DEVEL" = "1" ] && TOTAL_PROGRESS=`expr $TOTAL_PROGRESS + 15` [ "$INSTALL_FLASH" = "1" ] && TOTAL_PROGRESS=`expr $TOTAL_PROGRESS + 10` [ "$INSTALL_SKYPE" = "1" ] && TOTAL_PROGRESS=`expr $TOTAL_PROGRESS + 10` [ "$INSTALL_CODECS" = "1" ] && TOTAL_PROGRESS=`expr $TOTAL_PROGRESS + 10` [ "$INSTALL_MSTTCF" = "1" ] && TOTAL_PROGRESS=`expr $TOTAL_PROGRESS + 10` [ "$INSTALL_JRE" = "1" -o "$INSTALL_JDK" = "1" ] && TOTAL_PROGRESS=`expr $TOTAL_PROGRESS + 10` [ "$DCOPID" ] && dcop $DCOPID KommanderIf setMaximum progressBar $TOTAL_PROGRESS if [ "$INSTALL_BASE" = "1" ]; then echo $"Installing openmamba base packages" dcop_write $"Updating packages list..." 10 apt_get_parsed update dcop_write $"Removing packages that are no longer needed..." 10 rpm -q msysklogd >/dev/null && apt_get_parsed remove -y msysklogd # first time: remove mamba from user autostart [ -e /home/$USER/.kde/Autostart/mambabase.desktop ] && { rm -f /home/$USER/.kde/Autostart/mambabase.desktop [ -e /home/$USER/.kde/share/config/ktiprc ] && \ rm -f /home/$USER/.kde/share/config/ktiprc } [ -e /home/$USER/.kde4/Autostart/mambabase.desktop ] && \ rm -f /home/$USER/.kde4/Autostart/mambabase.desktop dcop_write $"Installing/updating openmamba base packages..." 15 rpm -q --whatprovides $BASE_PKGS >/dev/null || apt_get_parsed install -y $BASE_PKGS fi if [ "$INSTALL_UPDATE" = "1" ]; then echo $"Updating installed packages" dcop_write $"Updating installed packages..." 15 apt_get_parsed upgrade -y fi if [ "$INSTALL_OFFICE" = "1" ]; then echo $"Installing Office packages" dcop_write $"Installing/updating Office packages..." 15 rpm -q --whatprovides $OFFICE_PKGS >/dev/null || apt_get_parsed install -y $OFFICE_PKGS fi if [ "$INSTALL_PLAYERS" = "1" ]; then echo $"Installing Audio and Video players" dcop_write $"Installing/updating Audio and Video players..." 15 rpm -q --whatprovides $MULTIMEDIA_PLAYERS_PKGS >/dev/null || apt_get_parsed install -y $MULTIMEDIA_PLAYERS_PKGS fi if [ "$INSTALL_MULTIMEDIA_EDITING" = "1" ]; then echo $"Installing multimedia editing and production packages" dcop_write $"Installing/updating multimedia editing and production packages..." 15 rpm -q --whatprovides $MULTIMEDIA_EDITING_PKGS >/dev/null || apt_get_parsed install -y $MULTIMEDIA_EDITING_PKGS fi if [ "$INSTALL_INTERNET" = "1" ]; then echo $"Installing Internet packages" dcop_write $"Installing/updating Internet packages..." 15 rpm -q --whatprovides $INTERNET_PKGS >/dev/null || apt_get_parsed install -y $INTERNET_PKGS fi if [ "$INSTALL_GRAPHICS" = "1" ]; then echo $"Installing Graphics packages" dcop_write $"Installing/updating Graphics packages..." 15 rpm -q --whatprovides $GRAPHICS_PKGS >/dev/null || apt_get_parsed install -y $GRAPHICS_PKGS fi if [ "$INSTALL_GAMES" = "1" ]; then echo $"Installing Games packages" dcop_write $"Installing/updating Games packages..." 15 rpm -q --whatprovides $GAMES_PKGS >/dev/null || apt_get_parsed install -y $GAMES_PKGS fi if [ "$INSTALL_VIRTUALIZATION" = "1" ]; then echo $"Installing Virtualization packages" dcop_write $"Installing/updating Virtualization packages..." 15 rpm -q --whatprovides $VIRTUALIZATION_PKGS >/dev/null || apt_get_parsed install -y $VIRTUALIZATION_PKGS fi if [ "$INSTALL_SERVER" = "1" ]; then echo $"Installing Server packages" dcop_write $"Installing/updating Server packages..." 15 rpm -q --whatprovides $SERVER_PKGS >/dev/null || apt_get_parsed install -y $SERVER_PKGS fi if [ "$INSTALL_DEVEL" = "1" ]; then echo $"Installing openmamba packages" dcop_write $"Installing/updating Development packages..." 15 rpm -q --whatprovides $DEVEL_PKGS >/dev/null || apt_get_parsed install -y $DEVEL_PKGS fi if [ "$INSTALL_FLASH" = "1" ]; then echo $"Installing flash plugin" dcop_write $"Installing Flash plugin..." 10 konsole-nofork --background-mode -e /usr/share/openmamba/bin/netsrpm-install.sh flashplugin i586 echo $"Executing nspluginscan" nspluginscan rpm -q gnash && { echo $"Removing gnash" sudo rpm -e gnash } fi if [ "$INSTALL_CODECS" = "1" ]; then echo $"Installing win32 codecs" dcop_write $"Installing Win32 codecs..." 10 konsole-nofork --background-mode -e /usr/share/openmamba/bin/netsrpm-install.sh win32codecs i586 fi if [ "$INSTALL_MSTTCF" = "1" ]; then dcop_write $"Installing MS TrueType core fonts..." 10 konsole-nofork --background-mode -e /usr/share/openmamba/bin/netsrpm-install.sh msttcorefonts noarch fi if [ "$INSTALL_SKYPE" = "1" ]; then rpm -q libqt4 >/dev/null || apt_get_parsed install -y libqt4 dcop_write $"Installing Skype software..." 10 konsole-nofork --background-mode -e /usr/share/openmamba/bin/netsrpm-install.sh skype i586 fi if [ "$INSTALL_JDK" = "1" ]; then dcop_write $"Installing Sun Java Developers Kit..." 10 apt_get_parsed install -y $SUN_JAVA_PKGS elif [ "$INSTALL_JRE" = "1" ]; then dcop_write $"Installing Sun Java Runtime Environment..." 10 apt_get_parsed install -y $SUN_JAVA_RUNTIME_PKGS fi dcop_write $"Installation completed." -1 [ "$DCOPID" ] && { dcop $DCOPID KommanderIf setText progressText2 $"Press next to see the installation log and exit." dcop $DCOPID KommanderIf setChecked NextBox true } echo $"Installation completed." exit 0