2011-05-19 16:02:37 +02:00
# execute platform specific script
[ -e $TARGETDIR /platforms/$PLATFORM /pre.inc.sh ] && . $TARGETDIR /platforms/$PLATFORM /pre.inc.sh
[ " $PRODUCT_NAME " ] && \
MEDIA_NAME = ` PLATFORM = $PRODUCT_NAME media_name` ||
MEDIA_NAME = ` media_name`
#if [ "$FORCE" = "1" -o ! -e "$LOCALSTATEDIR/$MEDIA_NAME" ]; then
[ $MEDIA = "raw" ] && create_raw_filesystem $LOCALSTATEDIR /$MEDIA_NAME $MEDIA_SIZE 1024k $ROOTFS
#create_livecd
create_rpm_database
create_devices
create_fstab " $ROOTDEV " " $ROOTFS "
install_rpms "filesystem gzip texinfo ldconfig bash libreadline glibc libncurses initscripts setup coreutils chkconfig libattr libstdc++6" "--nodeps --noorder --noscripts"
# Workaround: avoid a circular dependency with bash
INSTALLED = "texinfo"
#install_rpms_by_target \
# "Installing kernel..." mtd-base \
# "$NOARCHDIR/filesystem*"
#if [ "$BUILDARCH" != "$ARCH" ]; then
# NOSCRIPTARG="--noscripts"
#fi
if [ " $BUILDARCH " != " $ARCH " ] ; then
pre_qemu
QEMU_COPIED_FOR_INST = 1
fi
install_rpms_by_target " Installing base packages for ${ MAKEDIST_TARGET } target " ${ MAKEDIST_TARGET } -base " --replacepkgs ${ RPMEXTRAARGS } ${ NOSCRIPTARG } "
pre_install_rpms
if [ ! " $KERNEL_IGNORE " ] ; then
install_kernel ${ KERNEL_EXTRAVER } ${ KERNEL_PLATFORM } " ${ KERNEL_ADDITIONAL } "
fi
# set system hostname and domain
[ [ " $TARGET_HOSTNAME " ] ] || TARGET_HOSTNAME = " $MAKEDIST_TARGET "
[ [ " $TARGET_DOMAIN " ] ] || TARGET_DOMAIN = "localdomain"
sed -i " s|HOSTNAME=.*|HOSTNAME= $TARGET_HOSTNAME | " $MOUNTDIR /etc/sysconfig/network
sed -i " s|\(127\.0\.0\.1\W*\)\(.*\)|\1 $TARGET_HOSTNAME . $TARGET_DOMAIN $TARGET_HOSTNAME \2| " \
$MOUNTDIR /etc/hosts
#install_rpms_by_target "Installing tools packages for ${MAKEDIST_TARGET} target" ${MAKEDIST_TARGET}-tools ""
install_rpms_by_target " Installing ${ PLATFORM } platform packages " ${ MAKEDIST_TARGET } -${ PLATFORM } " ${ RPMEXTRAARGS } "
[ " $LANGUAGE " ] && install_rpms_by_target " Installing ${ PLATFORM } platform localization packages for language $LANGUAGE " ${ MAKEDIST_TARGET } -${ PLATFORM } -${ LANGUAGE } " ${ RPMEXTRAARGS } "
[ " $ARCH " ] && install_rpms_by_target " Installing ${ PLATFORM } platform localization packages for arch $ARCH " ${ MAKEDIST_TARGET } -${ PLATFORM } -${ ARCH } " ${ RPMEXTRAARGS } "
if [ ! " $KERNEL_IGNORE " ] ; then
update_modules_dependencies ${ KERNEL_VER } ${ KERNEL_EXTRAVER }
fi
if [ " $APPLICATION_TARGET " ] ; then
for t in $APPLICATION_TARGET ; do
install_rpms_by_target " Installing $t application packages. " " $t " " ${ RPMEXTRAARGS } "
done
fi
if [ ${ DEBUG :- 0 } -gt 0 ] ; then
install_rpms_by_target "Installing debugging packages." ${ MAKEDIST_TARGET } -debug " ${ RPMEXTRAARGS } "
cat > $MOUNTDIR /etc/sysconfig/network-devices/ifconfig.eth0 << _EOF
IF = eth0
ONBOOT = yes
ZONE = local
BOOTPROTO = dhcp
_EOF
fi
# erase_rpm_database
clean_rpm_database
[ " $LANGUAGE " ] && {
[ " $LANGUAGE " = "en" ] && KEYMAP = us || KEYMAP = " $LANGUAGE "
# configure localization
cat > $MOUNTDIR /etc/sysconfig/keyboard << _EOF
KEYMAP = $KEYMAP .map
XKB_LAYOUT = $KEYMAP
XKB_MODEL = pc105
XKB_OPTIONS =
_EOF
[ " $COUNTRY " ] && {
cat > $MOUNTDIR /etc/sysconfig/i18n << _EOF
LANG = ${ LANGUAGE } _${ COUNTRY } .UTF-8
_EOF
}
}
echo "Deleting unneeded files..."
# delete unused localizations
#
find $MOUNTDIR /usr/share/locale \
-maxdepth 1 -mindepth 1 -type d \
! -name it* ! -name en* ! -name C ! -name l10n -exec rm -rf { } \;
2011-05-22 15:17:53 +02:00
# cleanup: prevent generating a cleanfs script crash due to a unionfs bug
rm -rf $MOUNTDIR /tmp/.ICE-unix
2011-05-19 16:02:37 +02:00
#$CHROOTCMD chkconfig --add acpid ||
# { echo "$mkcd_me: fatal error, aborting installation" >&2
# { (exit 1); exit 1; }; }
# configure extlinux boot loader
#cat > $MOUNTDIR/boot/extlinux.conf << _EOF
#DEFAULT $PLATFORM
#LABEL $PLATFORM
#KERNEL /boot/vmlinuz-${KERNEL_VER}${KERNEL_EXTRAVER}
#APPEND video=vesafb:1280x1024-32 root=$ROOTDEV console=tty1
#resume2=swap:$SWAPDEV
#_EOF
if [ " $U_BOOT " ] ; then
echo "Copying u-boot Image for Kernel"
#mkimage -A ppc -O linux -T kernel -C gzip -a 0x8000 -e 0x8000 \
# -n "$DISTRONAME 2.6" -d $MOUNTDIR/boot/vmlinuz-2.6.12 $DISTRONAME-$MAKEDIST_TARGET-uImage.bin
fi
# disable parport
#sed -i "/parport_pc/d" $MOUNTDIR/etc/modprobe.conf
# disable multithreaded init ?
if [ ${ MULTITHREAD :- 0 } -gt 0 ] ; then
sed -i "s|multithread=1|multithread=0|" $MOUNTDIR /etc/sysconfig/rc
fi
# blacklist buggy ehci_hcd
#echo "blacklist ehci_hcd" > $MOUNTDIR/etc/modprobe.conf.d/ehci_hcd
# set rootdev on extlinux
[ -e $MOUNTDIR /boot/extlinux.conf ] && sed -i " s|\([^::alpha]root=\)[^ ]*|\1 $ROOTDEV | " $MOUNTDIR /boot/extlinux.conf
# execute platform specific script
[ -e $TARGETDIR /platforms/$PLATFORM /post.inc.sh ] && . $TARGETDIR /platforms/$PLATFORM /post.inc.sh
post_install_rpms
[ " $QEMU_COPIED_FOR_INST " ] && post_qemu
# copy static files for target
[ -e $TARGETDIR /root ] &&
cp -a $TARGETDIR /root/* $MOUNTDIR /
# copy static files for specific platform
[ -e $TARGETDIR /platforms/$PLATFORM /root -a " `ls $TARGETDIR /platforms/ $PLATFORM /root/* 2>/dev/null` " ] &&
cp -a $TARGETDIR /platforms/$PLATFORM /root/* $MOUNTDIR /
# copy localized static files for specific platform
[ " $LANGUAGE " -a -e $TARGETDIR /platforms/$PLATFORM /root-$LANGUAGE ] &&
cp -a $TARGETDIR /platforms/$PLATFORM /root-$LANGUAGE /* $MOUNTDIR /
produce_media