From d81584556c99356f42d30c87f9b87989f7653987 Mon Sep 17 00:00:00 2001 From: Andreas Baumann Date: Sat, 27 Jan 2018 20:31:58 +0100 Subject: added stage 1: preparing the i486 chroot --- prepare_stage1_repo.sh | 88 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100755 prepare_stage1_repo.sh (limited to 'prepare_stage1_repo.sh') diff --git a/prepare_stage1_repo.sh b/prepare_stage1_repo.sh new file mode 100755 index 0000000..882c431 --- /dev/null +++ b/prepare_stage1_repo.sh @@ -0,0 +1,88 @@ +#!/bin/sh + +. "./default.conf" + +set -x + +# prepare the i486-chroot for stage 1 +# prepare pacman in i486-chroot + +sudo rm -rf $STAGE1_CHROOT + +if test ! -d $STAGE1_CHROOT; then + + # create and initialize a new i486 chroot in $STAGE1_CHROOT + + echo "Creating chroot for stage 1 artifacts in $STAGE1_CHROOT" + mkdir $STAGE1_CHROOT + + # prepare directories for a new pacman root + + mkdir -p $STAGE1_CHROOT/etc/pacman.d $STAGE1_CHROOT/var/lib/pacman \ + $STAGE1_CHROOT/var/cache/pacman/pkg \ + $STAGE1_CHROOT/var/log $STAGE1_CHROOT/etc/pacman.d/gnupg/ \ + $STAGE1_CHROOT/etc/pacman.d/hooks/ + + # adapt configuration to work from outside the chroot to write artifacts + # into the chroot + + cp /etc/pacman.conf $STAGE1_CHROOT/etc/. + + sed -i 's@^Architecture.*@Architecture = i486@g' $STAGE1_CHROOT/etc/pacman.conf + + sed -i 's@#RootDir.*@RootDir = /home/cross/i486-root@g' $STAGE1_CHROOT/etc/pacman.conf + sed -i 's@#DBPath.*@DBPath = /home/cross/i486-root/var/lib/pacman/@g' $STAGE1_CHROOT/etc/pacman.conf + sed -i 's@#CacheDir.*@CacheDir = /home/cross/i486-root/var/cache/pacman/pkg/@g' $STAGE1_CHROOT/etc/pacman.conf + sed -i 's@#LogFile.*@LogFile = /home/cross/i486-root/var/log/pacman.log@g' $STAGE1_CHROOT/etc/pacman.conf + sed -i 's@#GPGDir.*@GPGDir = /home/cross/i486-root/etc/pacman.d/gnupg/@g' $STAGE1_CHROOT/etc/pacman.conf + sed -i 's@#HookDir.*@HookDir = /home/cross/i486-root/etc/pacman.d/hooks/@g' $STAGE1_CHROOT/etc/pacman.conf + sed -i 's@^HoldPkg@#HoldPkg@g' $STAGE1_CHROOT/etc/pacman.conf + + # disable all standard repos + + sed -i 's@\(^Include = /etc/pacman.d/mirrorlist\)@#\1@g' $STAGE1_CHROOT/etc/pacman.conf + sed -i 's@\[core\]@#[core]@g' $STAGE1_CHROOT/etc/pacman.conf + sed -i 's@\[extra\]@#[extra]@g' $STAGE1_CHROOT/etc/pacman.conf + sed -i 's@\[community\]@#[community]@g' $STAGE1_CHROOT/etc/pacman.conf + + # add a temporary package repo in the filesystem + cat >>$STAGE1_CHROOT/etc/pacman.conf <