The frustrating part about this is that it's getting more difficult to flash ROMs onto most phones, not easier. For instance, all Samsung Galaxy flagships since the S6 have a locked bootloader. If you have the US-based Snapdragon models, it's nearly impossible to unlock them and load custom ROMs. And if you somehow do, Samsung caps your battery at 80% or so.
There are notable exceptions. The OnePlus phones are easy to flash, as are Sony Experia models. But for the average person just looking to get a few more years out of their device, the OEMs have made it very clear how much they resent you keeping your phone beyond the two year mark.
LG have made some nice improvements to allowing bootloader unlocking on some of their models. It's still definitely well beyond what "normal people" would be able to do, but it's nice to see from a technical standpoint. At least one model from each of the LG V10/V20/V30 and G4/G5/G6 are able to be unlocked in an official way.
> And if you somehow do, Samsung caps your battery at 80% or so.
That sounds suspiciously like "we don't want you running firmware that causes that battery to explode on a device that features a Samsung logo prominently on it." Given their recent history, I'm not sure I blame them for that specific bit.
The Xperia phones are very developer hostile if you ever intend to return back to the official software. Unlocking the bootloader wipes the TA partition which is required for camera and many other features on stock ROM.
A safe bet is to buy whatever device google sells from the google store. All the nexus and pixel devices sold directly by google have unlockable bootloaders. Recently, google has made things worse by selling ones that can't be unlocked through carriers. From a security standpoint, google's devices are also the only ones that let you verify a third party firmware with your own keys etc. At least that's one of the reasons cited by copperheadOS. I don't think other manufacturers have that feature, even if they allow unlocking the bootloader.
Actually bootloaders are not always as perfectly secure as they may seem [0].
For example, McBitter from postmarketOS is a low level reverse engineering contributor, who made remarkable progress on opening up the bootloader of Mediatek devices [1]. People who want to contribute on that level, check out the #postmarketos-lowlevel ("the kernel is high level for us") chat [2].
HTC also offered easy unlocks since the One m7 (and probably before). Nexuses/Pixels of course are the easiest. To me it feels like Samsung is the exception here.
>> it's getting more difficult to flash ROMs onto most phones, not easier
Turns out, that is a niche use of a phone. Few people really need it.
But, some of them post on Facebook and Twitter "here is how to flash your phone and get unlimited games"
... and then many of those get bricked or attacked by viruses, and/or get otherwise disabled, and now the provider needs to deal with the tech support issues.
Plus, the ads may be redirected to someone else.
So yeah, if I was Samsung or Apple, I would not want you to flash the ROMs.
May this be the way open source arrives to the masses? As a solution against planned obsolescence?
If people gets used to giving their old devices a second life by lending their old devices to a fellow geek, to install this "weird app" that allows them to keep using it, that could become huge exposure for FLOSS operating systems.
It's the exact same story with Windows and Linux. Many old PCs running Windows XP that cannot handle Windows 7's minimum requirements are being wiped by geeks and are installing Linux Mint, Ubuntu, Xubuntu, or some other distro onto these devices.
As long as Linux, postmarketOS or LineageOS are the "weird apps" geeks install for their friends' devices, I highly doubt they'll ever gain any real exposure outside of tech circles.
that's the dumb (sorry) idea that hold Linux on the desktop for so long.
lots of time wasted without any big increase in adoption.
companies making the devices standards (apple, google, samsung) all make lots of money from ads, and subscription services. both of those things get huge advantage if you can lock in your customer.
we are still living the main frame age on mobiles. even if you can install your os on old and new devices, it doesn't matter, because they can cut you out of whatsapp or youtube (see Amazon firephone)
the os is irrelevant to adoption. but it must have the or dictate killer apps. when foss solve IM, social and ugc video streaming, then the personal computer era will begin on mobiles.
Ancient devices don't cease to work (unless their hardware fails, of course). They just don't get upgrades and new features (new apps, etc etc). A factory reset (or reflash) may be required to get rid of cruft, then reinstall apps from backup - but afterwards it would work.
If the postmarketOS would offer more features (mostly I think of apps) than some ancient Android, this may be a reason to replace the OS. But I really doubt it would happen. It would require a lot of effort to get anywhere close to Android 4.x ecosystem.
And I believe most users would prefer old apps (downloaded as .apks from random archive sites) to some security patches they frequently don't even know about.
I have a couple unused phones lying around doing nothing. One is cheap "GoClever" phone i bought a few years ago and had it die or something some years ago (it is most likely fixable, but my mother had a phone she didn't want anymore due to upgrading and i got hers instead) and another is the ill-fated ZTE Open with Firefox OS which i bought the instant it was available (through ebay because nobody local would have it available).
What i'd really love to do is to replace the entire OS from the ZTE Open one with a barebones Linux, and X server (no Wayland) and a few custom apps to use for music playback, note taking, etc. It was on my mind since i actually got my hands on it and saw how an awful idea was to have an OS that is built around "web applications" (i already knew it, i just hoped it wouldn't be too bad and wanted it for the novelty of having a phone with the Firefox logo :-P). The hardware is theoretically more powerful than the PC i had back when i played Quake 2 in full software rendering mode, yet it was barely usable due to everything being slow (i've actually lost calls because the UI was frozen).
I see from the hardware list that some related devices seem to be supported so at some point i'd like to try doing that. It is more for a "here is how to actually make use of hardware resources without sucking" personal statement than something i really need (my 1st gen iPod Touch still works fine after all), so it might take a while for me to bother trying :-P.
May I know why that is? By all accounts, Wayland is more adapted to embedded devices, with a cleaner architecture. I don't think that you need features such as xdraw, printer and gpu drivers, input handling or a lot of what isn't display related baked into the compositor.
I tkink that PostmarketOS could actually fit your goal quite well (you can run a variety of desktop environments on it, with Xorg o'er Wayland, including lightweight ones such as i3). But of course, the project is still in its infancy, although the community is pretty welcoming, and would probably be happy to help you get started ;)
Nice to see open GPU drivers freedreno and etnaviv being able to run complete desktop environments. Looks like lima might join the party too, eventually https://github.com/yuq/mesa-lima/issues/29
Is there good documentation anywhere regarding the minimum set of blobs (kernel, HAL, modem, display etc drivers) necessary to gut an Android device back to its bare shell? I love these alternative OS projects, but really I think a lot of that effort may be misspent for non-purists like myself. Maybe sometime after a simple, basic UI and apps are running on the phone, then a complex project like Microsoft's Android app sandboxing could be attempted
Would love there to be something that provided just enough glue code between HAL and, say, Qt, alongside a bunch of shell scripts for gutting images of common handsets. But getting there myself, I've really little clue about this stuff, but I'm sure there is tribal knowledge buried all over the forums the Android dev community use
It's not super clear which blobs are needed for particular devices - and it's different for all of them. I'm not aware of a single place to find what's needed - though the LineageOS device repositories can help a lot.
The plan, especially when it comes to modems and graphics acceleration, is to package these firmware blobs separately. Then, a user can choose at install time if they're alright with non-free blobs running on their phone. This has already been done for many phones for WiFi/Bluetooth chipsets.
This method also has the advantage of letting us move quicker - we don't need to wait years to reverse engineer modem firmware, or be required to spend the time mainlining every device we want to add in order to get the "essential" features for a phone.
That depends on the chip and what you really think you need.
Me personally I'm fine with framebuffer drivers, I don't need hardware acceleration. So that needs no blobs. For some Qualcomm chipsets you can get 3D acceleration working without blobs using freedreno.
I personally started working on getting the qualcomm modem userspace blobs working under pmOS[0].
If you just want pretty much everything to get to work, there's also the halium project[1] which runs a stripped down android in an LXC container to provide that stuff. This could easily be ported to pmOS too.
It really depends on how libre you want your phone to be. Android applications could probably be run on pmOS too using e.g. Anbox[2].
It varies per device, but the wiki also has some information about which firmware is needed/where more research needs to be done/which free software re-implementations exist.
Most manufactures when they had small consumer base were developer friendly, it is when they gain significant market they stop being one.
I can think of few technical reasons as well,
1. To sustain competition they have build their IP (e.g camera blob, Personal Assistant) .
2. Security as a commodity, especially for enterprise customers.
OnePlus has deep relations with XDA community, Oppo's Find series phone was actively contributed and If I'm right; the mods got free devices then. Oxygen OS team was by itself Paranoid Android team.
OnePlus devices could be the best 'modder' friendly phone right now, the question is how long they would be able to keep it that way.
Really cool to see Glass hit this list, I'd love to break mine out again if I had a way to use it without Google tracking.
The thing I recently got to play with wearable computing is a Vufine+ and an Intel Compute Stick, both of which can be powered by a regular external phone battery.
If you are interested in this and have some time to spare:
You should be able to flash something like your regular desktop Linux on it already. It's no where as functional as the original device was by now, but it's free of the tracking. From there on you could try to make it as functional as you need it to be.
Project is really cool and I am looking forward to it. Still, rather than make 10 different desktop environments run, wouldn't be better to implement critical features that are currently missing (i.e. calls)?
There is the iphonelinux project and we have the beginnings of a port to the ipod touch 1G, but the main issue with that port is that we can't get openiboot to build with GCC6
> I understand they only run signed boot loaders / kernels / etc., but that was also true of the PS3 and that was broken wide open some years back ...
That was due to security flaws in Sony's software, though. Apple's software may have security flaws, but if it does, the flaws apparently either haven't been found yet or haven't been publicly published by anyone who did find flaws.
Tangentially related: I keep wondering what to do with old Apple devices. I have an old 3rd gen iPad that is intolerably slow, but has such a nice form factor and screen that I hate to get rid of it.
If someone made a swap-out logic board to Android-ify these things, I suspect there’s still got to be tons of them laying around.
If you have some time to spare and want to learn something new, just try to get postmarketOS on one of them. Here are some loose ends to start with (not only iPod related, Apple in general): [0]
If you get stuck somewhere, the community is happy to help you either in the matrix/irc chat[1] or in GitHub issues[2].
Does postmarketOS use android-based binary blobs, and what does it have over such projects as Google-Free LineageOS (as in, if you don't flash opengapps) or Replicant?
The biggest difference is, that Android's build system is completely avoided as of now. The system consists of small packages, and you can easily modify those parts without rebuilding the entire system.
Regarding blobs, right now there are no blobs running in the userspace. Firmware blobs are needed for Wifi for example. There are plans to both allow proprietary blobs in userspace (to get accelerated graphics for people who want that trade-off), but at the same time to make these entirely optional.
Relevant part of the post[0]:
"In contrary to most Linux on smartphone projects, almost all these photos and the video are taken off devices which do not run proprietary code on the main CPU. The only exception is the Droid 4, which @NotKit owns. He is actively working on making proprietary Android drivers usable in postmarketOS with libhybris. Libhybris allows devices lacking FLOSS drivers to make full use of their hardware."
"While we don't welcome binary blobs and prefer to sandbox them where we ship them at all, we embrace this solution for people who want it. However we intend to keep closed source components entirely optional, so you can run pmOS as libre as you want it."
I would even subscribe a recurring donation via patreon or something similar if only they at least promised to get calls working in at least one model.
I guess some project (especially ones where work is done on a voluntary basis) have a different scale of value, that is it's more important to first have stuff work and then make it look appealing or making it usable by non-technical users.
EDIT: I think in this case a more interesting question would be: why don't people with a better aesthetic taste or UX knowledge volunteer for these kind of projects?
[+] [-] AdmiralAsshat|8 years ago|reply
There are notable exceptions. The OnePlus phones are easy to flash, as are Sony Experia models. But for the average person just looking to get a few more years out of their device, the OEMs have made it very clear how much they resent you keeping your phone beyond the two year mark.
[+] [-] bradfa|8 years ago|reply
http://developer.lge.com/resource/mobile/RetrieveBootloader....
[+] [-] kbenson|8 years ago|reply
That sounds suspiciously like "we don't want you running firmware that causes that battery to explode on a device that features a Samsung logo prominently on it." Given their recent history, I'm not sure I blame them for that specific bit.
[+] [-] veeti|8 years ago|reply
[+] [-] bubblethink|8 years ago|reply
[+] [-] ollieparanoid|8 years ago|reply
[0]: https://wiki.postmarketos.org/wiki/Firmware#Bootloaders
[1]: https://wiki.postmarketos.org/wiki/Mediatek
[2]: https://wiki.postmarketos.org/wiki/Matrix_and_IRC#Matrix
[+] [-] zebMcCorkle|8 years ago|reply
[+] [-] MrMember|8 years ago|reply
[+] [-] unknown|8 years ago|reply
[deleted]
[+] [-] floatboth|8 years ago|reply
[+] [-] carterehsmith|8 years ago|reply
Turns out, that is a niche use of a phone. Few people really need it.
But, some of them post on Facebook and Twitter "here is how to flash your phone and get unlimited games"
... and then many of those get bricked or attacked by viruses, and/or get otherwise disabled, and now the provider needs to deal with the tech support issues.
Plus, the ads may be redirected to someone else.
So yeah, if I was Samsung or Apple, I would not want you to flash the ROMs.
[+] [-] TuringTest|8 years ago|reply
If people gets used to giving their old devices a second life by lending their old devices to a fellow geek, to install this "weird app" that allows them to keep using it, that could become huge exposure for FLOSS operating systems.
[+] [-] bacongobbler|8 years ago|reply
As long as Linux, postmarketOS or LineageOS are the "weird apps" geeks install for their friends' devices, I highly doubt they'll ever gain any real exposure outside of tech circles.
[+] [-] gcb0|8 years ago|reply
lots of time wasted without any big increase in adoption.
companies making the devices standards (apple, google, samsung) all make lots of money from ads, and subscription services. both of those things get huge advantage if you can lock in your customer.
we are still living the main frame age on mobiles. even if you can install your os on old and new devices, it doesn't matter, because they can cut you out of whatsapp or youtube (see Amazon firephone)
the os is irrelevant to adoption. but it must have the or dictate killer apps. when foss solve IM, social and ugc video streaming, then the personal computer era will begin on mobiles.
[+] [-] drdaeman|8 years ago|reply
Ancient devices don't cease to work (unless their hardware fails, of course). They just don't get upgrades and new features (new apps, etc etc). A factory reset (or reflash) may be required to get rid of cruft, then reinstall apps from backup - but afterwards it would work.
If the postmarketOS would offer more features (mostly I think of apps) than some ancient Android, this may be a reason to replace the OS. But I really doubt it would happen. It would require a lot of effort to get anywhere close to Android 4.x ecosystem.
And I believe most users would prefer old apps (downloaded as .apks from random archive sites) to some security patches they frequently don't even know about.
[+] [-] badsectoracula|8 years ago|reply
What i'd really love to do is to replace the entire OS from the ZTE Open one with a barebones Linux, and X server (no Wayland) and a few custom apps to use for music playback, note taking, etc. It was on my mind since i actually got my hands on it and saw how an awful idea was to have an OS that is built around "web applications" (i already knew it, i just hoped it wouldn't be too bad and wanted it for the novelty of having a phone with the Firefox logo :-P). The hardware is theoretically more powerful than the PC i had back when i played Quake 2 in full software rendering mode, yet it was barely usable due to everything being slow (i've actually lost calls because the UI was frozen).
I see from the hardware list that some related devices seem to be supported so at some point i'd like to try doing that. It is more for a "here is how to actually make use of hardware resources without sucking" personal statement than something i really need (my 1st gen iPod Touch still works fine after all), so it might take a while for me to bother trying :-P.
[+] [-] MayeulC|8 years ago|reply
May I know why that is? By all accounts, Wayland is more adapted to embedded devices, with a cleaner architecture. I don't think that you need features such as xdraw, printer and gpu drivers, input handling or a lot of what isn't display related baked into the compositor.
I tkink that PostmarketOS could actually fit your goal quite well (you can run a variety of desktop environments on it, with Xorg o'er Wayland, including lightweight ones such as i3). But of course, the project is still in its infancy, although the community is pretty welcoming, and would probably be happy to help you get started ;)
[+] [-] GranPC|8 years ago|reply
[+] [-] floatboth|8 years ago|reply
[+] [-] _wmd|8 years ago|reply
Would love there to be something that provided just enough glue code between HAL and, say, Qt, alongside a bunch of shell scripts for gutting images of common handsets. But getting there myself, I've really little clue about this stuff, but I'm sure there is tribal knowledge buried all over the forums the Android dev community use
[+] [-] magmastonealex|8 years ago|reply
The plan, especially when it comes to modems and graphics acceleration, is to package these firmware blobs separately. Then, a user can choose at install time if they're alright with non-free blobs running on their phone. This has already been done for many phones for WiFi/Bluetooth chipsets.
This method also has the advantage of letting us move quicker - we don't need to wait years to reverse engineer modem firmware, or be required to spend the time mainlining every device we want to add in order to get the "essential" features for a phone.
(I'm a developer on the project)
[+] [-] lawl|8 years ago|reply
Me personally I'm fine with framebuffer drivers, I don't need hardware acceleration. So that needs no blobs. For some Qualcomm chipsets you can get 3D acceleration working without blobs using freedreno.
I personally started working on getting the qualcomm modem userspace blobs working under pmOS[0].
If you just want pretty much everything to get to work, there's also the halium project[1] which runs a stripped down android in an LXC container to provide that stuff. This could easily be ported to pmOS too.
It really depends on how libre you want your phone to be. Android applications could probably be run on pmOS too using e.g. Anbox[2].
[0] https://github.com/postmarketOS/pmbootstrap/issues/1054
[1] https://halium.org/
[2] https://anbox.io/
[+] [-] ollieparanoid|8 years ago|reply
One example: https://wiki.postmarketos.org/wiki/Samsung_Galaxy_SII_(samsu...
(I'm a developer)
[+] [-] Abishek_Muthian|8 years ago|reply
Most manufactures when they had small consumer base were developer friendly, it is when they gain significant market they stop being one.
I can think of few technical reasons as well,
1. To sustain competition they have build their IP (e.g camera blob, Personal Assistant) .
2. Security as a commodity, especially for enterprise customers.
OnePlus has deep relations with XDA community, Oppo's Find series phone was actively contributed and If I'm right; the mods got free devices then. Oxygen OS team was by itself Paranoid Android team.
OnePlus devices could be the best 'modder' friendly phone right now, the question is how long they would be able to keep it that way.
[+] [-] ocdtrekkie|8 years ago|reply
The thing I recently got to play with wearable computing is a Vufine+ and an Intel Compute Stick, both of which can be powered by a regular external phone battery.
[+] [-] ollieparanoid|8 years ago|reply
You should be able to flash something like your regular desktop Linux on it already. It's no where as functional as the original device was by now, but it's free of the tracking. From there on you could try to make it as functional as you need it to be.
https://wiki.postmarketos.org/wiki/Installation_guide
[+] [-] Fragoel2|8 years ago|reply
[+] [-] unknown|8 years ago|reply
[deleted]
[+] [-] rsync|8 years ago|reply
Why not Apple iphones ? Why don't I ever see proof of concept boot loaders or linux init on an iphone ?
I understand they only run signed boot loaders / kernels / etc., but that was also true of the PS3 and that was broken wide open some years back ...
Has, truly, nobody gotten an alternative OS to boot on any of the 8+ generations of iphone ?
[+] [-] shravj|8 years ago|reply
Since then it doesn't really look like any progress has been made on running alternative operating systems on the iPhone.
[+] [-] MartijnBraam|8 years ago|reply
[+] [-] madez|8 years ago|reply
[+] [-] khedoros1|8 years ago|reply
That was due to security flaws in Sony's software, though. Apple's software may have security flaws, but if it does, the flaws apparently either haven't been found yet or haven't been publicly published by anyone who did find flaws.
[+] [-] unknown|8 years ago|reply
[deleted]
[+] [-] bitmapbrother|8 years ago|reply
[+] [-] zeveb|8 years ago|reply
[+] [-] breakingcups|8 years ago|reply
[+] [-] Outpox|8 years ago|reply
[+] [-] peatmoss|8 years ago|reply
If someone made a swap-out logic board to Android-ify these things, I suspect there’s still got to be tons of them laying around.
[+] [-] ollieparanoid|8 years ago|reply
[0]: https://wiki.postmarketos.org/wiki/Apple_iPod_Touch_1G_(appl...
[1]: https://wiki.postmarketos.org/wiki/Matrix_and_IRC
[2]: https://github.com/postmarketOS/pmbootstrap/issues
[+] [-] greenhouse_gas|8 years ago|reply
[+] [-] ollieparanoid|8 years ago|reply
Regarding blobs, right now there are no blobs running in the userspace. Firmware blobs are needed for Wifi for example. There are plans to both allow proprietary blobs in userspace (to get accelerated graphics for people who want that trade-off), but at the same time to make these entirely optional.
Relevant part of the post[0]:
"In contrary to most Linux on smartphone projects, almost all these photos and the video are taken off devices which do not run proprietary code on the main CPU. The only exception is the Droid 4, which @NotKit owns. He is actively working on making proprietary Android drivers usable in postmarketOS with libhybris. Libhybris allows devices lacking FLOSS drivers to make full use of their hardware."
"While we don't welcome binary blobs and prefer to sandbox them where we ship them at all, we embrace this solution for people who want it. However we intend to keep closed source components entirely optional, so you can run pmOS as libre as you want it."
[0]: https://postmarketos.org/blog/2017/12/31/219-days-of-postmar...
[+] [-] znpy|8 years ago|reply
[+] [-] ZenoArrow|8 years ago|reply
https://ekiga.im/
[+] [-] leeoniya|8 years ago|reply
> Sony Xperia Z3 Compact (sony-aries)
looking forward to trying this one day on my Sony Z5 Compact (sony-suzuran)
[+] [-] XorNot|8 years ago|reply
[+] [-] miguelrochefort|8 years ago|reply
It's a major turn off.
[+] [-] klez|8 years ago|reply
EDIT: I think in this case a more interesting question would be: why don't people with a better aesthetic taste or UX knowledge volunteer for these kind of projects?
[+] [-] rnotarog|8 years ago|reply
[+] [-] ztoben|8 years ago|reply