#!/bin/bash # Script to setup the LinHES development enviroment # ./setup_env.sh ( i586|i686|x86_64 ) # This script assumes that /tmp is usable. MIRROR_DIR=../pkg_repo function arg_check { case $1 in i586) ARCH=$1 ;; i686) ARCH=$1 ;; x86_64) ARCH=$1 ;; *) echo "invalid arch specified" echo "valid options include i586, i686 and x86_64" echo "EX: ./setup_env.sh i686 " exit 1 ;; esac } function pacman_check { which pacman status=$? if [ ! $status = 0 ] then echo "Can not find pacman in the path, please install pacman" exit 1 fi } #----------------------------------------------- arg_check $1 pacman_check cd build_tools/clarch ./setup_links.sh cd - #create the local pkg dir's for mirror and creating pkg's [ -e $MIRROR_DIR ] || mkdir -p $MIRROR_DIR for i in i586 i686 x86_64 do [ -e $MIRROR_DIR/$i ] || mkdir -p $MIRROR_DIR/$i for y in core extra core-testing extra-testing chroot-devel do [ -e $MIRROR_DIR/$i/$y ] || mkdir -p $MIRROR_DIR/$i/$y done done [ -e $MIRROR_DIR/sources ] || mkdir -p $MIRROR_DIR/sources [ -e $MIRROR_DIR/packages ] || mkdir -p $MIRROR_DIR/packages #correct pacman.conf to use the correct ARCH to build the chroot sed -e "s/REPLACEME/$ARCH/g" templates/pacman.conf.chroot > /tmp/pacman.conf.chroot #create the chroot ./mkarchroot -f -C /tmp/pacman.conf.chroot ../build_root.$ARCH base base-devel cdrkit unison openssh status=$? if [ ! $status = 0 ] then echo echo "********************************************************" echo "*** An error occured creating the chroot ***" echo "********************************************************" exit 1 fi #clear out the default resolve.con mv -f ../build_root.$ARCH/etc/resolv.conf ../build_root.$ARCH/etc/resolv.conf.orig #create custom enter_dev_chroot.sh script sed -e "s/REPLACEME/$ARCH/g" templates/enter_dev_chroot.sh > ../enter_dev_chroot.$ARCH.sh chmod 755 ../enter_dev_chroot.$ARCH.sh echo "********************************************************" echo "** To enter the chroot (build_root.$ARCH) run: **" echo "** cd .. **" echo "** ./enter_dev_chroot.$ARCH.sh **" echo "********************************************************" #copy makepkg.conf into the chroot sed -e "s/i686/$ARCH/g" templates/makepkg.conf > ../build_root.$ARCH/etc/makepkg.conf #copy pacman.conf into the chroot sed -e "s/REPLACEME/$ARCH/g" templates/pacman.conf.chroot > ../build_root.$ARCH/etc/pacman.conf cd ..