Luna/tools/install.sh
apio 16b0531d42
All checks were successful
continuous-integration/drone/push Build is passing
kernel+apps+base+tools: Use Ext2 for the root partition file system
init is now split into two parts: preinit, which lives in the initrd and prepares the root file system for init,
and the actual /usr/bin/init, which lives in the root partition and starts services and reaps zombies.

The kernel now looks for /bin/preinit instead of /bin/init as the executable for the init process.

All configuration files in initrd/etc have been moved to base/etc. (The plan is to have only moon and preinit in the initrd.)

Since the current Ext2 implementation is read-only (and it's on a CDROM so it would be read-only anyways),
/home/selene is a tmpfs (as well as /tmp), to allow for a writable home directory.

The system is slower now, but that's to expect since the Ext2 code doesn't use caching and the ATA code still uses PIO.
2023-07-10 13:05:06 +02:00

34 lines
489 B
Bash
Executable File

#!/usr/bin/env bash
set -e
source $(dirname $0)/env.sh
cd $LUNA_ROOT
if [ "$(id -u)" -ne "0" ]
then
echo "This script must be run under fakeroot."
exit 1
fi
if [ "$USER" == "root" ]
then
echo "This script must be run under fakeroot instead of as root."
exit 1
fi
chown -R root:root base
cmake --install $LUNA_BUILD_DIR
chmod a+s base/usr/bin/su
mkdir -p base/home/selene
mkdir -p base/dev
mkdir -p base/mnt
mkdir -p base/tmp
rm -f base/bin
ln -s usr/bin base/bin