#!/bin/sh # Build (and install) all KDE packages. # Written for Slackware by volkerdi@slackware.com. # Modified for KDE4 by Robby Workman # kdeaccessibility builds plugins for epos, festival, flite, freetts, and # hadifix, so they should work with kde if any of those are installed later # Set the config option variables if they are not already set: [ -r ./KDE.options ] && . ./KDE.options CWD=`pwd` REPOS="$CWD/../bins/" PKGVAR='/var/log/packages' [ ! -d $REPOS ] && mkdir -p $REPOS # This avoids compiling a version number into KDE's .la files: QTDIR=/usr/lib${LIBDIRSUFFIX}/qt ; export QTDIR # Get the kde environment variables [ -d kdebase ] && eval $(sed -e "s#/lib#/lib${LIBDIRSUFFIX}#" ./kdebase/profile.d/kde.sh) #UPGRADE="akonadi-1.2.1" echo -e "\e[33;1m\n\nUpgrade Packages...\n\n\e[m" for pkg in $UPGRADE; do pkgname=`echo $pkg | sed 's/\(^.*\)\-.*$/\1/'` pkgvervion=`echo $pkg | sed 's/\(^.*\)\-\(.*\)$/\2/'` if ! ls $PKGVAR/$pkg* >/dev/null; then cd $pkgname ( . ./$pkgname.SlackBuild ) if [ $? = 0 ]; then # Yes, I will build with the fresh packages installed: upgradepkg --install-new --reinstall /tmp/${pkgname}-*.txz # Keep MIME database current: /usr/bin/update-mime-database /usr/share/mime 1> /dev/null 2> /dev/null & rm -rf /tmp/package-${pkgname} /tmp/${pkgname}-$VERSION mv /tmp/${pkgname}-*.txz $REPOS/ else echo "${pkgname} failed to build." exit 1 fi cd - ; else echo -e "\e[33;1m\n\nSkip $pkgname ...\n\n\e[m" fi done KDEMODS=" \ kdelibs \ kdelibs-experimental \ kdepimlibs \ kdebase \ kdebase-workspace \ kdebase-runtime \ kdesdk \ kdevplatform \ kdegraphics \ kdebindings \ kdebase-workspace \ kdeaccessibility \ kdeutils \ kdemultimedia \ kdenetwork \ oxygen-icons \ kdeadmin \ kdeartwork \ kdegames \ kdetoys \ kdepim \ kdepim-runtime \ kdeedu \ kdewebdev \ kdeplasma-addons \ kdevelop \ konq-plugins \ guidance-power-manager \ ktorrent \ skanlite \ koffice \ kaudiocreator \ amarok \ kopete-cryptography " # # Allow for specification of individual packages to be built: if [ -z "$1" ]; then MODQUEUE=$KDEMODS else MODQUEUE=$* fi echo -e "\n\n\e[33;1mBuild/install kde $VERSION...\n\n\e[m" # Yes, we know kdebase-workspace is built twice. kdebase needs the # plasma bits from it, and then we build it again for good measure... for module in $MODQUEUE; do if ! eval "ls /var/log/packages/$module-*| grep -E '.*$module\-(r[0-9]|[0-9]).*\$'" >/dev/null 2>/dev/null; then cd $module ( . ./$module.SlackBuild ) if [ $? = 0 ]; then # Yes, I will build with the fresh packages installed: upgradepkg --install-new --reinstall /tmp/${module}-*.txz # Keep MIME database current: /usr/bin/update-mime-database /usr/share/mime 1> /dev/null 2> /dev/null & rm -rf /tmp/package-${module} /tmp/${module}-$VERSION mv /tmp/${module}-*.txz $REPOS/ else echo "${module} failed to build." exit 1 fi cd - ; else echo -e "\e[33;1m\n\nSkip $module ...\n\n\e[m" fi done OTHERS="\ k3b \ kphotoalbum" # Yes, we know kdebase-workspace is built twice. kdebase needs the # plasma bits from it, and then we build it again for good measure... for module in $OTHERS; do if ! eval "ls /var/log/packages/$module-*| grep -E '.*$module\-(r[0-9]|[0-9]).*\$'" >/dev/null 2>/dev/null; then cd $module cp ../src/extragear/$module-[0-9]*.xz . ( . ./$module.SlackBuild ) if [ $? = 0 ]; then # Yes, I will build with the fresh packages installed: upgradepkg --install-new --reinstall /tmp/${module}-*.txz # Keep MIME database current: /usr/bin/update-mime-database /usr/share/mime 1> /dev/null 2> /dev/null & rm -rf /tmp/package-${module} /tmp/${module}-$VERSION else echo "${module} failed to build." exit 1 fi rm $module-[0-9]*.xz cd - ; else echo -e "\e[33;1m\n\nSkip $module ...\n\n\e[m" fi done