#!/bin/bash # Set Global Vars ISO_URL="https://serverop.de/crux/crux-3.2/iso/crux-3.2.iso" ISO_FILE="crux-3.2.iso" printf "1.1.1 Path/to crux-3.2.iso (/home/user/Downloads):" read ISO_PATH #prepare_iso() { ISO_FILE=$ISO_PATH/$ISO_FILE if [ -f $ISO_FILE ]; then echo "File $ISO_FILE exists." else echo "File $ISO_FILE does not exist." cd $ISO_PATH && { curl -k -O $ISO_URL ; cd -; } fi #} #manual_install() { printf "1.1.2 EFI block; (/dev/sda1):" read BLK_EFI printf "1.1.2 boot block; (/dev/sda2):" read BLK_BOOT printf "1.1.2 root block; (/dev/sda3):" read BLK_ROOT printf "1.1.2 swap; (/dev/sda4):" read BLK_SWAP printf "1.1.2 var block; (/dev/sda5):" read BLK_VAR printf "1.1.2 tmp block; (/dev/sda6):" read BLK_TMP printf "1.1.2 usr block; (/dev/sda7):" read BLK_USR printf "1.1.2 home block; (/dev/sda8):" read BLK_HOME printf "1.1.2 srv block; (/dev/sda8):" read BLK_SRV echo "1.1.2 Creating File System on $BLK_EFI with fat32:" mkfs.fat -F 32 $BLK_EFI echo "1.1.2 Creating File System on $BLK_BOOT with ext4:" mkfs.ext4 $BLK_BOOT echo "1.1.2 Creating File System on $BLK_ROOT with ext4:" mkfs.ext4 $BLK_ROOT echo "1.1.2 Creating Swap File System on $BLK_SWAP:" mkswap $BLK_SWAP echo "1.1.2 Creating File System on $BLK_VAR with ext4:" mkfs.ext4 $BLK_VAR echo "1.1.2 Creating File System on $BLK_USR with ext4:" mkfs.ext4 $BLK_USR # echo "1.1.2 Creating File System on $BLK_HOME with ext4:" # mkfs.ext4 $BLK_HOME # echo "1.1.2 Creating File System on $BLK_SRV with ext4:" # mkfs.ext4 $BLK_SRV #} #prepare_target(){ printf "1.1.3 mount point to chroot (/mnt):" read CHROOT mount $BLK_ROOT $CHROOT mkdir -p $CHROOT/boot mkdir -p $CHROOT/var mkdir -p $CHROOT/usr mkdir -p $CHROOT/media mkdir -p $CHROOT/home mkdir -p $CHROOT/dev mkdir -p $CHROOT/tmp mkdir -p $CHROOT/proc mkdir -p $CHROOT/sys mount $BLK_BOOT $CHROOT/boot mkdir -p $CHROOT/boot/efi mount $BLK_EFI $CHROOT/boot/efi mount $BLK_VAR $CHROOT/var mkdir -p $CHROOT/var/lib/pkg mount $BLK_USR $CHROOT/usr # mount $BLK_HOME $CHROOT/home mount --bind /dev $CHROOT/dev mount -vt devpts devpts $CHROOT/dev/pts mount -vt tmpfs shm $CHROOT/dev/shm mount -vt proc proc $CHROOT/proc mount -vt sysfs sysfs $CHROOT/sys modprobe isofs modprobe loop mount -o loop $ISO_FILE $CHROOT/media #install_crux() { echo "1.1.4 Create core.lst and install pkgadd" for p in $CHROOT/media/crux/core/*; do echo $p >> $CHROOT/core.lst; done tar xf "$CHROOT/media/crux/core/pkgutils#5.36-2.pkg.tar.xz" usr/bin/pkgadd -O > $CHROOT/pkgadd chmod +x $CHROOT/pkgadd echo "1.1.4 File core.lst complete, review list of packages before continue..." read PAUSE vim $CHROOT/core.lst echo "1.1.4 Starting install" touch $CHROOT/var/lib/pkg/db cd $CHROOT while read line; do printf "Installing $line;\n" $CHROOT/pkgadd -f -r $CHROOT $line done < core.lst rm $CHROOT/pkgadd rm $CHROOT/core.lst echo "1.1.5. dns resolver, copy resolv.conf;" cp /etc/resolv.conf $CHROOT/etc echo "1.6. Install Handbook" cp $CHROOT/media/crux/handbook.txt $CHROOT/root/ #} printf "Ready to chroot $CHROOT /bin/bash \n"