summaryrefslogtreecommitdiffstats
path: root/build_tools/clarch/larch/run/mklarch
diff options
context:
space:
mode:
authorJames Meyer <jams@linhes.org>2010-12-04 23:44:45 (GMT)
committerJames Meyer <jams@linhes.org>2010-12-04 23:44:51 (GMT)
commitf51fb708846d13222bd97b3f760eb3be902c0be0 (patch)
treead25ff81828f12cb7da86384863e163cb4e001f2 /build_tools/clarch/larch/run/mklarch
parent4384efe238cdfeac86fae0d8e1097a409350f8c6 (diff)
downloadlinhes_dev-f51fb708846d13222bd97b3f760eb3be902c0be0.zip
remove old versions of larch 6 and 7
Diffstat (limited to 'build_tools/clarch/larch/run/mklarch')
-rwxr-xr-xbuild_tools/clarch/larch/run/mklarch284
1 files changed, 0 insertions, 284 deletions
diff --git a/build_tools/clarch/larch/run/mklarch b/build_tools/clarch/larch/run/mklarch
deleted file mode 100755
index 236088a..0000000
--- a/build_tools/clarch/larch/run/mklarch
+++ /dev/null
@@ -1,284 +0,0 @@
-#! /bin/bash
-#
-# mklarch
-#
-# Author: Michael Towers <gradgrind[at]online[dot]de>
-#
-# This file is part of the larch project.
-#
-# larch is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# larch is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with larch; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-#
-#----------------------------------------------------------------------------
-# 2008.06.22
-
-# directory to use for building the CD - the installation root
-# It must have LOTS of space, ~ 4GB for a 700MB CD
-INSTLDIR=/home/larchroot
-
-# Default path to larch5 repositories (architecture is sub-directory)
-larch5path="ftp://ftp.berlios.de/pub/larch/larch5.3"
-
-APP=$( basename $0 )
-# Get path to larch base directory, via the location of this script
-FULLPATH=$( readlink -f $0 )
-SCRIPTDIR=$( dirname ${FULLPATH} )
-LARCHDATA=$( dirname ${SCRIPTDIR} )
-
-startdir=$( pwd )
-# cd to ensure that the following test works even if '.' is in PATH
-cd /
-apppath="$( which ${APP} 2>/dev/null )"
-if [ $? -ne 0 ] || [ "${apppath}" != "${FULLPATH}" ]; then
- PATH=${SCRIPTDIR}:${PATH}
-fi
-cd ${startdir}
-
-usage () {
- echo
- echo "Usage:"
- echo " ${APP} -h # Show this message"
- echo
- echo " ${APP} -a [-f] [-p <profile directory>]"
- echo " [-c <package cache directory>]"
- echo " [-y <path to pacman database directories>]"
- echo " [<build directory>]"
- echo
- echo " ${APP} [-ugf] [-p <profile directory>]"
- echo " [-c <package cache directory>]"
- echo " [-y <path to pacman database directories>]"
- echo " [<build directory>]"
- echo
- echo " -a Stop after installing Arch system (don't build live system)."
- echo
- echo " -p Use the 'profile' in the given directory."
- echo
- echo " -c Use an alternative package cache directory"
- echo " (default is /var/cache/pacman/pkg, on host)"
- echo " -y Use existing pacman package database instead"
- echo " of performing 'pacman -Sy'."
- echo
- echo " -u Don't build iso, but install to USB-stick instead"
- echo " -g Use GRUB bootloader (default is isolinux/syslinux)"
- echo
- echo " -f No interaction. (not recommended)"
- echo " The script will just plough straight on and destroy"
- echo " your file-system without first asking."
- echo
- echo "${APP} is the master script for the larch live CD / live USB-stick"
- echo "builder."
- echo
- echo "<build directory> is the directory in which all the building will"
- echo "be done, by default '${INSTLDIR}'"
- echo
- echo "A profile is a directory containing all the necessary"
- echo "configuration details for a larch build. See documentation"
- echo "and examples."
- echo
- echo "If you want to rebuild a live system without reinstalling it"
- echo "(for example if you make minor changes to the profile which"
- echo "don't affect the packages, or if you want a USB-stick instead"
- echo "of a CD, or if writing to the USB-stick failed for some reason)"
- echo "you should look at the 'larchify' script - run it with the '-h'"
- echo "option for usage notes."
- echo
- exit
-}
-
-pROFILE=""
-DONTASK=""
-NOLIVE=""
-USB=""
-GRUB=""
-PKGCACHE=/var/cache/pacman/pkg
-# Options to 'inpacs':
-INPACSO=""
-while getopts ":p:ac:y:ugf" Option
-do
- case ${Option} in
- p ) PROFILE="$( readlink -f ${OPTARG} )" ;;
- a ) NOLIVE="-a" ;;
- c ) PKGCACHE="$( readlink -f ${OPTARG} )" ;;
- y ) INPACSO="${INPACSO} -y $( readlink -f ${OPTARG} )" ;;
- u ) USB="-u" ;;
- g ) GRUB="-g" ;;
- f ) DONTASK="-f" ;;
- * ) usage ;;
- esac
-done
-shift $((${OPTIND} - 1))
-if ! [ -d "${PKGCACHE}" ]; then
- echo "Creating package cache: ${PKGCACHE}"
- if ! mkdir -p "${PKGCACHE}"; then
- echo "ERROR: Couldn't create ${PKGCACHE}"
- exit 1
- fi
-fi
-INPACSO="${INPACSO} -c ${PKGCACHE}"
-
-if [ -n "$1" ]; then
- INSTLDIR=$1
-fi
-LARCHBUILD="${INSTLDIR}/.larch"
-
-if [ -z "${PROFILE}" ]; then
- PROFILE=${startdir}/profile
-fi
-if ! [ -f ${PROFILE}/addedpacks ]; then
- echo "ERROR: no 'addedpacks' in profile '${PROFILE}'"
- exit 1
-fi
-
-# test if the script is started by root user. If not, exit
-if [ $UID -ne 0 ]; then
- echo "Only root can run ${APP}"; exit 1
-fi
-
-echo "//"
-echo "// **********************************************************"
-echo "// This will delete EVERYTHING under"
-echo "//"
-echo "// ${INSTLDIR}"
-echo "//"
-
-if [ -z "${DONTASK}" ]; then
- echo "// I really mean it ... Are you sure you want to do this?"
- echo "// **********************************************************"
- # Await yes or no
- read -p "// [y/N]: " ans
- if [ -z "$( echo ${ans} | grep '^ *[yY]' )" ]; then exit 0; fi
-fi
-
-for fd in $( ls -A ${INSTLDIR} ); do
- rm -rf ${INSTLDIR}/${fd}
-#lookforme
-done
-mkdir -p ${LARCHBUILD}
-
-############### Call 'inpacs' to do the installation
-
-if [ -f ${PROFILE}/basepacks ]; then
- INPACSO="${INPACSO} -b ${PROFILE}/basepacks"
-fi
-
-if [ -f ${PROFILE}/baseveto ]; then
- INPACSO="${INPACSO} -x ${PROFILE}/baseveto"
-fi
-
-if [ -f ${PROFILE}/pacman.conf ]; then
- cp ${PROFILE}/pacman.conf .
-elif ! [ -f pacman.conf ]; then
- if [ -f /etc/pacman.conf ]; then
- cp /etc/pacman.conf .
- else
- echo "ERROR: Couldn't find pacman.conf"
- exit 1
- fi
-fi
-INPACSO="${INPACSO} -k pacman.conf"
-if [ x = y ]
-then
-# If necessary add the larch repository to pacman.conf
-if ! grep '^[larch5]' pacman.conf &>/dev/null; then
- if [ -d larchrepo ]; then
- larch5path="file://$( readlink -f larchrepo )"
- else
- sysarch="$( uname -m )"
- if [ "${sysarch}" != "x86_64" ]; then
- sysarch="i686"
- fi
- larch5path="${larch5path}/${sysarch}"
- fi
- #sed "/\[testing\]/ i \
- echo "[larch5] " >> pacman.conf
- echo "Server = ${larch5path}" >> pacman.conf
-fi
-
-fi
-
-if ! which pacman &>/dev/null; then
- if ! [ -x ${startdir}/pacman ]; then
- echo "ERROR: Couldn't find pacman executable"
- exit 1
- fi
- INPACSO="${INPACSO} -P ${startdir}/pacman"
-fi
-echo "checking for pre_process.sh"
-if [ -f ${PROFILE}/pre-process.sh ]
-then
- echo "Running pre-process script"
- cd ${PROFILE}
- ./pre-process.sh
- cd -
-
-else
- echo "No pre_process"
-fi
-
-inpacs -a ${PROFILE}/addedpacks ${INPACSO} ${INSTLDIR}
-if [ $? -ne 0 ]; then exit 1; fi
-
-# Use build version of pacman.conf in live system, without [larch5] repository.
-# This can be overwritten by a pacman.conf in the profile's overlay.
-
-rm -f ${INSTLDIR}/etc/pacman.conf
-if [ -f ${PROFILE}/pacman.conf ]; then
- # This file should be used in preference to pacman.conf - it is created by
- # larch-setup on non-Arch systems before commenting out the 'Include' lines.
- cp ${PROFILE}/pacman.conf ${INSTLDIR}/etc/pacman.conf
-else
- sed '/^\[larch5\]/,/^ *$/ d' <pacman.conf >${INSTLDIR}/etc/pacman.conf
-fi
-
-cachepacs -a ${PROFILE}/cache_packs $INPACSO -d ${INSTLDIR}
-if [ $? -ne 0 ]
-then
- exit 1
-fi
-
-# Generate glibc locales
-if [ -f ${PROFILE}/locale.gen ]; then
- echo
- echo "********** Generating locales **********"
- echo
- cat ${PROFILE}/locale.gen ${INSTLDIR}/etc/locale.gen >${INSTLDIR}/etc/locale.gen_new
- mv -f ${INSTLDIR}/etc/locale.gen_new ${INSTLDIR}/etc/locale.gen
- chroot ${INSTLDIR} usr/sbin/locale-gen
-fi
-
-# Generate ssh keys
-ssh_init ${INSTLDIR}
-
-# Set up a symlink to the installation for 'larchify'
-rm -f larchroot && ln -sf ${INSTLDIR} ${startdir}/larchroot
-if [ $? -ne 0 ]; then
- echo "WARNING: Couldn't create 'larchroot' symlink"
-fi
-
-echo "// ${APP} finished installation of Arch system"
-echo "//"
-
-#run script to post-process the new installation
-if [ -f ${PROFILE}/post-process.sh ]
-then
- ${PROFILE}/post-process.sh ${INSTLDIR} ${PROFILE}
- echo ${PROFILE}/post-process.sh ${INSTLDIR} ${PROFILE}
-fi
-
-
-if [ -z "${NOLIVE}" ]; then
- # Get live CD build functions
- . ${LARCHDATA}/buildlive
- mklive
-fi