sleep 1
f=$FAI_ROOT/var/cache/apt/pkgcache.bin
if [[ ! -r $f ]] || (( $(( $(date +%s) - $(stat -c %Y $f ) )) > 60*60*2 )); then
- $ROOTCMD apt-get update
+ i=0
+ while fuser $FAI_ROOT/var/lib/dpkg/lock &>/dev/null; do
+ sleep 1
+ i=$(( i+1 ))
+ if (( i > 300 )); then
+ echo "error: timed out waiting for /var/lib/dpkg/lock" >&2
+ exit 1
+ fi
+ $ROOTCMD apt-get update
+ done
fi
if [[ $FAI_ACTION != dirinstall ]]; then
+ # luks options, see man systemd-cryptsetup-generator
+ # all i know is that with luks.crypttab=no, swap still timed out on boot.
+ # and with rd.luks.crypttab=no, it works.
+ cmdline="rd.luks.crypttab=no console=ttyS0"
if ifclass LINODE; then
speed=19200
- # luks.crypttab=no see man systemd-cryptsetup-generator
- cmdline="luks.crypttab=no console=ttyS0,${speed}n8"
+ cmdline+=",${speed}n8"
+ cmdline="rd.luks.crypttab=no console=ttyS0,${speed}n8"
else
speed=115200
- cmdline="luks.crypttab=no console=ttyS0,${speed} console=tty0"
+ cmdline+=",${speed}n8 console=tty0"
fi
cat >$FAI_ROOT/etc/grub.d/40_custom <<EOF
update-grub2
EOF
- if [[ ! FAI_WRAPPER ]]; then
+ if [[ ! $FAI_WRAPPER ]]; then
chroot $FAI_ROOT bash <<EOF
# Just include all of them for now incase we are creating
# an install for a different machine.. in distro-begin, we