Skip to content

Instantly share code, notes, and snippets.

@ndunks
Last active January 20, 2023 07:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save ndunks/63d8aa2d0f96fc6ec478627074a3f19a to your computer and use it in GitHub Desktop.
Save ndunks/63d8aa2d0f96fc6ec478627074a3f19a to your computer and use it in GitHub Desktop.
Install and setup Alpine Linux for Chromium Kiosk Mode using Qemu

Setup Alpine Linux

Make Disk Image

dd if=/dev/zero bs=1M of=disk.img count=1000

Formating Disk Image

cat <<EOF | sfdisk disk.img
label: gpt
label-id: F33F9925-C0F4-4215-BFEA-84B3D3E42770
device: disk.img
unit: sectors
first-lba: 34
last-lba: 2047966

disk.img1 : start=        4096, size=      200704, type=C12A7328-F81F-11D2-BA4B-00A0C93EC93B, uuid=F0AAFFAC-C753-4471-A5C0-FDD50EE066BB, name="boot"
disk.img2 : start=      204800, size=     1841152, type=0FC63DAF-8483-4772-8E79-3D69D8477DE4, uuid=812EE05E-8B79-4B51-A783-7B1C9EA32188, name="deb10"
EOF

Verify the disk fdisk -l disk.img:

Disk disk.img: 1000 MiB, 1048576000 bytes, 2048000 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: F33F9925-C0F4-4215-BFEA-84B3D3E42770

Device      Start     End Sectors  Size Type
disk.img1    4096  204799  200704   98M EFI System
disk.img2  204800 2045951 1841152  899M Linux filesystem

Format partition 1 as Fat32, and Partition 2 as Ext4

sudo losetup -f disk.img
sudo mkfs.fat /dev/loop0p1
sudo mkfs.ext4 /dev/loop0p2

QEMU EFI

sudo apt install ovmf

Installing Alpine with Qemu

Download Alpine

wget https://dl-cdn.alpinelinux.org/alpine/v3.13/releases/x86_64/alpine-extended-3.13.2-x86_64.iso

Run Qemu

sudo qemu-system-x86_64 -enable-kvm -smp 4 -m 2G -drive file=disk.img,format=raw -bios /usr/share/ovmf/OVMF.fd
sudo qemu-system-x86_64 -enable-kvm -smp 4 -m 2G -drive file=disk.img,format=raw -cdrom alpine-extended-3.13.2-x86_64.iso -boot d

use login "root"

setup-alpine
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment