makedist-openmamba/platforms/livecd-root/post.inc.sh
Silvan Calarco 5796d137c2 Fixes for rpm database problem when doing cross x86/x86_64 installations
Fixes: error: db4 error(-30986) from dbcursor->get: DB_PAGE_NOTFOUND: Requested page not found
2014-04-25 12:00:34 +02:00

73 lines
2.9 KiB
Bash

## don't activate some services
#rm -f $MOUNTDIR/etc/rcsysinit.d/{S35hdparm,S30loadmodules,S40swap}
#rm -f $MOUNTDIR/etc/rc*.d/{S12random,S13sysinit,S20network,S44acpid,S55sshd}
#rm -f $MOUNTDIR/etc/rc*.d/{K00splash,K01acpid,K90random,K96swap,K97network,K97udev,K98localnet}
# change inittab so it opens tty root shells instead of asking for login
#
echo "Forcing \`inittab' to open tty root shells with no login..."
sed -i 's,^1:.*,1:234:respawn:/sbin/mingetty --autologin root --loginpause --noclear tty1,' $MOUNTDIR/etc/inittab
sed -i 's,^\([2-3]\):.*,\1:2345:respawn:/sbin/mingetty --autologin root --loginpause --noclear tty\1,' $MOUNTDIR/etc/inittab
sed -i '/^[4-6]:.*/d' $MOUNTDIR/etc/inittab
# configure for runlevel 5 boot
sed -i "s|id:3\(:initdefault.*\)|id:5\1|" $MOUNTDIR/etc/inittab
# configure KDM for autologin
#
if [ -e $MOUNTDIR/opt/kde/share/config/kdm/kdmrc ]; then
sed -i 's|[#]*AutoLoginEnable=.*|AutoLoginEnable=true|' \
$MOUNTDIR/opt/kde/share/config/kdm/kdmrc
sed -i 's|[#]*AutoReLogin=.*|AutoReLogin=true|' \
$MOUNTDIR/opt/kde/share/config/kdm/kdmrc
sed -i 's|[#]*AutoLoginUser=.*|AutoLoginUser=liveuser|' \
$MOUNTDIR/opt/kde/share/config/kdm/kdmrc
fi
# FIXME: ensure alternatives are correclty set
chroot $MOUNTDIR update-alternatives-set-dri
# set timezone according to LANGUAGE (default is UTC)
#
case $LANGUAGE in
it) timezone=Europe/Rome ;;
es) timezone=Europe/Madrid ;;
*) timezone=UTC ;;
esac
echo $timezone > $MOUNTDIR/etc/timezone
cp $MOUNTDIR/usr/share/zoneinfo/$timezone $MOUNTDIR/etc/localtime
# configure favorites in kde menu
for f in /usr/share/applications/chromium-devel.desktop; do
chroot $MOUNTDIR /opt/kde/bin/kickoffcfg --add-favorite $f || exit 1
done
# clean rpm database before doing other operations with internal rpm
# to fix cross x86/x86_64 installation error:
# error: db4 error(-30986) from dbcursor->get: DB_PAGE_NOTFOUND: Requested page not found
clean_rpm_database
# pre-create video drivers for VirtualBox
virtualbox_ver=`ls -d $MOUNTDIR/usr/src/vboxvideo-* | sed "s|.*-||"`
for K in $KERNEL_EXTRAVER $KERNEL_MORE_EXTRAVER; do
chroot $MOUNTDIR dkms install -q -m vboxguest -v ${virtualbox_ver} -k ${KERNEL_MAJVER}$K --force
chroot $MOUNTDIR dkms install -q -m vboxvideo -v ${virtualbox_ver} -k ${KERNEL_MAJVER}$K --force
done
chroot $MOUNTDIR rpm -e VirtualBox-vboxguest dkms --noscripts
for K in $KERNEL_EXTRAVER $KERNEL_MORE_EXTRAVER; do
# remove kernel headers installed by dkms
chroot $MOUNTDIR smart remove kernel-${K}-headers -y
# remove unused initramfs generated by kernel
rm -f $MOUNTDIR/boot/initramfs-${KERNEL_MAJVER}${K}.img*
# remove failsafe image to save space for livecd
rm -f $MOUNTDIR/boot/initramfs-${KERNEL_MAJVER}${KERNEL_EXTRAVER}-failsafe.img*
done
# remove some documentation to save space on CD
for f in ChangeLog Changelog CHANGES TODO NEWS README README.txt; do
find $MOUNTDIR/usr/share/doc -name $f -exec rm -f {} \;
done
prelink