Index of /Solaris/illumos-aarch64/Asahi-M1/
Name | Last Modified | Size | Type |
../ | | - | Directory |
README.txt | 2022-Aug-16 10:52:07 | 2.0K | text/plain; charset=utf-8 |
ebpf_rss.c | 2022-Aug-16 09:45:51 | 4.0K | text/x-csrc; charset=utf-8 |
fdmon-io_uring.c | 2022-Aug-16 09:45:52 | 11.2K | text/x-csrc; charset=utf-8 |
Running illumos aarch64 on Asahi Linux on M1/M2
-----------------------------------------------
# git clone the 6.1.0 branch
git clone --branch osport/qemu-6.1.0 https://github.com/n-hys/qemu/
# copy the patched files to the $SRC/ (where you cloned qemu)
cp ebpf_rss.c $SRC/qemu/ebpf/
cp fdmon-io_uring.c $SRC/qemu/util/
cd qemu
./configure --target-list=aarch64-softmmu
make
sudo make install
# Make sure you have the following file
cat /usr/local/etc/qemu/bridge.conf
allow br0
# Then just use the ready made images + scripts
# You can download the ready-made images from here
https://astr0baby.online/Solaris/illumos-aarch64/
- Download disk.img.xz and uncompress (unxz disk.img.xz)
- Download flash.bin
- Download intetboot.bin
- Download intetboot.out
- Download run.sh
# Additional tools need to be pulled for the below bridging to work on the Asahi
sudo pacman -S bridge-utils net-tools
# And most importanly the
wget http://user-mode-linux.sourceforge.net/uml_utilities_20070815.tar.bz2
bunzip uml_utilities_20070815.tar.bz2
tar -xvf uml_utilities_20070815.tar
cd tools-20070815
make
# The make will error on uml_net/hoct.c:215 undefined
# reference to ` makedev`
# this does not really matter, the tunctl binary will be built which we can copy over to /usr/bin like this
cd tunclt
sudo cp tunctl /usr/bin
# Make sure you have the /dev/tun node created (it was not by default on the Asahi fresh install)
sudo mkdir -p /dev/net
sudo mknod /dev/net/tun c 10 200
# Then just reboot Asahi for this to work
# My host networking script for Qemu (bridge)
# (On the Linux-aarch64 host)
tunctl -t tap0 -u user
ifconfig tap0 up
brctl addbr br0
brctl setfd br0 0
ifconfig br0 10.0.2.2 netmask 255.255.255.0 broadcast 10.0.2.255 up
brctl addif br0 tap0 tap1
ifconfig tap0 0.0.0.0
sysctl net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
# SSHD can be started manually from the root shell console
# /usr/local/sbin/sshd
# Credentials:
# user:p4ssw0rd
# root:p4ssw0rd