diff options
-rwxr-xr-x | baserock-bootstrap | 43 | ||||
-rw-r--r-- | morphlib/morphology.py | 6 |
2 files changed, 31 insertions, 18 deletions
diff --git a/baserock-bootstrap b/baserock-bootstrap index f733b000..019101b3 100755 --- a/baserock-bootstrap +++ b/baserock-bootstrap @@ -79,6 +79,8 @@ pass1_directories() [ -e "$LFS/dev" ] || $HOST_MKDIR -p "$LFS/dev" [ -e "$LFS/dev/console" ] || $HOST_SUDO mknod -m 600 "$LFS/dev/console" c 5 1 [ -e "$LFS/dev/null" ] || $HOST_SUDO mknod -m 666 "$LFS/dev/null" c 1 3 + [ -e "$LFS/dev/random" ] || $HOST_SUDO mknod -m 644 "$LFS/dev/random" c 1 8 + [ -e "$LFS/dev/urandom" ] || $HOST_SUDO mknod -m 644 "$LFS/dev/urandom" c 1 9 } @@ -374,6 +376,7 @@ pass1_bash() make -j$JOBS # make tests make install + ln -s "$tools/bin/bash" "$tools/bin/sh" rm -rf "$sources/bash-4.2" fi } @@ -759,9 +762,14 @@ EOF # Add symlinks for common locations of specific tools # These are needed for #! lines in scripts [ -e "$LFS/bin" ] || $HOST_MKDIR -p "$LFS/bin" - [ -e "$LFS/bin/sh" ] || $HOST_SUDO ln -sf ../tools/bin/sh "$LFS/bin/sh" + [ -e "$LFS/bin/sh" ] || $HOST_SUDO ln -sf ../tools/bin/bash "$LFS/bin/sh" [ -e "$LFS/bin/bash" ] || $HOST_SUDO ln -sf ../tools/bin/bash "$LFS/bin/bash" [ -e "$LFS/bin/pwd" ] || $HOST_SUDO ln -sf ../tools/bin/pwd "$LFS/bin/pwd" + [ -e "$LFS/bin/echo" ] || $HOST_SUDO ln -sf ../tools/bin/echo "$LFS/bin/echo" + if [ ! -e "$LFS/usr/bin/perl" ]; then + $HOST_MKDIR -p $LFS/usr/bin + $HOST_SUDO ln -sf ../../tools/bin/perl "$LFS/usr/bin/perl" + fi } @@ -796,11 +804,12 @@ if ! mount | grep "$LFS/sys" >/dev/null then $HOST_SUDO mount -t sysfs sysfs "$LFS/sys" fi -$HOST_SUDO /usr/sbin/chroot "$LFS" \ - /tools/bin/env -i HOME=/baserock TERM=\$TERM \ - PATH="/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin" \ - BOOTSTRAP_TOOLS="$LFS/tools" \ - "\$@" +$HOST_SUDO $HOST_CP -f /etc/resolv.conf "$LFS/etc/resolv.conf" +$HOST_SUDO /usr/sbin/chroot "$LFS" \\ + /tools/bin/env -i HOME=/baserock TERM=\$TERM \\ + PATH="/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin" \\ + BOOTSTRAP_TOOLS="$LFS/tools" \\ + "\${@-\$SHELL}" $HOST_SUDO umount "$LFS/proc" "$LFS/sys" EOF $HOST_CHMOD +x "$do_chroot" @@ -828,25 +837,25 @@ pass1_gcc_2 pass1_sanity_check pass1_zlib pass1_ncurses -pass1_busybox +#pass1_busybox pass1_bash -#pass1_bzip2 -#pass1_coreutils -#pass1_diffutils +pass1_bzip2 +pass1_coreutils +pass1_diffutils pass1_file -#pass1_findutils +pass1_findutils pass1_gawk pass1_gettext -#pass1_grep +pass1_grep pass1_gzip pass1_m4 pass1_make pass1_patch pass1_perl -#pass1_sed -#pass1_tar +pass1_sed +pass1_tar pass1_texinfo -#pass1_xz +pass1_xz pass1_python pass1_cliapp pass1_git @@ -856,8 +865,8 @@ pass1_git if [ "$SNAPSHOT" = yes ] then cd "$LFS/.." - tar -caf tree-snapshot.tar.gz tree - echo "See snapshot in tree-snapshot.tar.gz" + tar -caf tree-snapshot.tar tree + echo "See snapshot in tree-snapshot.tar" exit fi diff --git a/morphlib/morphology.py b/morphlib/morphology.py index 0dcb03f7..f04e9f7c 100644 --- a/morphlib/morphology.py +++ b/morphlib/morphology.py @@ -29,7 +29,11 @@ class Morphology(object): def _load(self): logging.debug('Loading morphology %s' % self._fp.name) - self._dict = json.load(self._fp) + try: + self._dict = json.load(self._fp) + except ValueError: + logging.error('Failed to load morphology %s' % self._fp.name) + raise if self.kind == 'stratum': for source in self.sources: |