Annotation of openbsd/fill_chroot/fill_chroot, Revision 1.17
1.1 andrew 1: #!/bin/sh
1.17 ! andrew 2: # $RedRiver: fill_chroot,v 1.16 2010/01/11 21:16:33 andrew Exp $
1.1 andrew 3:
4: CHROOT=${CHROOT:=/home/andrew/www}
1.15 andrew 5: CHROOT=`echo $CHROOT | sed -e 's,/*$,,'`
1.1 andrew 6: export CHROOT
7:
1.15 andrew 8: _find="-type f -a ("
9: _find="${_find} -name *.so.* -o -name *.so"
1.17 ! andrew 10: _find="${_find} -o -path '*/usr/bin' -o -path '*/usr/sbin'"
1.10 andrew 11:
1.15 andrew 12: echo Installing Directory Structure
1.10 andrew 13: install -d -m 1750 -o www -g bin ${CHROOT}/tmp
1.15 andrew 14: for _d in ${CHROOT}/{bin,sbin,usr,var,dev}/ \
1.10 andrew 15: ${CHROOT}/var/run/ \
16: ${CHROOT}/usr/{lib,bin,sbin,libexec,local}/ \
17: ${CHROOT}/usr/local/{lib,bin,sbin,share}/\
18: ; do
1.15 andrew 19: install -d -m 0555 -o root -g wheel $_d
1.10 andrew 20: done
21:
22: echo Making devices
23: cd ${CHROOT}/dev
24: /dev/MAKEDEV std
25: cd ${OLDPWD}
26:
1.13 andrew 27: echo Installing perl into ${CHROOT}
1.15 andrew 28: for _f in /usr/bin/perl \
29: /usr/libdata/perl5 \
30: /usr/local/libdata/perl5 \
31: ; do
32:
33: echo pax -r -w -L -p e $_f ${CHROOT}
34: pax -r -w -L -p e $_f ${CHROOT}
35:
36: done
37: _find="${_find} -o -name perl"
1.5 andrew 38:
1.9 andrew 39: if [ -e /usr/local/sbin/femail ]; then
1.13 andrew 40: echo Installing femail into ${CHROOT}
1.10 andrew 41: echo pax -r -w -L -p e /usr/local/sbin/femail ${CHROOT}
42: pax -r -w -L -p e /usr/local/sbin/femail ${CHROOT}
43: else
44: echo femail not installed! Please install it and link it to
45: echo " ${CHROOT}/usr/sbin/sendmail"
1.9 andrew 46: fi
47:
1.10 andrew 48: if [ -e ${CHROOT}/usr/local/sbin/femail ]; then
49: echo Installing sendmail symlink to femail
1.9 andrew 50: cd ${CHROOT}/usr/sbin/
1.10 andrew 51: ln -sf ../local/sbin/femail sendmail
1.6 andrew 52: cd ${OLDPWD}
1.5 andrew 53: fi
1.1 andrew 54:
1.7 andrew 55: if [ -e /usr/local/bin/aspell ]; then
1.13 andrew 56: echo Installing aspell into ${CHROOT}
1.15 andrew 57: for _f in \
1.10 andrew 58: /usr/local/bin/aspell \
59: /usr/local/lib/aspell \
60: /usr/local/share/aspell \
61: ; do
1.15 andrew 62: echo pax -r -w -L -p e $_f ${CHROOT}
63: pax -r -w -L -p e $_f ${CHROOT}
64: done
65:
66: _find="${_find} -o -name aspell"
67: fi
68:
69: if [ -e /usr/local/bin/speedy ]; then
70: echo Installing speedycgi into ${CHROOT}
71: for _f in \
72: /usr/local/bin/speedy \
73: /usr/local/bin/speedy_backend \
74: ; do
75: echo pax -r -w -L -p e $_f ${CHROOT}
76: pax -r -w -L -p e $_f ${CHROOT}
1.10 andrew 77: done
78:
1.15 andrew 79: _find="${_find} -o -name speedy*"
1.16 andrew 80: fi
81:
82: if [ -e ${CHROOT}/usr/bin/cvs ]; then
83: _f=/usr/bin/cvs
84: echo Installing cvs
85: echo pax -r -w -L -p e $_f ${CHROOT}
86: pax -r -w -L -p e $_f ${CHROOT}
87:
88: _find="${_find} -o -name cvs"
1.7 andrew 89: fi
90:
1.15 andrew 91: _find="${_find} )"
1.13 andrew 92: echo Installing dependencies into ${CHROOT}
1.14 andrew 93: find ${CHROOT}/usr ${_find} |
1.10 andrew 94: xargs find_depends | \
1.14 andrew 95: sort -u | \
96: {
1.15 andrew 97: local _f
98: while read _f; do
99: echo pax -r -w -L -p e ${_f##${CHROOT}} ${CHROOT}
100: pax -r -w -L -p e ${_f##${CHROOT}} ${CHROOT}
1.14 andrew 101: done
102: }
1.1 andrew 103:
1.11 andrew 104: echo Fixing ldconfig \(/var/run/ld.so.hints\)
1.1 andrew 105: fix_ldconfig
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>