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.
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.
Obviously they didn't build a phone that can blow up on purpose, and you don't actually have to have a real chance of it happening for other models for your legal department to tell you to cover your ass really, really well. It's not like these batteries haven't exploded in other contexts as well. Li-Ion batteries have been known to explode for a long time now. The problem with Samsung's phones was a defect that caused it to be far more likely. Also, the difference between software and hardware is much more fuzzy these days when talking about firmware. Some chips (what you might consider hardware) in the phone have their own little operating systems embedded and running in them.
(also I bought my model (athene) specifically because it could be unlocked, wasn't just gonna keep stock on it at that point)
OTOH, if you wanted to use them on Verizon's network, you needed a Verizon-branded HTC One, which had a locked bootloader. Getting around that usually required paying $25 to run some tool called Sunshine that could abuse an exploit to unlock the bootloader.
So where the OEM's allowed flexibility, the carriers swooped in to fill that void.
> I had both an HTC One M7 and an M9, and while yes, unlocks are easy, that is only true if you buy directly from HTC. ... OTOH, if you wanted to use them on Verizon's network, you needed a Verizon-branded phone
So if you buy a HTC phone, it's easy to unluck? And if you buy a Verizon phone, it's hard to unlock?
How can you blame HTC for the shortcomings on a defective phone you bought from Verizon? That's like me blaming Lenovo for problems I have with the MacBooks and OSX at work.
It just makes no sense.
Secondly, throwing the issue of "blame" aside and trying to imply that the planned obsolescence phone is somehow the fault of the consumer, you need to consider that until very recently, you had to buy a specific hardware variant of the phone if you wanted your phone to work on Sprint or Verizon, because of the CDMA networks. It wasn't a matter of being a "Verizon-branded" phone. If you wanted to use the phone on Verizon at all, you had to buy the Verizon-specific version (even through HTC directly), and if so, the bootloader was locked.
Not everyone has the luxury of being able to switch carriers if your current carrier is an ass, because they might be the only one servicing your area. So if you're on Verizon and you want a smartphone, there was a time when that meant you were likely bootloader-locked.
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.
Why are you contorting to find justification for locking?
Or, make it super hard to flash in the first place. Problem avoided.
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.
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.
I can get a PC from 10 years ago and install Windows 10 and it'll most likely run absolutely fine - really rather well in fact. On the other hand, many people would probably be quite frustrated if they had to use a phone that's even three or four years old.
It amazes me how people react even when I tell them I'm still using an iPhone 6 Plus that I bought in 2015.
Marketers did a great job convincing people that they need to renew their phones every two years (or less)
Just like my bluetooth headphones. I had to re-solder a weak connection twice, but after adding some hot glue to keep it in place the second time, it hasn't broken anymore. The battery life is still better than advertised, and I've been using it daily for 3-4 years.
"Throwaway" is a culture, contributing to the problem just as much as (or maybe even more than?) planned obsolesce.
Do while the free phone went away (for this in the cell phone market, did plans get any cheaper?) the purchase styles didn't.
4.5 years is pretty good in this market - last I checked you were lucky to get 2 years of software updates from most android vendors. According to usage stats about half of all android phones are stuck on an operating system from 2014 or earlier. I don't want to think about the security consequences of most android phones never having security updates installed.
4.5 years still is nothing on postmarketOS's 10 year target. Bravo.
Just because phones run an old Android version, doesn't mean no patches get backported. For example, the official firmware for FP2 runs Android 6 with a patchlevel of (last time I checked) Dec 5.
Furthermore, other "postmarket OSes" such as LOS already extend life. The problem with these is firmware updates for chips, and hardware bugs.
It’s a bit of a separate problem but I’ve seen an awful lot of ignored software update notifications on the phones of relatives over the Christmas break. Is there data on the install rate of security hotfixes?
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.
Regarding the walled-garden services like YouTube or WhatsApp: From a privacy and security point of view it would be better to avoid these altogether and switch to open source and decentralized services like Matrix instead (for instant messaging/VoIP).
I know, for most people it is not feasible to convert all your friends to such services, but even in that situation it is possible to use open implementations that work on Linux. Check out this list  ("Apps that only work with proprietary services" table at the bottom).
Going further, when there's enough interest by one or more individuals to package anbox for postmarketOS, it is possible in theory to run regular Android apps (NewPipe is just one example of a great open YouTube client, that you can use on Android today).
Yet if people get to use the platform anyway as a secondary device, this could get these tools a significant steady user base that might grow to critical mass if/when a security/privacy scandal happens, disparaging the stablished players.
and even then, when the best protocol showed up, google made a point to associate it with gtalk and kill both.
I think that’s only true for one of the companies in your list.
samsung also tried it all. and they make a killing selling pre-installed bloatware in PCs as phones. which is pretty much advertising.
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'm kinda dealing with that with a modern company right now. My Ring doorbell doesn't work without Internet access and I can't get it for 7 days or so. I've got a home network setup, but no Internet. The Ring device won't even ring the bell on my house when you push the button, even though it is wired strait in... Now I'm off topic a bit.
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 ;)
I recently ran Wayland/Weston on my home theater PC running Void Linux. For the most part it semi-worked. I have few native wayland apps, so almost everything ran through xwayland. Steam was weird; as the mouse was offset about 300px to the right and down. I'd have to hover away from stuff to click on it. Kodi would often Flicker (my HTPC just uses Intel ingratiated graphics). Most of the Games (both Steam and Humble) worked fine though.
Weston, the reference implementation, just isn't that great. I ended up going back to X11/Gnome3 after getting sick of the graphics glitches and bugs, and forgot how terrible gnome is now (I've used i3 on my desktop for years).
I might go the Wayland route with Sway (i3 clone for Wayland) on my dev box, but Weston was honestly still too buggy for prime time on my media pc. I do agree though, X11 is old and awful and Wayland is a big improvement over X11. But I do run X11 apps remotely over SSH (something the wayland people assume no one does) and when asked about it, they kind just hand wave everything away like someone just needs to write a plug-in and it will work.
postmarketOS might be the big push to really get Wayland mainstream. I'm really impressed by postmarketOS and hope it will be what Linux was for the x86/PC in the mobile world. You could install Linux on everything back in the 90s/2000s. ARM is a cluster fuck of random shit connected to random pins that are different on every SoC. This is a real major step to true alternative mobile OSes.
The other reason is that i am writing an X toolkit and so i already have a lot of X code i can use (as i wrote, "custom apps"). For the uses i have in mind Wayland could probably also work, but i'd need to write a lot of extra code that i'd rather avoid writing.
PostmarketOS does indeed look like what i have in mind, but as i said, i'd rather have pure Xorg without Wayland (it should be doable since, AFAIK, both should use the same graphics stack). It is something i'll try looking into at some point.
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
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)
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.
If you just want pretty much everything to get to work, there's also the halium project 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.
(I'm a developer)
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.
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.
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.
I fully agree with his philosophy. This is a project ran completely by unpaid volunteers. And the most important thing is to have fun while working on pmOS. If people have fun getting 10 different desktop environments to run, why not?
If you look at his comment from 6 months ago, only one phone had wifi support. Now, quite a few do.
I've read similar comments from OpenBSD devs. They get the best contributions when people work on something they simply want to work on, instead of telling people what needs work.
Progress on getting cellular working is tracked in this issue here, if you're curious what the state of that is.
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 ?
Since then it doesn't really look like any progress has been made on running alternative operating systems on the iPhone.
Long story short: The lack of HW acceleration made the UI (and thus everything else) extremely sluggish. It wasn't even near usable for anything you'd like to do on a regular basis.
It was a good gag to confuse co-workers with though.
Regarding fancy 3D graphics: The cool thing is, that we have choice. Just pick a UI that has no high performance demand.
Again, I'd like to have some sense as to the relative difficulty involved vs. the PS3 break which, IIRC, was the same kind of cryptographic signing issue ...
Perhaps Apple just doesn't make those mistakes with their keys ?
Sony managed to leak their private key by screwing up the math for instance.
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.
It is harder, sometimes you need to hack the bootloader to get it done (or kexec-boot from the proprietary kernel like done on the PS4, get creative), but this has been done enough times for various devices. So with enough manpower and dedication at least booting a Linux-based OS is possible (not saying that you will be able to use all the hardware).
I'm using Firefox 57 on Linux, with the default theme, using the Arc-Dark gtk+ theme.
I was able to fix it by applying a Stylus theme which sets foreground dark and background light, which I think is what your CSS expects.
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.
This might actuall be pretty fun to try and get my 3rd gen iPad going. It’s barely usable as is, so no great loss if I brick it. Even then, I assume the screen is still usable for something.
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:
"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."
What about kernel space?
With that being said, the stock Linux kernel and its vendor forks contain obfuscated code and even (small) blobs. To get rid of that we would need to package something like the Linux-libre patchset . From what I know, no one is planning this currently, but if someone is interested in this, I don't think anyone in the community would be against having this as option.
The upcoming Matrix client for the open and recently funded Librem 5 phone also looks promising. It will be one interface for doing both regular calls, and calls over the encrypted Matrix protocol over network. In theory we should be able to package that as well, since Librem 5 just runs on a Debian derivative.
> Sony Xperia Z3 Compact (sony-aries)
looking forward to trying this one day on my Sony Z5 Compact (sony-suzuran)
It's a major turn off.
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?
Exactly! With that being said, contributions from UX people are welcome of course.