Flashing postmarketOS on a Samsung gtexswifi Device from an Incus VM
By chimo on (updated on )With my Incus VM running Alpine Linux up and running, I was able to install pmbootstrap and build the environment to flash the Samsung Galaxy Tab A 7.0 - SM-T280 (gtexswifi) device.
The first thing we’ll want to do is pass the USB device to the VM so it can see it. On the host:
# Install the "qemu-hw-usb-host" package, if not already installed
apk add qemu-hw-usb-host
# List USB devices
lsusb
# Find the device from the output
...
Bus 001 Device 007: ID <vendorid>:<productid> SAMSUNG SAMSUNG USB DRIVER
...
# Add the USB device to the VM
incus config device add alpine-vm android usb vendorid=<vendorid> productid=<productid>
In the VM, lsusb
should list a device with the matching vendorid and productid.
After that, it’s pretty much standard procedure.
One clarification: before running the pmbootstrap
commands, one needs to
bootup the device in “Download mode” (Power + Volume Down +
Home Button).
Once the device is booted-up and running, this is what I had to do on my Alpine host machine to SSH to the device (the Samsung device registered the “eth0” network interface. Yours might differ.):
ip link set dev eth0 address 12:12:12:12:12:12
ip link set dev eth0 up
ip addr add 172.16.42.2/24 dev eth0
ssh user@172.16.42.1
(user@172.16.42.1) Password:
Welcome to postmarketOS! o/
...
You can then fix the screen being upside-down, if you’re running into that issue, by creating a “/etc/X11/xorg.conf.d/00-fbdev-rotate-UD.conf” file with the following content (credit to an XDA forum post):
Section "Device"
Identifier "LCD"
Driver "fbdev"
Option "Rotate" "UD"
EndSection