diff --git a/lib/distro.conf b/lib/distro.conf index e1d61f6..b31b598 100755 --- a/lib/distro.conf +++ b/lib/distro.conf @@ -31,6 +31,7 @@ trusty-armhf-netboot) HTTP_IMAGE="http://ports.ubuntu.com/ubuntu-ports/dists" BASE_IMAGE="generic/netboot" NETINSTALL="initrd.gz" + rcn_ee_repo="enable" ;; wheezy-armhf-netboot) #24-Apr-2014 diff --git a/lib/trusty-preseed.cfg b/lib/trusty-preseed.cfg index 777c73a..a61042e 100644 --- a/lib/trusty-preseed.cfg +++ b/lib/trusty-preseed.cfg @@ -22,6 +22,22 @@ d-i anna/no_kernel_modules boolean true # Stop Ubuntu from installing random kernel choice d-i base-installer/kernel/image select none +# Additional repositories, local[0-9] available +#d-i apt-setup/local0/repository string \ +# http://local.server/debian stable main +#d-i apt-setup/local0/comment string local server +# Enable deb-src lines +#d-i apt-setup/local0/source boolean true +# URL to the public key of the local repository; you must provide a key or +# apt will complain about the unauthenticated repository and so the +# sources.list line will be left commented out +#d-i apt-setup/local0/key string http://local.server/key + +d-i apt-setup/local0/repository string deb http://repos.rcn-ee.net/ubuntu/ trusty main + +#apt-cacher-ng allows "custom.gpg" +d-i apt-setup/local0/key string http://repos.rcn-ee.net/ubuntu/conf/custom.gpg + # Controls whether to use NTP to set the clock during the install d-i clock-setup/ntp boolean true # NTP server to use. The default is almost always fine here. diff --git a/lib/ubuntu-finish.sh b/lib/ubuntu-finish.sh index e9eb0b9..9983b75 100644 --- a/lib/ubuntu-finish.sh +++ b/lib/ubuntu-finish.sh @@ -1,5 +1,7 @@ #!/bin/bash +conf_smart_uboot="smart_DISABLED" + if [ ! -f /var/log/netinstall.log ] ; then touch /var/log/netinstall.log echo "NetInstall Log:" >> /var/log/netinstall.log @@ -99,18 +101,22 @@ if [ "${dd_uboot_seek}" ] && [ "${dd_uboot_bs}" ] ; then fi fi -if [ -f "/boot/uboot/backup/boot.scr" ] ; then - mv /boot/uboot/backup/boot.scr /boot/uboot/boot.scr -else - echo "WARN: [/boot/uboot/backup/boot.scr] was missing..." >> /var/log/netinstall.log +if [ ! "x${conf_smart_uboot}" = "xenable" ] ; then + if [ -f "/boot/uboot/backup/boot.scr" ] ; then + mv /boot/uboot/backup/boot.scr /boot/uboot/boot.scr + else + echo "WARN: [/boot/uboot/backup/boot.scr] was missing..." >> /var/log/netinstall.log + fi fi -if [ -f "/boot/uboot/backup/normal.txt" ] ; then - sed -i -e 's:FINAL_PART:'$FINAL_PART':g' /boot/uboot/backup/normal.txt - sed -i -e 's:FINAL_FSTYPE:'$FINAL_FSTYPE':g' /boot/uboot/backup/normal.txt - mv /boot/uboot/backup/normal.txt /boot/uboot/uEnv.txt -else - echo "WARN: [/boot/uboot/backup/normal.txt] was missing..." >> /var/log/netinstall.log +if [ ! "x${conf_smart_uboot}" = "xenable" ] ; then + if [ -f "/boot/uboot/backup/normal.txt" ] ; then + sed -i -e 's:FINAL_PART:'$FINAL_PART':g' /boot/uboot/backup/normal.txt + sed -i -e 's:FINAL_FSTYPE:'$FINAL_FSTYPE':g' /boot/uboot/backup/normal.txt + mv /boot/uboot/backup/normal.txt /boot/uboot/uEnv.txt + else + echo "WARN: [/boot/uboot/backup/normal.txt] was missing..." >> /var/log/netinstall.log + fi fi #Cleanup: some of Ubuntu's packages: @@ -175,9 +181,26 @@ __EOF__ if [ -f /boot/uboot/linux-image-*arm*.deb ] ; then dpkg -x /boot/uboot/linux-image-*arm*.deb / update-initramfs -c -k `uname -r` - cp /boot/vmlinuz-`uname -r` /boot/uboot/zImage - cp /boot/initrd.img-`uname -r` /boot/uboot/initrd.img rm -f /boot/uboot/linux-image-*arm*.deb || true +fi + +if [ ! "x${conf_smart_uboot}" = "xenable" ] ; then + if [ -f /boot/vmlinuz-`uname -r` ] ; then + cp /boot/vmlinuz-`uname -r` /boot/uboot/zImage + else + echo "ERROR: [/boot/vmlinuz-`uname -r`] missing" >> /var/log/netinstall.log + fi + + if [ -f /boot/initrd.img-`uname -r` ] ; then + cp /boot/initrd.img-`uname -r` /boot/uboot/initrd.img + else + echo "ERROR: [/boot/initrd.img-`uname -r`] missing" >> /var/log/netinstall.log + fi +fi + + if [ -f /boot/uboot/vmlinuz- ] ; then + rm -f /boot/uboot/vmlinuz- || true + fi #Cleanup: mv /boot/uboot/bootdrive /boot/uboot/backup/ || true @@ -189,10 +212,27 @@ if [ -f /boot/uboot/linux-image-*arm*.deb ] ; then touch /boot/uboot/run_boot-scripts || true +if [ ! "x${conf_smart_uboot}" = "xenable" ] ; then mkimage -A arm -O linux -T ramdisk -C none -a 0 -e 0 -n initramfs -d /boot/initrd.img-`uname -r` /boot/uboot/uInitrd if [ "${zreladdr}" ] ; then mkimage -A arm -O linux -T kernel -C none -a ${zreladdr} -e ${zreladdr} -n `uname -r` -d /boot/vmlinuz-`uname -r` /boot/uboot/uImage fi -else - echo "ERROR: [/boot/uboot/linux-image-*.deb] missing" >> /var/log/netinstall.log fi + +echo "uname_r=$(uname -r)" > /boot/uEnv.txt +echo "uuid=$(/sbin/blkid -c /dev/null -s UUID -o value ${FINAL_PART})" >> /boot/uEnv.txt + +if [ "x${conf_smart_uboot}" = "xenable" ] ; then + rootdrive=$(echo ${FINAL_PART} | awk -F"p" '{print $1}' || true) + if [ "x${bootdrive}" = "x${rootdrive}" ] ; then + rm -f /boot/uboot/boot/uEnv.txt || true + else + echo "uname_r=current" > /boot/uboot/boot/uEnv.txt + echo "uuid=$(/sbin/blkid -c /dev/null -s UUID -o value ${FINAL_PART})" >> /boot/uboot/boot/uEnv.txt + + cp /boot/vmlinuz-`uname -r` /boot/uboot/boot/vmlinuz-current + cp /boot/initrd.img-`uname -r` /boot/uboot/boot/initrd.img-current + fi +fi + +# diff --git a/mk_mmc.sh b/mk_mmc.sh index 38ea614..40c1f32 100755 --- a/mk_mmc.sh +++ b/mk_mmc.sh @@ -927,6 +927,9 @@ initrd_preseed_settings () { flash_kernel_broken patch_linux_version patch_flash_kernel_db + if [ "x${conf_smart_uboot}" = "xenable" ] ; then + sed -i -e 's:smart_DISABLED:enable:g' ${TEMPDIR}/initrd-tree/usr/bin/finish-install.sh + fi ;; wheezy|jessie) cp -v "${DIR}/lib/debian-finish.sh" ${TEMPDIR}/initrd-tree/usr/bin/finish-install.sh @@ -941,6 +944,10 @@ initrd_preseed_settings () { cp -v "${DIR}/lib/${DIST}-preseed.cfg" ${TEMPDIR}/initrd-tree/preseed.cfg case "${DIST}" in + trusty) + sed -i -e 's:initramfs-tools:initramfs-tools linux-image-'$uname_r':g' ${TEMPDIR}/initrd-tree/preseed.cfg + cat ${TEMPDIR}/initrd-tree/preseed.cfg | grep linux-image + ;; wheezy) if [ ! "x${di_serial_mode}" = "xenable" ] && [ "${conf_kernel_usb_not_builtin}" ] ; then sed -i -e 's:#d-i console-tools:d-i console-tools:g' ${TEMPDIR}/initrd-tree/preseed.cfg