Skip to content

Instantly share code, notes, and snippets.

@benob
Last active May 1, 2024 13:39
Show Gist options
  • Save benob/5b1bce0ec7aa5ce5f0f7f173bfa95a84 to your computer and use it in GitHub Desktop.
Save benob/5b1bce0ec7aa5ce5f0f7f173bfa95a84 to your computer and use it in GitHub Desktop.
9front on raspberry pi 4 w/ wifi
# based on https://github.com/AshyIsMe/plan9-rpi
############# on linux:
# download latest version of 9front for rpi3/4
# adjust version number to get the available version
wget http://9front.org/iso/9front-10522.pi3.img.gz
gunzip 9front-10522.pi3.img.gz
# copy data to memory card (at least 2GB), replace /dev/mmcblk0 with the path to your memory card
dd if=9front-10522.pi3.img of=/dev/mmcblk0 bs=4M status=progress
sync
# download rpi4 wifi firmware
wget https://raw.githubusercontent.com/reMarkable/brcmfmac-firmware/master/brcmfmac43455-sdio.txt
wget https://raw.githubusercontent.com/reMarkable/brcmfmac-firmware/master/brcmfmac43455-sdio.bin
wget https://raw.githubusercontent.com/reMarkable/brcmfmac-firmware/master/brcmfmac43455-sdio.clm_blob
# eject and reinsert memory card to mount it
# copy it to memory card mount point (partition that contains CMDLINE.TXT
cp brcmfmac43455-sdio.* /run/media/$USER/disk/
# optionnaly, you may modify CMDLINE.TXT to boot straight to rio
echo 'console=0 user=glenda nobootprompt=local!/dev/sdN0/fs' > CMDLINE.TXT
############# on plan9:
# boot 9front and select default boot options, you'll land on rio with a couple of terminals open
# mount fat partition where you put the firmware
dossrv
mount /srv/dos /n/9fat /dev/sdN0/dos
# copy firmware to /lib/firmware
cp /n/9fat/brcmfmac43455* /lib/firmware
# setup wifi interface
bind -a '#l1' /net
# connect to wifi access point with WPA2 (see wpa manual for other options)
# replace 'your SSID' with your ssid, and then enter your password when prompted
aux/wpa -2 -s 'your SSID' -p /net/ether1
# run dhcp client to get ip address
ip/ipconfig ether /net/ether1
# test connection
ip/ping google.com
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment