Skip to content

Instantly share code, notes, and snippets.

@jedahan
Created January 12, 2021 19:51
Show Gist options
  • Select an option

  • Save jedahan/6fd8908936b30f19f8d1a025a40417ae to your computer and use it in GitHub Desktop.

Select an option

Save jedahan/6fd8908936b30f19f8d1a025a40417ae to your computer and use it in GitHub Desktop.

Revisions

  1. jedahan created this gist Jan 12, 2021.
    55 changes: 55 additions & 0 deletions Makefile.podman-bridge
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,55 @@
    ARCH ?= arm64
    VERSION ?= 20.10
    SPIN ?= live-server

    vftool ?= ./vftool/build/vftool
    DATA ?= ./data

    ISO := ubuntu-$(VERSION)-$(SPIN)-$(ARCH).iso
    MOUNTPOINT := /Volumes/Ubuntu
    CD := $(DATA)/$(ISO)
    IMAGE := $(DATA)/disk.img
    KERNEL := $(DATA)/vmlinuz
    INITRD := $(DATA)/initrd

    .PHONY: run select

    all: run

    $(IMAGE):
    dd if=/dev/zero of=$(IMAGE) bs=1024k count=20480

    $(CD):
    curl -s https://releases.ubuntu.com/$(VERSION)/$(ISO) -o $(CD)

    $(INITRD): $(MOUNTPOINT)/casper
    cp $(MOUNTPOINT)/casper/initrd $(DATA)/

    $(KERNEL): $(KERNEL).gz
    gunzip $(KERNEL).gz

    $(KERNEL).gz: $(MOUNTPOINT)/casper
    cp $(MOUNTPOINT)/casper/vmlinuz $(KERNEL).gz

    build/Release/podracer:
    xcodebuild

    select:
    xcode-select --switch /Applications/XCode.app

    run: $(vftool) $(CD) $(IMAGE) $(KERNEL) $(INITRD)
    $(vftool) \
    -k $(KERNEL) \
    -i $(INITRD) \
    -d $(IMAGE) \
    -c $(CD) \
    -m 2048 \
    -a "console=hvc0 root=/dev/vda2"

    $(MOUNTPOINT):
    sudo mkdir -p $(MOUNTPOINT)

    $(MOUNTPOINT)/casper: $(MOUNTPOINT) $(CD)
    sudo umount $(MOUNTPOINT)
    $(eval DISK := $(shell sudo hdiutil attach -nomount $(CD) | head -n1 | cut -d' ' -f1))
    sudo mount -t cd9660 $(DISK) $(MOUNTPOINT)