This script is designed to remove any contribs that are not compatible with SME7, remove any unneeded rpms, and revert any updated rpms back to the recommended version. This script may need to be modified if you have more/less/different rpms installed. It could also be improved (if someone wishes to take on the task) to make it smarter, and detect if there are any non-standard rpms still installed at the end of the process. The first version of this script was posted to this bug here: http://sourceforge.net/tracker/index.php?func=detail&aid=1303356&group_id=96750&atid=615772 - please report any problems there, but try to fix them here first.

If you make any changes, please keep this changelog up to date:

#!/bin/sh

echo "Install yum - Press a key"
read answer
rpm -Uvh http://mirror.contribs.org/smeserver/releases/6.0.1/updates-common/i386/yum-1.0.3-7sme03.noarch.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/updates-common/i386/rpm-python-4.0.4-7x.18.i386.rpm

echo "Manually remove any files not installed by rpms (there may be more) - Press a key"
read answer
rm -f /etc/e-smith/templates-custom/etc/php.ini/50PathsDirectories

echo "clean yum cache - Press a key"
read answer
yum clean

echo "check yum updates - Press a key"
read answer
yum check-update

echo "remove any non-standard rpms with yum - Press a key"
read answer
yum remove \
amavis-ng \
apache-devel \
apache-manual \
arc \
clamav-es \
clamav-es-libs \
dcc-dccproc \
dmc-mitel-raidmonitor \
dungog-mailblocking \
dungog-proftpd-chroot \
e-smith-dhcpmanager \
e-smith-kronolith \
e-smith-lazy_admin_tools \
e-smith-mnemo \
e-smith-mod_perl \
e-smith-modindex \
e-smith-nag \
e-smith-phpmyadmin \
e-smith-securemail \
e-smith-smtp-authentication \
e-smith-ssl-imap \
e-smith-ssl-mailfront \
e-smith-ssl-popd \
e-smith-USA \
e-smith-userpanel \
kronolith \
lha \
mnemo \
nag \
openssl-devel \
openssl-perl \
perl-Archive-Tar \
perl-Archive-Zip \
perl-Compress-Zlib \
perl-Config-IniFiles \
perl-Convert-TNEF \
perl-Convert-UUlib \
perl-DateManip \
perl-File-MMagic \
perl-IO-stringy \
perl-libnet \
perl-MIME-tools \
perl-Net-Telnet \
perl-Parse-Syslog \
perl-razor-agents \
perl-Storable \
perl-TimeDate \
perl-Unicode-IMAPUtf7 \
perl-Unicode-String \
python2.3 \
qmail-bsmtp \
saco-mitel-isoqlog \
sme-antivirus \
sme-cache-windows \
sme-dhcp-dns \
smeserver-fetchmail \
smeserver-lprng-monitor \
smeserver-rkhunter \
smeserver-twig \
sme-server-update-system \
sme-spamfilter \
php-devel \
php-odbc \
php-snmp \
spamassassin-tools \
unarj \
unixODBC \
unrar \
wol \
zlib-devel \
zoo

echo "Install db1, and remove db4 and compat-glibc - Press a key"
read answer
yum install db1
rpm -e db4 compat-glibc

echo "Revert to mysql 3 - Press a key"
read answer
/etc/rc.d/rc7.d/S90mysqld stop
rpm -e --nodeps MySQL-devel MySQL-client MySQL-shared-compat
rpm -e --nodeps --noscripts MySQL-server
rpm -Uvh --replacefiles \
http://mirror.contribs.org/smeserver/releases/6.0.1/updates-common/i386/mysql-3.23.58-1.73.6.legacy.i386.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/updates-common/i386/mysql-devel-3.23.58-1.73.6.legacy.i386.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/updates-common/i386/mysql-server-3.23.58-1.73.6.legacy.i386.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/mysqlclient9-3.23.22-8.i386.rpm

echo "Replace any updated rpms with the standard version - Press a key"
read answer
rpm -Uvh --oldpackage \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/apache-1.3.27-2.i386.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/e-smith-imp-1.10.0-02.noarch.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/fetchmail-5.9.0-21.7.3.i386.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/gnupg-1.0.7-7.i386.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/horde-2.2.1-1es00.noarch.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/imp-3.2.1-2es01.noarch.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/mod_ssl-2.8.12-3.i386.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/perl-Mail-SpamAssassin-2.53-1.i386.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/php-4.1.2-7.3.6es1.i386.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/php-imap-4.1.2-7.3.6es1.i386.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/php-ldap-4.1.2-7.3.6es1.i386.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/php-mysql-4.1.2-7.3.6es1.i386.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/proftpd-1.2.9-es1.i386.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/rsync-2.5.4-2es1.i386.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/spamassassin-2.53-1.i386.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/turba-1.2-1es00.noarch.rpm \
http://mirror.contribs.org/smeserver/releases/6.0.1/os/e-smith/RPMS/zlib-1.1.4-8.7x.i386.rpm

echo "post-upgrade and reboot - Press a key"
read answer
/sbin/e-smith/signal-event post-upgrade
/sbin/e-smith/signal-event reboot