721c919c7b
Changes: - kernel 6.0.2 - Broken init scripts - Switch to bun for better peroformance an easier ffi - Removed grup - Efi support without graphics (at least graphics werent tested) - Suppression de toutes les dépendance non libc - new splash - broken audio - typescript support - ls rewritten to be more reliable
121 lines
3.3 KiB
Bash
Executable File
121 lines
3.3 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
if [ "$EUID" = 0 ]
|
|
then echo "Please don't run this as root"
|
|
exit
|
|
fi
|
|
|
|
unset LD_LIBRARY_PATH
|
|
export LD_LIBRARY_PATH=$(pwd)/libfs/usr/lib
|
|
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/libfs/usr/lib32
|
|
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/libfs/usr/lib64
|
|
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/libfs/usr/local/lib64
|
|
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/libfs/usr/local/lib
|
|
#host system for backup
|
|
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/lib64
|
|
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib
|
|
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib32
|
|
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64
|
|
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/lib
|
|
|
|
#it doesn't work yet so we unset the vars
|
|
unset LD_LIBRARY_PATH
|
|
|
|
echo $LD_LIBRARY_PATH
|
|
|
|
function makeroot {
|
|
mkdir -p ${1}/boot || exit 1
|
|
mkdir -p ${1}/chibrax || exit 1
|
|
mkdir -p ${1}/usr/local/bin || exit 1
|
|
mkdir -p ${1}/usr/local/sbin || exit 1
|
|
mkdir -p ${1}/usr/local/lib || exit 1
|
|
mkdir -p ${1}/usr/local/lib64 || exit 1
|
|
mkdir -p ${1}/usr/local/etc || exit 1
|
|
mkdir -p ${1}/usr/bin || exit 1
|
|
mkdir -p ${1}/usr/sbin || exit 1
|
|
mkdir -p ${1}/usr/lib || exit 1
|
|
mkdir -p ${1}/usr/lib32 || exit 1
|
|
mkdir -p ${1}/dev || exit 1
|
|
mkdir -p ${1}/sys || exit 1
|
|
mkdir -p ${1}/tmp || exit 1
|
|
mkdir -p ${1}/home || exit 1
|
|
mkdir -p ${1}/root || exit 1
|
|
mkdir -p ${1}/proc || exit 1
|
|
mkdir -p ${1}/run || exit 1
|
|
|
|
echo "creating ${1} links"
|
|
cd ${1}
|
|
ln -s usr/bin bin || exit 1
|
|
ln -s usr/sbin sbin || exit 1
|
|
ln -s usr/lib lib || exit 1
|
|
ln -s usr/lib lib64 || exit 1
|
|
cd -
|
|
cd ${1}/usr
|
|
ln -s lib lib64 || exit 1
|
|
cd -
|
|
}
|
|
|
|
# 2> /dev/null veut dire que l'on veut pas voire les erreurs
|
|
sudo umount rootfs/proc -R 2> /dev/null
|
|
sudo rm -rf rootfs/ 2> /dev/null
|
|
sudo rm -rf libfs/ 2> /dev/null
|
|
sudo rm root.iso 2> /dev/null
|
|
sudo rm chibrax.tar.gz 2> /dev/null
|
|
makeroot libfs || exit 1
|
|
makeroot rootfs || exit 1
|
|
|
|
cd rootfs/usr
|
|
ln -s lib lib64
|
|
cd -
|
|
|
|
echo "done"
|
|
|
|
echo "construction de la libc"
|
|
chmod +x ./libc/build.sh
|
|
cd libc && ./build.sh > /dev/null || exit 1 && cd -
|
|
echo "done"
|
|
|
|
echo "Téléchargement de Bun"
|
|
cd bun && ./build.sh && cd -
|
|
cp bun/bun-linux-x64/bun rootfs/usr/bin/bun
|
|
echo "done"
|
|
|
|
bun/bun-linux-x64/bun install
|
|
|
|
echo "construction du loader"
|
|
chmod +x ./osLoader/build.sh
|
|
cd osLoader && ./build.sh && cd -
|
|
cp osLoader/init rootfs/usr/sbin/ || exit 1
|
|
echo "done"
|
|
|
|
echo "construction du bypass de sh"
|
|
chmod +x ./fakesh/build.sh
|
|
cd fakesh && ./build.sh && cd -
|
|
echo "done"
|
|
|
|
echo "construction du kernel"
|
|
cd kernel && ./from_current.sh && cd -
|
|
echo "done"
|
|
|
|
echo "Cloning the firmware"
|
|
# on masque les erreurs si le depot est deja clone
|
|
git clone https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git 2> /dev/null
|
|
cd linux-firmware && git pull && cd -
|
|
sudo mkdir -p rootfs/usr/lib/firmware || exit 1
|
|
sudo cp linux-firmware/* rootfs/usr/lib/firmware/ -r || exit 1
|
|
echo "done"
|
|
|
|
cp libfs/usr/lib/libc.so.6 rootfs/usr/lib/
|
|
cp libfs/usr/lib/libdl.so.2 rootfs/usr/lib/
|
|
cp libfs/usr/lib/libm.so.6 rootfs/usr/lib/
|
|
cp libfs/usr/lib/libpthread.so.0 rootfs/usr/lib/
|
|
cp libfs/usr/lib64/ld-linux-x86-64.so.2 rootfs/usr/lib64/
|
|
|
|
sudo cp rootfs\ overrides/* rootfs/ -r || exit 1
|
|
|
|
unset LD_LIBRARY_PATH
|
|
|
|
sudo chown root rootfs -R
|
|
|
|
#`libtool --finish /usr/lib
|