#!/bin/bash
-# reset working dir
-rcd() {
- cd /root/instantARCH
-}
-
-serror() {
- echo "script failed"
- exit 1
-}
-
-setinfo() {
- if [ -e /usr/share/liveutils ]; then
- pkill instantmenu
- fi
- echo "$@" >/opt/instantprogress
-}
-
-escript() {
- rcd
- ./$1.sh || serror
- echo "$1" >>/tmp/instantprogress
- setinfo "${2:-info}"
-}
-
-# scripts executed in installed environment
-chrootscript() {
- if ! mount | grep -q '/mnt.*ext4'; then
- echo "mount failed"
- exit 1
- fi
-
- rcd
- arch-chroot /mnt "/root/instantARCH/${1}.sh" || serror
- echo "chroot: $1" >>/tmp/instantprogress
- setinfo "${2:-info}"
-}
+source /root/instantARCH/installutils.sh
-chrootscript "depend/depend" "preparing installer packages" &&
- chrootscript "depend/depend" "preparing installer packages" &&
- chrootscript "depend/system" "installing dependencies" &&
- chrootscript "chroot/chroot" "configuring system" &&
- chrootscript "chroot/drivers" "installing drivers" &&
- chrootscript "lang/timezone" "settings time"
+chrootscript "depend/depend" "preparing installer packages"
+chrootscript "depend/depend" "preparing installer packages"
+chrootscript "artix/preinstall" "applying artix fixes"
+chrootscript "depend/system" "installing dependencies"
+chrootscript "chroot/chroot" "configuring system"
+chrootscript "chroot/drivers" "installing drivers"
+chrootscript "lang/timezone" "settings time"
# grub: install package, install, generate config
if efibootmgr; then
chrootscript "bootloader/efi" "installing bootloader"
else
- escript bootloader/install "installing bootloader"
+ chrootscript "bootloader/install" "installing bootloader"
fi
chrootscript "user/user" "setting up user" &&
chrootscript "network/network" "setting up networkmanager" &&
- chrootscript "bootloader/config" "configuring bootloader" || exit 1
+ chrootscript "bootloader/config" "configuring bootloader"
-if ! [ -e /root/instantARCH/config/onlyarch ]; then
+touch /opt/noerror
+chrootscript "lang/locale" "setting locale"
+[ -e /opt/noerror ] && rm /opt/noerror
+
+# make instantOS packages optional
+if ! iroot onlyarch &&
+ ! [ -e /opt/onlyarch ]; then
chrootscript "instantos/install" "configuring instantOS, this will take a while"
+ if grep -iq 'manjaro' /etc/os-release; then
+ echo "manjaro extra steps"
+ chrootscript "chroot/chroot" "extra steps for manjaro"
+ fi
fi
+chrootscript "artix/postinstall" "checking for reverting artix fixes"
+
# mark installation as susccessful
touch /opt/installsuccess