[gnome-build-meta.wiki] Create Emulating GNOME OS



commit 6cefd433867032493706739c552f73aec12dad7c
Author: Tanvir Roshid <tanvirroshid786123 gmail com>
Date:   Fri Sep 16 12:09:23 2022 +0000

    Create Emulating GNOME OS

 Emulating-GNOME-OS.md | 107 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 107 insertions(+)
---
diff --git a/Emulating-GNOME-OS.md b/Emulating-GNOME-OS.md
new file mode 100644
index 0000000..f3686d8
--- /dev/null
+++ b/Emulating-GNOME-OS.md
@@ -0,0 +1,107 @@
+# AARCH64
+
+## Dependencies
+
+- QEMU 7.0
+  - `apt-get autoremove --purge qemu-system\\\*`
+  - `apt-get install -t bullseye-backports qemu-system`
+- Built AARCH64 GnomeOS image from [buildstream 1.6.6](Install%20buildstream%201.6.6)
+
+## Setup
+
+1. cd into the checkout directory of your build or create a new directory with a downloaded AARCH64 `.img` 
file and cd into it
+2. Get the UEFI firmware by `wget 
http://snapshots.linaro.org/components/kernel/leg-virt-tianocore-edk2-upstream/latest/QEMU-AARCH64/RELEASE_GCC5/QEMU_EFI.img.gz`
+3. Unzip the firmware using `gunzip QEMU_EFI.img.gz`
+4. Create the Linux root disk `qemu-img create -f qcow2 debian.img 32G`
+5. Create the EFI system disk `qemu-img create -f qcow2 varstore.img 64M`
+
+## Running
+
+Using `--display sdl -vga none -device virtio-vga,xres=<X>,yres=<Y>` results in non-failing error
+
+- To run in Pinephone scaling (200%):
+
+```
+qemu-system-aarch64 \
+    -cpu cortex-a53 -M virt -m 4096 \
+    -drive if=pflash,format=raw,file=QEMU_EFI.img \
+    -drive if=pflash,file=varstore.img \
+    -drive if=virtio,file=debian.img \
+    -drive if=virtio,format=raw,file=disk.img \
+    -device nec-usb-xhci,id=xhci \
+    -device usb-tablet,bus=xhci.0 \
+    --display sdl -vga none -device virtio-vga,xres=360,yres=720 \
+    -usb -device usb-kbd
+```
+
+- To run in normal scaling (100%):
+
+```
+qemu-system-aarch64 \
+    -cpu cortex-a53 -M virt -m 4096 \
+    -drive if=pflash,format=raw,file=QEMU_EFI.img \
+    -drive if=pflash,file=varstore.img \
+    -drive if=virtio,file=debian.img \
+    -drive if=virtio,format=raw,file=disk.img \
+    -device nec-usb-xhci,id=xhci \
+    -device usb-tablet,bus=xhci.0 \
+    --display sdl -vga none -device virtio-vga,xres=720,yres=1440 \
+    -usb -device usb-kbd
+```
+
+### No error
+
+```
+qemu-system-aarch64 \
+    -cpu cortex-a57 -M virt -m 4096 -device virtio-gpu-pci \
+    -drive if=pflash,format=raw,file=QEMU_EFI.img \
+    -drive if=pflash,file=varstore.img \
+    -drive if=virtio,file=debian.img \
+    -drive if=virtio,format=raw,file=disk.img \
+    -device nec-usb-xhci,id=xhci \
+    -device usb-tablet,bus=xhci.0 \
+    -usb -device usb-kbd
+```
+
+# x86_64
+
+## Dependencies
+- QEMU 7.0
+    - `apt-get autoremove --purge qemu-system*`
+    - `apt-get install -t bullseye-backports qemu-system`
+- Built x86_64 GnomeOS image from [buildstream 1.6.6](Install buildstream 1.6.6)
+- OVMF
+    - `apt-get update -y && apt-get install -y ovmf`
+
+## Setup
+- cd into the checkout directory of your build
+- If the image is in the form `.img.xz` in the checkout directory unarchive it by `unxz disk.img.xz`
+- Copy the UEFI firmware to your local directory by `cp /usr/share/OVMF/OVMF_VARS.fd .`
+
+## Running
+- To run in Pinephone scaling (200%):
+```
+cp /usr/share/OVMF/OVMF_VARS.fd .
+qemu-system-x86_64 \
+  -enable-kvm -m 4G -smp 4 -machine q35,accel=kvm -cpu host \
+  -drive if=pflash,format=raw,unit=0,file=/usr/share/OVMF/OVMF_CODE.fd,readonly=on \
+  -drive if=pflash,format=raw,unit=1,file=OVMF_VARS.fd \
+  --display sdl -vga none -device virtio-vga,xres=360,yres=720 \
+  -netdev user,id=net1 -device e1000,netdev=net1 \
+  -device intel-hda -device hda-duplex \
+  -usb -device usb-tablet \
+  -drive file=disk.img,format=raw,media=disk
+```
+- To run in normal scaling (100%):
+```
+cp /usr/share/OVMF/OVMF_VARS.fd .
+qemu-system-x86_64 \
+  -enable-kvm -m 4G -smp 4 -machine q35,accel=kvm -cpu host \
+  -drive if=pflash,format=raw,unit=0,file=/usr/share/OVMF/OVMF_CODE.fd,readonly=on \
+  -drive if=pflash,format=raw,unit=1,file=OVMF_VARS.fd \
+  --display sdl -vga none -device virtio-vga,xres=720,yres=1440 \
+  -netdev user,id=net1 -device e1000,netdev=net1 \
+  -device intel-hda -device hda-duplex \
+  -usb -device usb-tablet \
+  -drive file=disk.img,format=raw,media=disk
+```
\ No newline at end of file


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]