3 [[ -w / ]] || exec sudo "$0" "$@"
5 mounts="proc sys dev dev/pts usr/portage usr/portage/distfiles"
10 ./*) chroot=${PWD}/${chroot#./} ;;
15 mounts=$(mount | grep ${chroot} | awk '{print $3}' | tac)
16 for m in ${mounts} ; do
20 if [[ -z ${mounts} ]] ; then
21 echo "nothing mounted in ${chroot}"
26 while [[ -n $1 ]] ; do
29 -*) echo "unknown option $1"; exit 1 ;;
35 local src=/$1 dst=${chroot}/${2:-$1}
36 [[ -d ${src} ]] || return 0
38 grep -sq "${dst}" /proc/mounts || mount --bind "${src}" "${dst}"
40 for m in ${mounts} ; do
46 *x86-64*) echo x86_64;;
47 *"Intel 80386"*) echo i386;;
50 bin_dst=$(get_type bin/bash)
51 bin_src=$(get_type /bin/bash)
52 if [[ ${bin_dst} == ${bin_src} ]] ; then
55 setarch="setarch ${bin_dst}"
58 if [[ ! -L etc/mtab ]] ; then
60 ln -sf /proc/mounts etc/mtab
73 $(printf 'etc/%s ' ${etc}) \
81 unset LS_COLORS # format changes over time
82 [[ $# -eq 0 ]] && set -- env HOME=/root /bin/bash -l