Sophie

Sophie

distrib > Mandriva > 2006.0 > i586 > media > main-src > by-pkgid > a6bc312ce50b5c8d0c51736e58ac32bc > files > 4

kdebase-3.4.2-55mdk.src.rpm

#!/bin/sh

# (c) 2001, 2002 - MandrakeSoft, David BAUDENS <baudens@mandrakesoft.com>
# Copyright under GPL version 2

# Basic script for KDE Desktop configuration

#rm -fr $HOME/Desktop
#mkdir $HOME/Desktop

# TODO: define removablemedia using translations
#removablemedia="Removable media"
#mkdir -p "$HOME/Desktop/$removablemedia"

#cp -f $HOME/removable-media-directory "$HOME/Desktop/$removablemedia/.directory"


if [ ! -d $HOME/Desktop ]; then
        mkdir -p $HOME/Desktop
fi


if [ ! -e $HOME/Desktop/.directory ]; then
        cp -f /usr/share/mdk/kde/directory-desktop $HOME/Desktop/.directory
fi


# Removable media
if [ ! -e ~/Desktop/.md5sumetcfstab ] || [ $(md5sum -c ~/Desktop/.md5sumetcfstab | awk '{print $2}') != OK ]; then
	   
	   # CD-ROM
	   for i in $(grep cdrom /etc/fstab | grep -v ^# | awk '{print $1 $2 $3 $4}'); do
		   if [ $(echo $i | grep supermount) ] ; then
			   supermount=1
			   dev=$(echo $i | awk -F, '{print $2}' | sed -e 's/dev=//')
			   i=$(echo $i | sed -e 's/supermount.*//')
		   else supermount=0
			   i=$(echo $i | sed -e 's/adfs.*//;s/affs.*//;s/auto.*//;s/coherent.*//;s/cramfs.*//;s/efs.*//;s/ext.*//;s/ext2.*//;s/ext3.*//;s/hfs.*//;s/hpfs.*//;s/iso9660.*//;s/jfs.*//;s/minix.*//;s/msdos.*//;s/ncpfs.*//;s/ntfs.*//;s/qnx4.*//;s/reiserfs.*//;s/romfs.*//;s/sysv.*//;s/tmpfs.*//;s/udf.*//;s/ufs.*//;s/umsdos.*//;s/vfat.*//;s/xenix.*//;s/xfs.*//;s/xiafs.*//')
			   dev=$(echo $i | sed -e 's/\/mnt.*//')
		   fi

		   template="/usr/share/templates/.source/CDROM-Device.desktop"
		   mountpoint=$(echo $i | sed -e 's/.*\/mnt/\/mnt/')
		   name=$(echo $i | sed -e 's/.*cdrom/cd-rom/' | tr '[a-z]' '[A-Z]')
		   # output="$HOME/Desktop/$removablemedia/$name"
		   output="$HOME/Desktop/$name"

		   if [ $supermount = 0 ] && [ ! -e $HOME/Desktop/.$name ]; then
			   perl -pi -e "s|MountPoint=|MountPoint=$mountpoint|;s|Dev=|Dev=$dev|" < $template > $output
			   touch $HOME/Desktop/.$name
		   elif [ $supermount = 1 ] && [ ! -e $HOME/Desktop/.$name ]; then
			   perl -pi -e "s|^[F;M;R;T;U].*\n||;s|Dev=\n|Dev=$dev\nType=Link\nURL=$mountpoint\n|" < $template > $output
			   touch $HOME/Desktop/.$name
		   fi

	   done


	   # Floppy
	   for i in $(grep floppy /etc/fstab | grep -v ^# | awk '{print $1 $2 $3 $4}'); do
		   if [ $(echo $i | grep supermount) ] ; then
			   supermount=1
			   dev=$(echo $i | awk -F, '{print $2}' | sed -e 's/dev=//')
			   i=$(echo $i | sed -e 's/supermount.*//')
		   else supermount=0
			   i=$(echo $i | sed -e 's/adfs.*//;s/affs.*//;s/auto.*//;s/coherent.*//;s/cramfs.*//;s/efs.*//;s/ext.*//;s/ext2.*//;s/ext3.*//;s/hfs.*//;s/hpfs.*//;s/iso9660.*//;s/jfs.*//;s/minix.*//;s/msdos.*//;s/ncpfs.*//;s/ntfs.*//;s/qnx4.*//;s/reiserfs.*//;s/romfs.*//;s/sysv.*//;s/tmpfs.*//;s/udf.*//;s/ufs.*//;s/umsdos.*//;s/vfat.*//;s/xenix.*//;s/xfs.*//;s/xiafs.*//')
			   dev=$(echo $i | sed -e 's/\/mnt.*//')
		   fi

		   template="/usr/share/templates/.source/Floppy.desktop"
		   mountpoint=$(echo $i | sed -e 's/.*\/mnt/\/mnt/')
		   name=$(echo $i | sed -e 's/.*floppy/Floppy/')
		   # output="$HOME/Desktop/$removablemedia/$name"
		   output="$HOME/Desktop/$name"

		   if [ $supermount = 0 ] && [ ! -e $HOME/Desktop/.$name ]; then
			   perl -pi -e "s|MountPoint=|MountPoint=$mountpoint|;s|Dev=|Dev=$dev|" < $template > $output
			   touch $HOME/Desktop/.$name
		   elif [ $supermount = 1 ] && [ ! -e $HOME/Desktop/.$name ]; then
			   perl -pi -e "s|^[F;M;R;T;U].*\n||;s|Dev=\n|Type=Link\nURL=$mountpoint\n|" < $template > $output
			   touch $HOME/Desktop/.$name
		   fi

	   done

	   
	   # Zip
	   for i in $(grep zip /etc/fstab | grep -v ^# | awk '{print $1 $2 $3 $4}'); do
		   if [ $(echo $i | grep supermount) ] ; then
			   supermount=1
			   template="/usr/share/mdk/kde/Zip.desktop"
			   dev=$(echo $i | awk -F, '{print $2}' | sed -e 's/dev=//')
			   i=$(echo $i | sed -e 's/supermount.*//')
		   else supermount=0
			   template="/usr/share/mdk/kde/Zip2.desktop"
			   i=$(echo $i | sed -e 's/adfs.*//;s/affs.*//;s/auto.*//;s/coherent.*//;s/cramfs.*//;s/efs.*//;s/ext.*//;s/ext2.*//;s/ext3.*//;s/hfs.*//;s/hpfs.*//;s/iso9660.*//;s/jfs.*//;s/minix.*//;s/msdos.*//;s/ncpfs.*//;s/ntfs.*//;s/qnx4.*//;s/reiserfs.*//;s/romfs.*//;s/sysv.*//;s/tmpfs.*//;s/udf.*//;s/ufs.*//;s/umsdos.*//;s/vfat.*//;s/xenix.*//;s/xfs.*//;s/xiafs.*//')
			   dev=$(echo $i | sed -e 's/\/mnt.*//')
		   fi

		   mountpoint=$(echo $i | sed -e 's/.*\/mnt/\/mnt/')
		   name=$(echo $i | sed -e 's/.*zip/Zip/')
		   # output="$HOME/Desktop/$removablemedia/$name"
		   output="$HOME/Desktop/$name"

		   if [ $supermount = 0 ] && [ ! -e $HOME/Desktop/.$name ]; then
			   perl -pi -e "s|MountPoint=.*|MountPoint=$mountpoint|;s|Dev=.*|Dev=$dev|" < $template > $output
			   touch $HOME/Desktop/.$name
		   elif [ $supermount = 1 ] && [ ! -e $HOME/Desktop/.$name ]; then
			   #perl -pi -e "s|^[F;M;R;T;U].*\n||;s|Dev=\n|Type=Link\nURL=$mountpoint\n|" < $template > $output
			   perl -pi -e "s|^URL=.*|URL=$mountpoint|" < $template > $output
			   touch $HOME/Desktop/.$name
		   fi
	   done
 
fi

if [ ! -e $HOME/Desktop/.md5sumetcfstab ]; then
	md5sum /etc/fstab > $HOME/Desktop/.md5sumetcfstab
fi


# CDCOM
if [ ! -e $HOME/Desktop/.cdcom ] && [ -r /usr/share/mdk/cdcom/index.html ]; then
	cp -f /usr/share/mdk/cdcom/cdcom-kde.desktop $HOME/Desktop/cdcom.desktop
	touch $HOME/Desktop/.cdcom
fi

# Control Center
if [ ! -e $HOME/Desktop/.ccenter ] && [ -x /usr/X11R6/bin/DrakConf ]; then
	cp -f /usr/share/mdk/kde/Mandrake\ Control\ Center.desktop $HOME/Desktop/
	touch $HOME/Desktop/.ccenter
fi


# Home directory
if [ ! -e $HOME/Desktop/.home ]; then
	cp -f /usr/share/apps/kdesktop/DesktopLinks/Home.desktop $HOME/Desktop/
	touch $HOME/Desktop/.home
fi


# TODO: Use a more explicit name
# Internet icon
if [ ! -e $HOME/Desktop/.internet ] && [ -x /usr/sbin/draknet ]; then
	cp -f /usr/share/mdk/kde/Connection-to-Internet.desktop $HOME/Desktop/internet.desktop
	touch $HOME/Desktop/.internet
fi


# TODO: Rename as 'Mandrake documentation'
# Mandrake Documentation
langg=$(cat /etc/sysconfig/i18n | grep ^LANG= | sed -e 's/LANG=//;s/de.*/de/;s/en.*/en/;s/es.*/es/;s/fr.*/fr/;s/it/it/')
if [ ! -e $HOME/Desktop/.doc ]; then
	if [ $langg = de ] && [ -r /usr/share/doc/mandrake/de/index.html ]; then
                cp -f /usr/share/mdk/kde/Documentation-de.desktop $HOME/Desktop/Mandrake\ Documentation.desktop
		touch $HOME/Desktop/.doc
        elif [ $langg = es ] && [ -r /usr/share/doc/mandrake/es/index.html ]; then
                cp -f /usr/share/mdk/kde/Documentation-es.desktop $HOME/Desktop/Mandrake\ Documentation.desktop
		touch $HOME/Desktop/.doc
        elif [ $langg = fr ] && [ -r /usr/share/doc/mandrake/fr/index.html ]; then
                cp -f /usr/share/mdk/kde/Documentation-fr.desktop $HOME/Desktop/Mandrake\ Documentation.desktop
		touch $HOME/Desktop/.doc
        elif [ $langg = it ] && [ -r /usr/share/doc/mandrake/it/index.html ] ; then
                cp -f /usr/share/mdk/kde/Documentation-it.desktop $HOME/Desktop/Mandrake\ Documentation.desktop
		touch $HOME/Desktop/.doc
        elif [ $langg = en ] || [ -z $langg ] && [ -r /usr/share/doc/mandrake/en/index.html ] ; then
                cp -f /usr/share/mdk/kde/Documentation.desktop $HOME/Desktop/Mandrake\ Documentation.desktop
		touch $HOME/Desktop/.doc
        elif [ -r /usr/share/doc/mandrake/en/index.html ] ; then
                cp -f /usr/share/mdk/kde/Documentation.desktop $HOME/Desktop/Mandrake\ Documentation.desktop
		touch $HOME/Desktop/.doc
        fi
fi


# Mandrake Expert
if [ ! -e $HOME/Desktop/.mdkexpert ]; then
	cp -f /usr/share/mdk/kde/Mandrake\ Expert.desktop $HOME/Desktop/
	touch $HOME/Desktop/.mdkexpert
fi


# Mandrake Online
if [ ! -e ~/Desktop/.mdkonline ] && [ -e /usr/share/applnk-mdk/Configuration/Other/Mandrake\ Online.desktop ]; then
    cp /usr/share/applnk-mdk/Configuration/Other/Mandrake\ Online.desktop ~/Desktop/
    touch ~/Desktop/.mdkonline
fi


# Mandrake Store
if [ ! -e $HOME/Desktop/.mdkstore ]; then
	cp -f /usr/share/mdk/kde/Mandrake\ Store.desktop $HOME/Desktop/
	touch $HOME/Desktop/.mdkstore
fi


# Trash
#cp /usr/share/apps/kdesktop/directory.trash $HOME/Desktop/


# TODO: Use a more explicit name
# Xkill
if [ ! -e $HOME/Desktop/.xkill ]; then
	cp -f /usr/share/mdk/kde/XKill.desktop $HOME/Desktop/
	touch $HOME/Desktop/.xkill
fi

#sleep 2s

/usr/bin/ArrangeIcons