It's just small stuff left that needs a bit of piecing together, though I've now been daily driving my port for the past two weeks already.
This Works
booting
display
touch
modem <- You might have to switch to the other slot if it does not work: mmcli -m 0 --set-primary-sim-slot=1, options are 1 or 2. Note that the modem could also be a different number, maybe try -m 1 if it is not found as the command will reboot the modem and then it changes.
plymouth
battery/charging
mobile data
wifi
torch
suspend
call audio
vibration
Bluetooth™
full disk encryption
eSIM (I'm working on the packaging for the tool you need to provision it)
SMS
audio (ALSA config not packaged, but can be added manually)
camera (have taken a few photos, but the kernel driver is still work in progress and sometimes it just does not work)
This Has An Unknown Status
Fingerprint Sensor
NFC (should work, does so on pmOS)
This Does Not Work Yet (Soon™)
GPS
USB host mode (no Kernel support yet, but apparently this is being worked on)
Verified Boot (first need to do research whether this is actually feasible)
This Is Missing And Will Come Later
accelerometer
magnetometer
ambient light sensor
barometer
Project Status
To Do List
Make installer images work on this device
Have droid-juicer run on installer images
Get into the repos: tinyalsa and q6voiced (I've already packaged both)
ALSA config for the device has not been upstreamed yet
Issues with 5 GHz wifi
Can be worked around by forcing the phone to only use the 2.4 GHz band, for example using nmtui, the network settings of GNOME/Phosh are bit too simplistic for that
No idea how to get the call audio on Bluetooth, meaning you will have to hold the phone or use a cable, for now
(This is a non-exhaustive list)
Low Priority
create/find script/tool that brings up Bluetooth & then package it
Other than that... Everything should be there. It's definitely usable already.
Just a few smaller quirks to iron out and two packages to get into the repo.
The Sources (Use The Source, Luke)
My efforts of packaging a device-specific kernel: https://salsa.debian.org/erebion/sdm-670-linux (which will be used until all patches are part of upstream Linux and we can finally use a regular mainline kernel)
Questions Accepted / Ask Me Anything About The Project
I will gladly answer all questions, I hope that more people will start porting if it becomes clear that this is not arcane magic. It’s mostly just arcane. And a community of friendly people that try to be helpful.#
Amazing work! I'm very excited to see mobile Linux reach a usable state for every day processing. Thank your for your time and energy. It is valuable and going to good use.
Why the Pixel 3a? Is there anything special about it (or not special, which might mean my old 3XL is good for more than gathering dust?)
How can I get involved? I know my way around C and would love to pitch in.
Yup. It definitely is now ready for everyday use, though there are still a few smaller issues I've got to fix. But nothing that stops me from using it now.
The only thing special about the Pixel 3a is that I had it already. Maybe it is special in that it is now the smallest Linux phone that is supported by a mainline kernel AND which is actually usable as a phone (for some other phones audio does not work, for example). Some might call a headphone jack something special... or an eSIM, as there are not many Linux phones with an eSIM.
To get involved, I recommend joining the Moban Development Matrix room: #mobian-dev:matrix.debian.social
Pretty sure we can find something where skills in C would be helpful.
I've been testing a handful of distros between my 6T and 3a as well, UBports, Droidian, Pmos, etc, lately I've been a little obsessed with wanting to try Sailfish OS, but it seems it's not worth trying in the USA without X, I'm unsure if it's even possible to purchase X here
No idea, but you could of course install Waydroid on Mobian. I hope Android Translation Layer (https://gitlab.com/android_translation_layer) will at some point get to a state where it is usable as the superior Waydroid alternative for many people.
No idea, but you could of course install Waydroid on Mobian. I hope Android Translation Layer (https://gitlab.com/android_translation_layer) will at some point get to a state where it is usable as the superior Waydroid alternative for many people.
Seeing posts like this inspires me to consider getting an older device and diving into projects like this myself. It’s amazing to think about all the possibilities and what could be created!! Thanks for sharing this post ~° ....
Definitely do! It's a lot of fun and it feels great to have Mobian on the phone instead of having old Android on it or even a phone in the trash and no phone.
If I‘m not completely mistaken, the chip is the same as on my oneplus6. I run postmarketOS/phosh but camera is dead for now. I dont have enough insight to grasp if its just a legal issue or more. I feel like the two projects are quite similar but the differences are hard to grasp really. Whats your background and do you have experience with postmarketos? How do you experience mobians installation and documentation?
That one uses an SDM845, while the Pixel 3a uses an SDM670. But there's a Mobian port to that one anyway. Not sure in what state, anyway. You could flash it and find out.
Camera is probably dead because not all the code has been written yet.
My background is just playing with Linux since before I was a teen, but I did not know anything about porting to phones until early this year.
I have some experience with postmarketOS, but more with Mobian as I am more of a Mobian person. I have more exprience with their docs and community than with postmarketOS itself. Many mobile Linux projects depend on the postmarketOS wiki, as they have the best source of information.
Mobian installation is easy, just flash the images.
Mobian documentation is somewhat lacking, but I want to improve on that once I'm less busy porting. Can't do everything at once, of course.
Thank you very much for reaponding! Awesome to read about your efforts and mobian as an OS. How would you describe the daily driveability (on its own and compared to postmarketos)?