Added auto building of images and vm launch script

This commit is contained in:
Marc
2021-11-25 22:06:50 +01:00
parent 4fe1e97db7
commit b24eba4e94
6 changed files with 82 additions and 13 deletions
+1
View File
@@ -2,3 +2,4 @@ rootfs.iso
chibrax.tar.gz chibrax.tar.gz
rootfs rootfs
linux-firmware linux-firmware
disk.img
+1 -3
View File
@@ -7,7 +7,7 @@ mkdir -p rootfs/boot
mkdir -p rootfs/chibrax mkdir -p rootfs/chibrax
#installation de node & de grub #installation de node & de grub
sudo pacstrap rootfs coreutils nodejs grub efibootmgr sed sudo pacstrap rootfs coreutils nodejs grub sed
chmod +x ./chibraxLoader/build.sh chmod +x ./chibraxLoader/build.sh
cd chibraxLoader && ./build.sh && cd - cd chibraxLoader && ./build.sh && cd -
@@ -29,5 +29,3 @@ sudo chroot rootfs /bin/bash
sudo rm rootfs/var/cache -rf sudo rm rootfs/var/cache -rf
sudo tar -czvf chibrax.tar.gz rootfs
sudo mkisofs -o rootfs.iso chibrax.tar.gz
+52
View File
@@ -0,0 +1,52 @@
#!/bin/bash
# we depend on a properly build rootfs
if [ "$EUID" -ne 0 ]
then echo "Please run as root"
exit
fi
CHIBRAX_MOUNT_POINT="/tmp/chibraxMountPoint"
rm -f disk.img
#create a 8Gb iso
dd if=/dev/zero of=disk.img bs=1024k seek=$((1000 * 8)) count=0
#creating a msdos image for mbr boot
parted disk.img mklabel msdos
parted disk.img mkpart primary ext4 0% 100%
START_SECTOR=$(file disk.img | cut -d',' -f 8 | cut -d' ' -f3)
echo "Start sector :" $START_SECTOR
OFFSET=$((512*$START_SECTOR))
losetup --offset $OFFSET -f disk.img
LOOP=$(losetup -a | grep -v deleted | cut -d':' -f 1)
losetup -f disk.img
LOOP_ROOT=$(losetup -a | grep -v deleted | grep -v ${LOOP} | cut -d':' -f 1)
mkdir $CHIBRAX_MOUNT_POINT -p
mkfs.ext4 ${LOOP}
mount ${LOOP} $CHIBRAX_MOUNT_POINT
echo "coping rootfs"
cp rootfs/* $CHIBRAX_MOUNT_POINT -r
echo "done"
echo "installing grub"
arch-chroot $CHIBRAX_MOUNT_POINT grub-install --target=i386-pc ${LOOP_ROOT} --modules=part_msdos
arch-chroot $CHIBRAX_MOUNT_POINT grub-mkconfig -o /boot/grub/grub.cfg
PARTUUID=$(lsblk /dev/loop7 --fs | awk '{print $4}' | grep -v LABEL)
echo "menuentry 'Chibrax OS' {" >> $CHIBRAX_MOUNT_POINT/boot/grub/grub.cfg
echo " set root='hd0,msdos1'" >> $CHIBRAX_MOUNT_POINT/boot/grub/grub.cfg
echo " linux /boot/vmlinuz rootfstype=ext4 root=/dev/sda1" >> $CHIBRAX_MOUNT_POINT/boot/grub/grub.cfg
echo "}" >> $CHIBRAX_MOUNT_POINT/boot/grub/grub.cfg
umount $CHIBRAX_MOUNT_POINT
losetup -d $LOOP_ROOT
losetup -d $LOOP
chmod 755 disk.img
+4
View File
@@ -14,3 +14,7 @@ sudo rm rootfs/var/cache -rf
sudo tar -czvf chibrax.tar.gz rootfs sudo tar -czvf chibrax.tar.gz rootfs
sudo mkisofs -o rootfs.iso chibrax.tar.gz sudo mkisofs -o rootfs.iso chibrax.tar.gz
sudo rm rootfs/etc/grub.d/10_linux
sudo rm rootfs/etc/grub.d/10_linux_xen
sudo rm rootfs/etc/grub.d/30_os-prober
+10 -10
View File
@@ -5,22 +5,22 @@ console.log(`
_______ _________ ______ _______ _______ _______ _________ ______ _______ _______
( ____ \|\ /|\__ __/( ___ \ ( ____ )( ___ )|\ /| ( ____ \\|\\ /|\\__ __/( ___ \\ ( ____ )( ___ )|\\ /|
| ( \/| ) ( | ) ( | ( ) )| ( )|| ( ) |( \ / ) | ( \\/| ) ( | ) ( | ( ) )| ( )|| ( ) |( \\ / )
| | | (___) | | | | (__/ / | (____)|| (___) | \ (_) / | | | (___) | | | | (__/ / | (____)|| (___) | \\ (_) /
| | | ___ | | | | __ ( | __)| ___ | ) _ ( | | | ___ | | | | __ ( | __)| ___ | ) _ (
| | | ( ) | | | | ( \ \ | (\ ( | ( ) | / ( ) \ | | | ( ) | | | | ( \\ \\ | (\\ ( | ( ) | / ( ) \\
| (____/\| ) ( |___) (___| )___) )| ) \ \__| ) ( |( / \ ) | (____/\\| ) ( |___) (___| )___) )| ) \\ \\__| ) ( |( / \\ )
(_______/|/ \|\_______/|/ \___/ |/ \__/|/ \||/ \| (_______/|/ \\|\\_______/|/ \\___/ |/ \\__/|/ \\||/ \\|
_______ _______ _______ _______
( ___ )( ____ \ ( ___ )( ____ \\
| ( ) || ( \/ | ( ) || ( \\/
| | | || (_____ | | | || (_____
| | | |(_____ ) | | | |(_____ )
| | | | ) | | | | | ) |
| (___) |/\____) | | (___) |/\\____) |
(_______)\_______) (_______)\\_______)
`) `)
Executable
+14
View File
@@ -0,0 +1,14 @@
echo "Attention sur linux le son est a zero par default dans le paneau de config"
qemu-system-x86_64\
-machine type=q35,accel=kvm\
-enable-kvm\
-object rng-random,id=rng0,filename=/dev/urandom -device virtio-rng-pci,rng=rng0\
-cpu host\
-smp 2\
-m 4G\
-drive file=disk.img,format=raw\
-net user\
-k fr\
-vga qxl\
-audiodev pa,id=hda,out.mixing-engine=on \
-device intel-hda -device hda-output,audiodev=hda