DebianOn is an effort to document how to install, configure and use Debian on some specific hardware. Therefore potential buyers would know if that hardware is supported and owners would know how get the best out of that hardware.

The purpose is not to duplicate the Debian Official Documentation, but to document how to install Debian on some specific hardware.

If you need help to get Debian running on your hardware, please have a look at our user support channels where you may find specific channels (mailing list, IRC channel) dedicated to certain types of hardware.

Known issues

Support

This device is still not officially supported by Mobian. You are welcome to discuss about it on Mobian communication channels.

Installation

Known good weekly images

Not all of the weekly images are tested continuously on all devices in all variants. The ones below are known to work and are a good starting point for running testing:

Obtain the Image

Pre-built images for your device are available from https://images.mobian.org/qcom/weekly/, packed in a file named

(where the <family> you are looking for is sdm670).

Verifying the images

See FAQ#How to check Mobian images' signature.

Preparing and flashing the device

WARNING: Flashing Mobian to your device will wipe your Android installation and all the data contained in it. If your device contains data you'd like to retain, please make a backup in advance. Installing a recovery software such as TWRP and making sure you understand how to recover your system before proceeding is also recommended, unless your device contains no valuable data and you know how to recover it.

It's recommended that you upgrade Android to the latest available version and install all system updates before installing Mobian, because Mobian uses FW files from Android partitions for enabling various peripherals.

Device's bootloader needs to be unlocked: the procedure varies depending on the device you own, then either refer to postmarketOS' installation guide for allow bootloader unlocking and unlock the bootloader, or search the Internet for an unlock guide aimed at your specific device.

Mobian images are made of:

Note: Up until 2023-10-22 the archives used to contain an additional image file named mobian-<processor>-phosh-YYYYMMDD.boot.img meant to be flashed to the system partition. This is no longer the case starting with the 2023-10-29 set of images.

As these devices have several variants, which differ only by the device-tree they need, and the DT being part of the bootimg, we provide one bootimg for each variant. You have to flash the one matching your device:

Once you have uncompressed the tarball, boot your device into fastboot mode, connect it to your computer using a USB cable and run the following commands to install Mobian:

fastboot flash boot mobian-<processor>-phosh-YYYYMMDD.boot-<model>.img
fastboot -S 100M flash userdata mobian-<processor>-phosh-YYYYMMDD.rootfs.img
fastboot erase dtbo
fastboot reboot

Please note, erasing DTBO is optional, as described in pmOS wiki.

If all steps above succeeded enable uart, otherwise the device might not boot reliably (pmOS wiki):

fastboot oem uart enable

Then reboot your phone with

fastboot reboot

We are getting told about some device where Mobian isn't succesfully flashed by simply following the official procedure. Flashing the latest Android build via Android online flash tool (Chrome/Chromium required) before repeating Mobian flashing procedure was reported to increase success rate.

Fastboot mode

When the device is shut off, both the !Pixel3a (sargo) and the !Pixel3aXL (bonito) can be put in fastboot mode by pressing and keeping pressed the power and volume down buttons, until the fastboot screen appears. Different entries can be navigated with volume buttons and entered with power button.

Default pin and password

The default user is mobian with password 1234 . See Mobian/FAQ#Default_pin_and_password .

Automatic resizing of your filesystem on first boot

After flashing the image and booting for the first time, Mobian will resize the root filesystem to take all possible space on the disk. This can take a while and will only happen on first boot. So grab a ${DRINK_OF_CHOICE} and be patient.

Notes:

General

GPS

GPS works, but the following two commands are required to have it working:

Disable engine lock:

qmicli -d qrtr://0 --loc-set-engine-lock=mt

Disable proprietary NMEA messages:

qmicli -d qrtr://0 --loc-set-nmea-types=all

This will have to be done after every boot for now.

Audio

Voice Call

[Unit]
Description=Restart the userspace daemon for the QDSP6 voice call audio driver on resume
After=suspend.target

[Service]
Type=simple
ExecStart=/usr/bin/systemctl restart q6voiced.service

[Install]
WantedBy=suspend.target

[Unit]
Description=Disable pulseaudio/pipewire suspend-on-idle module during call
After=ModemManager.service
ConditionUser=!@system

[Service]
ExecStart=/usr/local/bin/call_audio_idle_suspend_workaround.sh

Restart=on-failure
RestartSec=10s

[Install]
WantedBy=default.target

This should be placed in the /lib/systemd/user/ folder and enabled using systemctl --user without sudo or alternatively execute the following in a console

sudo chmod +x /usr/local/bin/call_audio_idle_suspend_workaround.sh
cat <<'EOF' | sudo tee /lib/systemd/user/call_audio_idle_suspend_workaround.service
[Unit]
Description=Disable pulseaudio/pipewire suspend-on-idle module during call
After=ModemManager.service
ConditionUser=!@system

[Service]
ExecStart=/usr/local/bin/call_audio_idle_suspend_workaround.sh

Restart=on-failure
RestartSec=10s

[Install]
WantedBy=default.target

EOF

systemctl --user enable call_audio_idle_suspend_workaround.service

Camera

Starting with the 6.12 kernel shipped with Trixie, this device's cameras are (at least basically) supported. Both front (selfie) and back cameras are supported.

Please execute the following to install needed packages

sudo apt install gnome-snapshot gstreamer1.0-plugins-base-apps

then reboot.

Please understand camera support is still being worked on and it could be that the camera app is showing a black frame from time to time. In order to check whether the camera support is broken at the kernel level or below in the libcamera-gstreamer-pipewire stack, please use following commands:


CategoryDebianOn CategoryDebianOn