#!/bin/sh CWD=`pwd` TMP=/tmp PKG=$TMP/package-kdebase # Set the config option variables if they are not already set: if [ -r ../KDE.options ]; then . ../KDE.options fi # The global options may be overridden here (if needed): if [ -r ./local.options ]; then . ./local.options fi rm -rf $PKG mkdir -p $PKG/usr # Avoid a version number in .la files: if [ -d /opt/kde/lib${LIBDIRSUFFIX}/qt3 ]; then QTDIR=/opt/kde/lib${LIBDIRSUFFIX}/qt3 fi cd $TMP echo "Building kdebase-$VERSION.tar.bz2..." tar xjvf $CWD/../src/kdebase-$VERSION.tar.bz2 || exit 1 cd kdebase-$VERSION || exit 1 if [ -r $CWD/apply-patches.sh ]; then . $CWD/apply-patches.sh fi chown -R root:root . CFLAGS=$CPUOPT \ CXXFLAGS=$CPUOPT \ ./configure \ --prefix=/opt/kde \ --sysconfdir=/etc/opt/kde \ --with-shadow \ --with-xinerama \ --enable-debug \ --build=$TARGET-slackware-linux make $NUMJOBS || exit 1 make install DESTDIR=$PKG # Move the KDM files someplace FHS compliant: mkdir -p $PKG/etc/opt/kde mv $PKG/opt/kde/share/config/kdm $PKG/etc/opt/kde ( cd $PKG/opt/kde/share/config ; ln -sf ../../../../etc/opt/kde/kdm . ) ### !!! KLUDGE ALERT !!! ### ### CAUSES ARTS TO NOT USE REALTIME PRIORITY BY DEFAULT, WORKING AROUND A LOGOUT HANG ### ### THIS SHOULD BE RECONSIDERED WITH EACH KDEBASE RELEASE! ### cat $CWD/kludge/kcmartsrc > $PKG/opt/kde/share/config/kcmartsrc ### !!! KLUDGE ALERT !!! ### mkdir -p $PKG/usr/doc/kdebase-$VERSION cp -a \ AUTHORS COPYING INSTALL README kdebase.lsm \ $PKG/usr/doc/kdebase-$VERSION mkdir -p $PKG/etc/X11/xinit $PKG/etc/profile.d cat $CWD/xinit/xinitrc.kde > $PKG/etc/X11/xinit/xinitrc.kde cat $CWD/profile.d/kde.sh > $PKG/etc/profile.d/kde.sh cat $CWD/profile.d/kde.csh > $PKG/etc/profile.d/kde.csh chmod 755 $PKG/etc/X11/xinit/xinitrc.kde $PKG/etc/profile.d/kde.sh $PKG/etc/profile.d/kde.csh # Change the konsole defaults to look like the real Linux console: cat $CWD/config/konsolerc > $PKG/opt/kde/share/config/konsolerc chmod 644 $PKG/opt/kde/share/config/konsolerc # Make konsole a login shell by default: cat $CWD/config/konsole.desktop > $PKG/opt/kde/share/applications/kde/konsole.desktop chmod 644 $PKG/opt/kde/share/applications/kde/konsole.desktop # set sane defaults for antialiasing: if [ ! -e $PKG/opt/kde/share/config/kdeglobals ]; then cat $CWD/config/kdeglobals > $PKG/opt/kde/share/config/kdeglobals chmod 644 $PKG/opt/kde/share/config/kdeglobals else # This might be fixed or unsafe. Better check it out... echo echo "BAILOUT: kdeglobals already exists. Check to see if anti-aliased" echo " fonts work out-of-the-box now..." echo exit 1 fi # Setup config files for KDM: $PKG/opt/kde/bin/genkdmconf --no-old --no-old-scripts --no-backup --in $PKG/opt/kde/share/config/kdm # Not allowing root to login at the console is just plain silly. If they have physical access to # the machine, what's the point of trying to stop this? Even the kdmrc file says this is supposed # to be the default. cat $PKG/opt/kde/share/config/kdm/kdmrc | perl -pi -e 's|AllowRootLogin=false|AllowRootLogin=true|' > $PKG/opt/kde/share/config/kdm/kdmrc.new rm -f $PKG/opt/kde/share/config/kdm/kdmrc cp -a $PKG/opt/kde/share/config/kdm/Xsession $PKG/opt/kde/share/config/kdm/Xsession.orig cat $CWD/config/Xsession > $PKG/opt/kde/share/config/kdm/Xsession mv $PKG/opt/kde/share/config/kdm/backgroundrc $PKG/opt/kde/share/config/kdm/backgroundrc.new mkdir -p $PKG/install zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh cat $CWD/slack-desc > $PKG/install/slack-desc ( cd $PKG find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null ) if [ -d $PKG/usr/man ]; then gzip -9 $PKG/usr/man/man?/* fi cd $PKG makepkg -l y -c n ../kdebase-$VERSION-$ARCH-$BUILD.txz