02-28-2024, 09:55 AM
I went on a 10 hour roadtrip with PostmarketOS and did not have a great experience, actually. There are a handful of persistent bugs that I have been bashing my head against since day one that have caused me to completely lose my patience. It would be easiest to make a list of features and report what is or is not working - all of which I have tested both with and without the keyboard case:
[ ] = Not working at all; [X] = Working out of the box; [\*] = Working with some setup; [\B] = Works but has bugs; [P] = Partially working; [?] = Not readily available or did not spend enough time testing
[X] Install: The experience installing this distro to the phone was quick, easy, and effective unlike certain other distros that make you add/change passwords/user names/host names/etc after you've already installed it on the phone. These things can be set up during the install process like you would expect when installing most desktop distros.
Linux: (Okay, this section is mostly just opinion. I shouldn't even include this since it's likely to derail any productive discussion) OpenRC...just why? Why would this be used instead of systemd? I'm not saying OpenRC has no uses but I see absolutely zero benefit to dying on that hill here with the Pinephone Pro. And Ash as the only preinstalled shell? Absurd. Seriously, why not include Bash at the absolute minimum? I didn't even realize it was possible for a distro to function without Bash installed. APK feels like a watered down apt. First experience with Alpine Linux, hope it's my last.
[X] SMS: Totally fine, never had any issues at all with this. Much prefer Spacebar over Chatty.
[\*] Call: Took a lot of configuring to tame the microphone but works reliably now.
[\*] MMS: Overall works well and relatively stable. I have 2 APNs and if I receive any MMS messages after losing connection to my Data APN, the MMS will permanently fail to download.
[ ] Camera: Completely broken. Neither have ever worked for me on PMOS. I have tried installing or compiling 6 apps and none worked. Most of the time the camera is simply not detected. Megapixels likes to seg fault. On Mobian, the default app Pinhole works. Even compiling this and its dependencies on PMOS resulted in no camera being detected.
This was especially useful when I was rear-ended and couldn't take a picture of the person's insurance card.
[ ] Alarm: Completely broken. Will not wake phone from sleep. Tested with default app and wakeup-mobile which had an APK that included wakeup-rc or some such similar packages. This also did not work.
[\B] Battery: Battery life is fine using the community modem sdk. Aftermarket battery percentage readings were working fine until the latest firmware update and now the number frequently bounces around both up and now.
[?] Printing: I actually did need to print something while I was on my trip and for the life of me couldn't figure out how. I honestly didn't spend much time on it as I just asked someone else to print it for me but I'm not even sure there's a print server running.
[P] Suspend: Sleep after media playback is very broken. I even wrote a script that runs in the background and kills the media player after 30 minutes and suspend will still fail. I altered the script to run "loginctl suspend" 15 seconds after killing the media player and suspend will still fail. This manifests when I wake up 4 hours later, the phone is very hot to the touch, screen is off, battery nearly dead after falling asleep with a full charge.
dmesg does not return any errors and the app is successfully closed when I unlock. Ran out of ideas and patience for toubleshooting this. I rely on this feature every night to listen to music or asmr so I can fall asleep. This bug is especially egregious to me. Occassionally suspend with no active tasks stops working but for the most part is stable.
[\*] Flashlight: Works. Had an issue where the udev rule got deleted (no clue how or if I somehow caused this) and I had to recreate it so the flashlight would work again.
[\*] GPS: No toggle to turn on/off location services, had to write a script and assign keyboard shortcuts. I use Pure Maps and have had no issues navigating with it,
[\B] Bluetooth: Mostly okay. After about 3 to 4 hours of use, perhaps the physical module or antena is overheating? This might not be specific to PMOS however I have not tested bluetooth this long continuously on other distros. After the 3 or 4 hours, bluetooth will disconnect and music starts playing over the hardware speakers. Bluetooth will reconnect, play music for a few seconds, and disconnect again. The only fix is to wait an indeterminate amount of time and restart the phone.
When my CD player also stopped working, I had a painfully quiet 4 hours left on the drive home. It's not uncommon to use bluetooth for 8 hours consecutively however I readily admit that it is far from the average use-case. I should have brought a cable for the aux input...
[X] Mobile Data: Works fine. I don't have issues surfing the web or streaming videos up to 720p. There is a second package offered for Firefox that must be installed for the UI to scale correctly - it also installs ublock origin and tweaks some other settings. User agent reports as Linux-mobile which is indeed correct however that sticks out like a sore thumb.
[X] Wifi: Works perfectly fine out of the box.
[ ] USB: Completely broken. I can't plug anything into the usb-c port other than a charger. I even went and found a usb-c only flash drive and nothing was reported in dmesg or lsusb when plugged in. Phone is detected by my computer as a Pine64 Pinephone Pro but MTP is unavailable.
[\B] UI: I went with PMOS largely because they offer Plasma-Mobile out of the box which generally speaking I love the look and feel of however there are some issues. Occasionally, using the volume buttons will crash the display session to a black screen. Sometimes the power menu will still trigger in this state. Very frequently, when phone is unlocked in a different rotation than it was locked in, autorotate fails to display half of the screen and needs to be rotated back and forth to get it to display properly. Rarely, this can crash the display similarly to the volume button.
[\*] Keyboard Case: The top row symbols did not work out of the box. I had to change the 3rd level composition key to Right-Alt after installing the proper keymap files. Now it works perfectly fine. Still need to figure out how to change the Pine key to caps-lock but that's unrelated and non-default behaviour.
[P] Keyboard - Virtual: English keyboard works perfectly well. Japanese was easy to install but practically unusable. お こ and そ (o, ko, and so) cannot be typed since any attempt to swipe over these characters causes the virtual keyboard to be closed. Swiping down from the top of the virtual keyboard in any language causes it to be closed, this needs to be inhibited with Japanese input so that only the back arrow minimizes it or the grab window needs to be adjusted.
Conclusion: I can live with something that's takes effort to set up properly. Most of the bugs and issues listed here are negligible or one time fixes. The distro is very close to being useable for Pinephone Pro. There are a few things though that I absolutely cannot tolerate: broken alarm, broken suspend (after media playback), broken camera, broken Japanese keyboard, frequent crashes. My phone crashes every other day at best. It crashed on the drive down and twice on the drive back.
These issues are deal breakers in my opinion and I will switch to a different daily use distro while keeping PMOS on the backburner until these issues are resolved (and stay resolved, ideally). I don't mean to be insulting or overly critical to the developers for PostmarketOS, all said and done there are reasons I chose this to daily drive and I think this distro has a lot of potential. I want to see this succeed and if I can contribute to bug testing, I will.
I probably could have posted some of these to their Gitlab issues page but I also needed to organize what all the issues I experienced were and which ones would be worth reporting there in addition to needing some time to recharge my patience. Plus hopefully this gives people an idea of what to expect when considering PMOS - not that my experience will dictate what yours may be though.
[ ] = Not working at all; [X] = Working out of the box; [\*] = Working with some setup; [\B] = Works but has bugs; [P] = Partially working; [?] = Not readily available or did not spend enough time testing
[X] Install: The experience installing this distro to the phone was quick, easy, and effective unlike certain other distros that make you add/change passwords/user names/host names/etc after you've already installed it on the phone. These things can be set up during the install process like you would expect when installing most desktop distros.
Linux: (Okay, this section is mostly just opinion. I shouldn't even include this since it's likely to derail any productive discussion) OpenRC...just why? Why would this be used instead of systemd? I'm not saying OpenRC has no uses but I see absolutely zero benefit to dying on that hill here with the Pinephone Pro. And Ash as the only preinstalled shell? Absurd. Seriously, why not include Bash at the absolute minimum? I didn't even realize it was possible for a distro to function without Bash installed. APK feels like a watered down apt. First experience with Alpine Linux, hope it's my last.
[X] SMS: Totally fine, never had any issues at all with this. Much prefer Spacebar over Chatty.
[\*] Call: Took a lot of configuring to tame the microphone but works reliably now.
[\*] MMS: Overall works well and relatively stable. I have 2 APNs and if I receive any MMS messages after losing connection to my Data APN, the MMS will permanently fail to download.
[ ] Camera: Completely broken. Neither have ever worked for me on PMOS. I have tried installing or compiling 6 apps and none worked. Most of the time the camera is simply not detected. Megapixels likes to seg fault. On Mobian, the default app Pinhole works. Even compiling this and its dependencies on PMOS resulted in no camera being detected.
This was especially useful when I was rear-ended and couldn't take a picture of the person's insurance card.
[ ] Alarm: Completely broken. Will not wake phone from sleep. Tested with default app and wakeup-mobile which had an APK that included wakeup-rc or some such similar packages. This also did not work.
[\B] Battery: Battery life is fine using the community modem sdk. Aftermarket battery percentage readings were working fine until the latest firmware update and now the number frequently bounces around both up and now.
[?] Printing: I actually did need to print something while I was on my trip and for the life of me couldn't figure out how. I honestly didn't spend much time on it as I just asked someone else to print it for me but I'm not even sure there's a print server running.
[P] Suspend: Sleep after media playback is very broken. I even wrote a script that runs in the background and kills the media player after 30 minutes and suspend will still fail. I altered the script to run "loginctl suspend" 15 seconds after killing the media player and suspend will still fail. This manifests when I wake up 4 hours later, the phone is very hot to the touch, screen is off, battery nearly dead after falling asleep with a full charge.
dmesg does not return any errors and the app is successfully closed when I unlock. Ran out of ideas and patience for toubleshooting this. I rely on this feature every night to listen to music or asmr so I can fall asleep. This bug is especially egregious to me. Occassionally suspend with no active tasks stops working but for the most part is stable.
[\*] Flashlight: Works. Had an issue where the udev rule got deleted (no clue how or if I somehow caused this) and I had to recreate it so the flashlight would work again.
[\*] GPS: No toggle to turn on/off location services, had to write a script and assign keyboard shortcuts. I use Pure Maps and have had no issues navigating with it,
[\B] Bluetooth: Mostly okay. After about 3 to 4 hours of use, perhaps the physical module or antena is overheating? This might not be specific to PMOS however I have not tested bluetooth this long continuously on other distros. After the 3 or 4 hours, bluetooth will disconnect and music starts playing over the hardware speakers. Bluetooth will reconnect, play music for a few seconds, and disconnect again. The only fix is to wait an indeterminate amount of time and restart the phone.
When my CD player also stopped working, I had a painfully quiet 4 hours left on the drive home. It's not uncommon to use bluetooth for 8 hours consecutively however I readily admit that it is far from the average use-case. I should have brought a cable for the aux input...
[X] Mobile Data: Works fine. I don't have issues surfing the web or streaming videos up to 720p. There is a second package offered for Firefox that must be installed for the UI to scale correctly - it also installs ublock origin and tweaks some other settings. User agent reports as Linux-mobile which is indeed correct however that sticks out like a sore thumb.
[X] Wifi: Works perfectly fine out of the box.
[ ] USB: Completely broken. I can't plug anything into the usb-c port other than a charger. I even went and found a usb-c only flash drive and nothing was reported in dmesg or lsusb when plugged in. Phone is detected by my computer as a Pine64 Pinephone Pro but MTP is unavailable.
[\B] UI: I went with PMOS largely because they offer Plasma-Mobile out of the box which generally speaking I love the look and feel of however there are some issues. Occasionally, using the volume buttons will crash the display session to a black screen. Sometimes the power menu will still trigger in this state. Very frequently, when phone is unlocked in a different rotation than it was locked in, autorotate fails to display half of the screen and needs to be rotated back and forth to get it to display properly. Rarely, this can crash the display similarly to the volume button.
[\*] Keyboard Case: The top row symbols did not work out of the box. I had to change the 3rd level composition key to Right-Alt after installing the proper keymap files. Now it works perfectly fine. Still need to figure out how to change the Pine key to caps-lock but that's unrelated and non-default behaviour.
[P] Keyboard - Virtual: English keyboard works perfectly well. Japanese was easy to install but practically unusable. お こ and そ (o, ko, and so) cannot be typed since any attempt to swipe over these characters causes the virtual keyboard to be closed. Swiping down from the top of the virtual keyboard in any language causes it to be closed, this needs to be inhibited with Japanese input so that only the back arrow minimizes it or the grab window needs to be adjusted.
Conclusion: I can live with something that's takes effort to set up properly. Most of the bugs and issues listed here are negligible or one time fixes. The distro is very close to being useable for Pinephone Pro. There are a few things though that I absolutely cannot tolerate: broken alarm, broken suspend (after media playback), broken camera, broken Japanese keyboard, frequent crashes. My phone crashes every other day at best. It crashed on the drive down and twice on the drive back.
These issues are deal breakers in my opinion and I will switch to a different daily use distro while keeping PMOS on the backburner until these issues are resolved (and stay resolved, ideally). I don't mean to be insulting or overly critical to the developers for PostmarketOS, all said and done there are reasons I chose this to daily drive and I think this distro has a lot of potential. I want to see this succeed and if I can contribute to bug testing, I will.
I probably could have posted some of these to their Gitlab issues page but I also needed to organize what all the issues I experienced were and which ones would be worth reporting there in addition to needing some time to recharge my patience. Plus hopefully this gives people an idea of what to expect when considering PMOS - not that my experience will dictate what yours may be though.