version 1.6, 2006/07/20 01:42:59 |
version 1.18, 2011/08/09 01:13:54 |
|
|
#!/bin/sh |
#!/bin/sh |
# $RedRiver: fill_chroot,v 1.5 2006/07/18 02:47:35 andrew Exp $ |
# $AFresh1: fill_chroot,v 1.16 2010/01/11 21:16:33 andrew Exp $ |
|
|
CHROOT=${CHROOT:=/home/andrew/www} |
CHROOT=${CHROOT:=/home/andrew/www} |
|
CHROOT=`echo $CHROOT | sed -e 's,/*$,,'` |
export CHROOT |
export CHROOT |
|
|
perl_to_chroot |
_find="-type f -a (" |
mkdir -p ${CHROOT}/usr/local/lib |
_find="${_find} -name *.so.* -o -name *.so" |
|
_find="${_find} -o -path '*/usr/bin' -o -path '*/usr/sbin'" |
|
|
if [ -e ${CHROOT}/bin/mini_sendmail ]; then |
echo Installing Directory Structure |
mkdir -p ${CHROOT}/usr/sbin |
install -d -m 1750 -o www -g bin ${CHROOT}/tmp |
cd ${CHROOT}/usr/sbin |
for _d in ${CHROOT}/{bin,sbin,usr,var,dev}/ \ |
ln -sf ../../bin/mini_sendmail sendmail |
${CHROOT}/var/run/ \ |
cd ${OLDPWD} |
${CHROOT}/usr/{lib,bin,sbin,libexec,local}/ \ |
|
${CHROOT}/usr/local/{lib,bin,sbin,share}/\ |
|
; do |
|
install -d -m 0555 -o root -g wheel $_d |
|
done |
|
|
|
echo Making devices |
|
cd ${CHROOT}/dev |
|
/dev/MAKEDEV std |
|
cd ${OLDPWD} |
|
|
|
echo Installing perl into ${CHROOT} |
|
for _f in /usr/bin/perl \ |
|
/usr/libdata/perl5 \ |
|
/usr/local/libdata/perl5 \ |
|
; do |
|
|
|
echo pax -r -w -L -p e $_f ${CHROOT} |
|
pax -r -w -L -p e $_f ${CHROOT} |
|
|
|
done |
|
_find="${_find} -o -name perl" |
|
|
|
if [ -e /usr/local/sbin/femail ]; then |
|
echo Installing femail into ${CHROOT} |
|
echo pax -r -w -L -p e /usr/local/sbin/femail ${CHROOT} |
|
pax -r -w -L -p e /usr/local/sbin/femail ${CHROOT} |
else |
else |
echo mini_sendmail not installed! Please install it and link it to |
echo femail not installed! Please install it and link it to |
echo " ${CHROOT}/usr/sbin/sendmail" |
echo " ${CHROOT}/usr/sbin/sendmail" |
fi |
fi |
|
|
find ${CHROOT} -name *.so.* -or -name *.so | xargs find_depends | \ |
if [ -e ${CHROOT}/usr/local/sbin/femail ]; then |
sort -u | xargs -I {} pax -r -w -L -p e {} ${CHROOT} |
echo Installing sendmail symlink to femail |
|
cd ${CHROOT}/usr/sbin/ |
|
ln -sf ../local/sbin/femail sendmail |
|
cd ${OLDPWD} |
|
fi |
|
|
|
if [ -e /usr/local/bin/aspell ]; then |
|
echo Installing aspell into ${CHROOT} |
|
for _f in \ |
|
/usr/local/bin/aspell \ |
|
/usr/local/lib/aspell \ |
|
/usr/local/share/aspell \ |
|
; do |
|
echo pax -r -w -L -p e $_f ${CHROOT} |
|
pax -r -w -L -p e $_f ${CHROOT} |
|
done |
|
|
|
_find="${_find} -o -name aspell" |
|
fi |
|
|
|
if [ -e /usr/local/bin/speedy ]; then |
|
echo Installing speedycgi into ${CHROOT} |
|
for _f in \ |
|
/usr/local/bin/speedy \ |
|
/usr/local/bin/speedy_backend \ |
|
; do |
|
echo pax -r -w -L -p e $_f ${CHROOT} |
|
pax -r -w -L -p e $_f ${CHROOT} |
|
done |
|
|
|
_find="${_find} -o -name speedy*" |
|
fi |
|
|
|
if [ -e ${CHROOT}/usr/bin/cvs ]; then |
|
_f=/usr/bin/cvs |
|
echo Installing cvs |
|
echo pax -r -w -L -p e $_f ${CHROOT} |
|
pax -r -w -L -p e $_f ${CHROOT} |
|
|
|
_find="${_find} -o -name cvs" |
|
fi |
|
|
|
_find="${_find} )" |
|
echo Installing dependencies into ${CHROOT} |
|
find ${CHROOT}/usr ${_find} | |
|
xargs find_depends | \ |
|
sort -u | \ |
|
{ |
|
local _f |
|
while read _f; do |
|
echo pax -r -w -L -p e ${_f##${CHROOT}} ${CHROOT} |
|
pax -r -w -L -p e ${_f##${CHROOT}} ${CHROOT} |
|
done |
|
} |
|
|
|
echo Fixing ldconfig \(/var/run/ld.so.hints\) |
fix_ldconfig |
fix_ldconfig |