PostmarketOS: Aiming for a 10 year life-cycle for smartphones
ollieparanoid.github.io
ollieparanoid.github.io
I think it's very ambitious to not base this off of the work being done on Android but of course would love a proper GNU/Linux distro on my phone as well.
Lineage OS (formerly CyanogenMod) will run on a Samsung S II which is 5 years old. It might support some older devices that I am not aware of. I could see it still being supported 5 years down the line.
Has anyone tried it on such an old phone? Is it dog-slow?
The current images are nightlies so I have encountered a few bugs. Previously was running CyanogenMod 13 on a stable image and that was fine (but the CyanogenMod company folded so it wasn't going to get security updates). Looking forward to a stable release of Lineage.
I'm not sure if this means that they ceased to support LOS13 for these devices entirely. But it does seem that way, on account of how long it's been since the device tree ('DT') and kernel for my phone have seen any update. (HTC One M9, a.k.a. himaul)
Nowadays I just build LOS13 myself every once in a while, because it still receives generic updates and fixes, and luckily the current kernel and DT still work fine. It's just that, while the DT also wasn't updated that often back on CM13, iirc the kernel did receive updates and fixes fairly regularly. With that no longer being the case is why I suspect they halted supporting it at all.
My reason for staying on LOS13 rather than to upgrade to LOS14 is that the Xposed Framework does not exist for LOS14 / Android N. So that's what I'm waiting for. I wish the LOS13 would recognize how many people want to use 13 on the M9 and provide updates even if it's just once a month. Or maybe they do recognise this, but they just don't have the manpower, resources, or heck maybe there were too many problems when users switched from CM to LOS... I don't know.
There is just one really annoying error which I don't know how to fix, which is that the default camera app crashes, I suspect because of face detection. I thought they fixed that on CM13 ages ago. I guess he bug snuck back in. The OpenCamera does not crash, thank heavens, but it's still a nasty issue I wish would be addressed.
Anyway. My point was that it's still possible to build LOS13 for many devices.
https://wiki.lineageos.org/faq.html#my-device-is-not-officia...
For older devices, there are performance improvements in the ahead-of-time compilation with upgrades in major versions of the OS.
That helps. Lack of multimedia hardware support for older devices in newer apps can still be an issue.
Running Lineage OS 13 on a nexus 10, I see great performance for all the default apps and google apps. The main source of performance issues I see is apps that do not support the multimedia hardware (eg. arm neon on Nexus 10). Some video apps such as Directv now, HBO GO don't use neon, overheat with high cpu use as a result. Those that do support neon work great, including Netflix and Hulu. So it also depends on app support for hardware.
An approach that is less likely to result in vaporware would be to maintain ports of Halium to older devices based on LineageOS kernels/drivers, with an optional Alpine Linux userspace.
Otherwise this project is little more than README.md Hacker News bait.
If there are enough helping hands, we could do this as a community.
The bootstrap program, pmbootstrap, is a working base component that makes development much easier (alone the automatically set up cross-compiling with distcc, ccache, armhf and native chroot), so it is definitely more than a README.md.
Also the title says, that the project is "aiming" - which does not say it has reached any of its goals yet. But at some point it needs to be announced to the community, so I might as well do that now, at a point, where other hackers could join in and parallelize development.
I'd love to run mainline Linux without any Android cruft on my old phones, but realise that this would take a lot of effort per each device. Each Android device is different, with its own kernel patches, proprietary modules and sometimes Android-specific userspace HALs. The Tegra in the Nexus 7 was designed to run non-Android Linux, there are native X11 drivers for that thing - that's not the case for devices like my current phone.
From the article:
> Of course I am not the only one, that came to this conclusion - especially in the last few weeks with the Halium project rising (greetings!). I am all-in for working together — sharing udev rules, merging Android kernels together, whatever makes sense!
> [...] postmarketOS does not fit the Halium model, as it avoids the Android build system entirely and does not run Android next to GNU/Linux.
> Thanks to Replicant, LineageOS, Halium. Together, we can make the vision of long-lasting, open source smartphone operating systems a reality!
So I see postmarketOS as part of the community. We have multiple projects, that want to provide a more open alternative to Android, on Android devices. This will only work out, if we work together and share, what we can.
postmarketOS differs from the other projects, that it tries to completely cut-off the Android parts. This will be harder for hardware compatibility, but then again, it does not depend on Google's upstream Android code (which does not get developed as a true community project, they only put out the source after they are done developing behind close curtains), and it uses less resources than running Android as second OS next to your regular GNU/Linux.
Regarding kernels and drivers, postmarketOS directly packages LineageOS kernels. Proprietary 3d acceleration will be avoided for now, some tests with "weston-smoke" and other demos showed, that it works fast enough without them. You won't be able to play 3d games, but that's not really in the scope of the project for now.
Instead of trying to reverse engineer and make open source drivers, I think you should try a more generic approach something like a rump kernel or some other generic layer for each Linux kernel version which can simulate the interface needed for the particular kernel driver. That way you don't have to keep porting or reverse engineering device drivers.
Your approach of trying to make an open source driver is a losing one, it requires a lot of work and you can't reasonably keep up with it.
Not necessarily, the more diverse the devices you have drivers for, the more code you can reuse and finally the more devices you can "recycle".
Of course, the big if there is: Can you reach the critical mass of drivers without the project exhausting itself.
If that were the case, we wouldn't find ourselves in the current quagmire that we're in. Linux kernel already had a huge number of devices supporting it.
The truth is, there is nothing stopping device vendors from releasing a device driver for a specific version, maintaining it for an year or two and then abandoning it. The better approach would be to figure out a stable interface layer for kernel drivers so that you can simply plug and play the vendor supplied device driver.
I mean, if a project wanted to put a "10 year life-cycle" on an IoT blender by porting Gnu/Linux to it, you'd think the first order of business would be writing a Gnu/Linux program to, you know, blend things. Getting 10+ years of running performant Weston demos would be a very distant 2nd to that.
Well, right now there is no phone interface available yet, and that is why it is a future goal (which does not necessarily mean, that it is in distant future).
> I mean, if a project wanted to put a "10 year life-cycle" on an IoT blender by porting Gnu/Linux to it, you'd think the first order of business would be writing a Gnu/Linux program to, you know, blend things. Getting 10+ years of running performant Weston demos would be a very distant 2nd to that.
I'm not selling you a blender here. I wanted to create a solid base to run GNU/Linux natively on smartphones, and now there is this pmbootstrap component, which works quite well and seems worthy of a release. This enables other people to jump in and contribute, if they want to, and accelerate development even more, because multiple persons can work in parallel on the project.
This is much more important to me, than silently working a few months or however long it would take me in my free time to package Plasma Mobile and make a release after that, just to hear that another crucial component is missing from the OS.
So, imagine sharing a video that shows the fruits of your labor in order to drum up some interest in your project. Strauss' "Thus Spake Zarathustra" is playing in the background.
The video shows you booting the phone into Gnu/Linux. As the music builds, you touch the screen of the phone to make it start to do a task. As you enter data into the phone to complete this task, the music builds toward a climax. Finally, at the climax of the music the task on the phone is complete, and the phone reacts in the most dramatic way a phone possibly can.
What do you imagine the phone doing in such a video?
Making some kind of trivial kernel patch in vim, compiling, reconfiguring the bootloader, and then successfully rebooting into the new kernel
Congrats to OP, hope this takes off in a major way! We could use a free (as in freedom) OS for phones!
I'm really for this idea. It'd be nice to just run regular Linux on old phone hardware.
- Ubuntu trying basically the same with an estabilished brand, mobile experts, a huge community,..
- Mozilla. Here same as Ubuntu
- Microsoft. Yeah, they were closed source, but had almost endless $$$ to throw at their project. Heck they even bought one of the biggest mobile brands (Nokia) and failed.
- Other smaller ones like Tizen, Sailfish OS,...
So me being negative is just being realistic.
Now Linux is the most widely used OS in the world, and the "big and professional" GNU still doesn't have a production-ready kernel release.
We need this project, or something like it. We need a Free OS for phones. I actually find the HN negativity on display here encouraging; it worked for Dropbox.
No, just plain rude.
I mean there is a ton of linux distributions that run better on my PC, but I still rather Hackintosh it due to the linux distros interface design and I bet others do the same.
I know this is a new project, but in order to ever hit the mainstream, it needs to have a interface at least as good stock android/TouchWiz. Otherwise people will be driven away, I ask people about Ubuntu and they won't ever say "the design is bad". But they said they switched back to Windows because "they couldn't get a hang of it", because the interface made them feel confused.
As long as the user choose the interface, this would surely make it easier for people to switch from Android to postmarketOS and users who'd like to use something different could freely do so.
It would require replicating all of Google's Android APIs and keeping them constantly up-to-date with Google's, forever.
Extremely well-funded Amazon and Samsung tried, both gave up.
But as ocdtrekkie has noted: > At the point where the phone OS can't make calls yet, worrying about style is a bit premature.
This project looks awesome btw and keep up the work. When I read through it, I saw it more as just running plain Linux on your old Android devices; turning them into what you would normally use a Pi/Beagle Board for. I'd love to be able to turn old Android phones into small Linux machines, and not have all the Android rubbish.
Design is second to having a rock solid platform to build on top of.
At the point where the phone OS can't make calls yet, worrying about style is a bit premature.
It really is just a pocket-sized computing device and I use it almost exclusively for its web browser and internet connection. So this didn't strike me as even a little bit odd.
I might be weird, though.
Another driving force is that a smartphone made a decade ago would simply not be able to use many of todays apps because it is missing certain sensors.
so while I hope this will take off I see some obstacles. Happy owner of a 10 year old Nokia here that serves me well, I've tried quite a few smartphones over the years but I never found anything that I really needed that would make me give up 5 day battery life and being 100% drop proof.
Think about Apple's Macbooks, I'm pretty sure that they are status symbols as well.
People who buy devices as status symbols, to show off how much money they have, are not the target audience of this project. They usually do not care about the benefits of open source and sustainability anyway. This project is about recycling old phones, which would be insecure/useless without an alternative operating system.
> Another driving force is that a smartphone made a decade ago would simply not be able to use many of todays apps because it is missing certain sensors.
That is right, but it is theoretically possible to get the devices from a few years ago running for five more years, and the devices created today for the next ten years.
What market does? Do you have any evidence such a market exists?
People don't care about open source and sustainability but they care a lot about not being hacked and having a phone that runs, and runs fast.
You overestimate non-technical people. They're not afraid of getting hacked, they don't understand why they should be, and they don't get why unmaintained software is bad.
People don't give a shit to the extent that the device works well. Security is of course a huge part of that but you don't understand people well enough if you think there's a significant group that will sacrifice good UX and reliability for security and rapid updates. That's what nerds like us do.
Yes. I have evidence there is a market for this, consisting of 1 or more persons, willing to pay at least $0.00.
Not every OS needs a 1-2 billion users install base.
I have a good handful of such people in my social circle, ranging in age from 23 to 58, usually higher education levels, and usually non-technical. The biggest common factor amongst them is that Android doesn't work for them.
Anyway, there are still so many devices where you can remove the battery out there.
And not everyone has money as highest priority, so I'd rather take my time and buy a new battery for an old phone than throwing it away and creating unnecessary electronic waste, just to save a few bucks.
Plus when you buy a new device, you will need some time to transfer your data, and set it up again, possibly experience new bugs and what not. So that also costs some time.
That is why "lasts whole day" isn't good enough for a new phone. In a year it will not last a whole day. And it will seriously hurt the longevity of it, but noone cares.
I drive old cars (newest is a 2004 year) and use old computers (my laptop is a 2009 Macbook Air) because they are a fantastic value and they do what I need.
I use a phone for making calls, texting, light web browsing, as a portable music player, and for maps/navigation. That's really about it. Maybe a 10yo phone would struggle with maps but a 5 year old phone generally would not.
I'd be on this in a heartbeat.
For those who buy the newest iPhone or Samsung Galaxy every year this might be the case but the rest of the world either doesn't care and see it as a tool or simply can not afford a shiny new flagship device and may be grateful if their existing device lasts longer.
> Another driving force is that a smartphone made a decade ago would simply not be able to use many of todays apps because it is missing certain sensors.
I don't see substantial innovation in the hardware space anymore besides bigger numbers on the spec sheet. Chances are high that phones from today will crack the 10 year mark of usefulness. We are already at a point where 4-5 year old high end devices are still perfectly usable for most daily tasks.
It's easier to spot the difference when somebody is actively using their device. But its not obvious. I think that vast majority of the population have no clue which model is "the hottest". Maybe geeks, maybe Apple fans.
To me it looks as we all have the same phones, using them the same ways.
You used the word geek in a way that sounds like you don't identify with that label, so that made me curious.
I'm currently transitioning out of being a geek, that's why I was asking.
I don't think that smartphones are a status symbol any more. Everyone has got one and they're all pretty similar. It's just a commodity these days.
The planned obsolescence cycle of replacing your phone every two years can't die quickly enough. We need serviceable hardware and long term software security updates and we should have had that a long time ago. The current situation is not sustainable.
If somebody can get React Native to run on PostmarketOS, then we could start building up an ecosystem of non-walled-garden apps that are compatible with iOS and Android!
What leads you to believe this would actually happen? PhoneGap/Cordova have been around for ages, and they could have already enabled such an ecosystem to have formed, but we haven't seen that happen. Of course, there are other similar technologies out there, too. Even Firefox OS failed, and that was with the backing of Mozilla and its eager community. What's different about this case?
1) Proliferation of compatible devices. Firefox OS attempted to launch with zero compatible phones. (The dev device I bought would crash on boot, every time). Postmarket OS is launching with hundreds of thousands of compatible devices already in the wild, many of which are sitting unused in people’s drawers. If it gets much contributor momentum, there will be millions of devices ready to switch.
2) As a React Native contributor, I am totally biased, but I think it represents a big shift in mobile development. Personally I don’t think ionic/cordova apps feel very good, especially on older devices. RN is the first open-source xplat mobile app environment that allows you to produce high-quality apps. Or at least, by the standards of FB, Airbnb, and Microsoft.
You can build apps for a phone running a Linux distro with just about any tool you want.
EDIT: Looks like there are plenty of options for cross-platform mobile UI libraries including QT and Kirigami. Like others have said, why use React then.
https://dot.kde.org/2017/01/02/kde-releases-beta-kirigami-ui...
IMO, there is a big problem with that. The WHOLE reason the smartphone space finally took off was because Apple came in and rationalized the interaction model and implemented a robust, responsive UI. Android is successful largely to the extent it faithfully aped that model. Treating this as a secondary thing your project doesn't need to be opinionated on is a recipe for failure.
For example, you have the consistent Apple interface. And you have the consistent Android interface. If the user could choose between both on the same device, why would that be a problem?
Yes, we are some of the people who line up for new stuff.
Yes, we are also some of the people who keep old stuff running.
You run a newer build of Lineage or CarbonRom or whatever on an old phone and it will most likely run like crap (current LineageOS on an old Sony Xperia Z 1st gen for example, is a terrible experience).
But that phone still has a ton of power. It's more than capable of being better than an early 2000s laptop. If you can stick Linux on it, it can be an embedded device. Get Wayland working and you get a little screen you can use for projects.
This has the potential to turn a lot of obsolete phones into powerful little hobby machines.
Really, I'm tired of all this UI "inovation." just give me a TTY already, it works fine on my laptop and it would work fine on my phone if everything weren't all tied up in closed blobs.
This only works if other people can use KDE if they want all the flashy stuff.
I still work mostly with gui because I do not have autism but easily a quarter of my time is spent in Termux.
I don't think it worked.
% call 6175007369
...on my phone. And git would make an awesome contact list manager.
$ open facetime-audio:6175007369
That URL scheme can also be used on iOS.
[CLARIFICATION EDIT: this places a FaceTime Audio call. The number you're calling would need to be a contact who can accept that call. Not exactly general-purpose.]
I don't think that's the whole truth. Apple became successful because efficient and powerful mobile hardware arrived to support Apple.
Just because one paradigm worked, should we stop and treat it as gospel. Perhaps there might be others waiting to be discovered.
Whether this was entirely intentional or not, I can't say for sure, but they certainly emphasized it at launch, and they designed a device with a screen that was huge enough, and it worked out great. Turns out the web was the killer app for the internet, and it was the killer app for smartphones too.
I see this "fact" thrown about all the time by under-30s who only ever knew of the iPhone since they were teens.
The iPhone OS interface, as it first existed, faithfully aped the Palm Garnet OS, which was the latest iteration of Palm's highly successful OS going all the way back to the late 90s. Before there were smartphones there were PDAs, and while it's debatable that Apple invented the PDA with the Newton, the platform didn't become a commercial success until US Robotics released the PalmPilot and PalmPilot Professional. When Handspring successfully melded the Palm OS with cellphone hardware creating the Treo, the touch controlled, icon based, modal fullscreen app "smartphone interface" as we know it was created. Palm bought Handspring and pivoted to improving the Treo line of smartphones, culminating in the Treo 600 and 700 series.
Speaking of responsiveness, while Palm's own devices were fairly standard and could be sluggish, Sony's Clie line made Palm OS feel almost as fast and fluid as the modern iOS interface. The hardware was expensive but it was the absolute best handheld computer you could buy in the early to mid 2000s. The first time I used the original iPhone I still owned a Clie NX70V, and the Clie was less jittery than the iPhone if I had a lot of apps open on both devices.
That's not even touching on Nokia's Symbian, arguably the best selling smartphone OS in history, but Symbian never resembled Palm OS, Android, or iPhone OS until after those systems became widespread.
So no, Apple never invented anything in this space; they took what already existed, polished the hardware, correctly implemented multitouch, and applied Jobs' marketing magic. I drank the Kool-aid and bought the original iPhone soon after its release. I ended up promptly selling it and going back to my Treo to get real work done when I realized the iPhone was nothing more than a (arguably excellent) mobile web browser. It wasn't until Apple finally started allowing apps (something Palm supported from the beginning) that the "modern" smartphone revolution really began. Even then, hardware improvements were driven by Android based devices, with Apple always playing catch-up.
Do you think that both interfaces are the same simply because they are "touch controlled" and "icon based"?
Also, saying there were other worse phones before the iPhone came out does not refute the point that the reason the space "finally took off" was because of Apple.
Its website still exists (http://diddlebug.sourceforge.net/) and indicates it contains "IntelliBooger™ extensions".
I am certainly glad Steve Jobs applied his sinister marketing magic to whatever this is so that no one has to be inserting IntelliBoogers into their DiddleBugs on their PalmPilots just to take a note.
Here's a more representitive shot: http://e.cdn-hardware.com.br/static/books/smartphones/cap5-9...
It was single threaded with no memory protection either, so you could write into other programs memory space and easily crash your device. :)
I still loved PalmOS. I had two Visors, a Treo, a Centro and even a Palm Pre with WebOS. HP hasn't done anything with all their Palm IP for a while .. sad to see it totally gone now.
I've heard many strange things from folks born in 1990 and later; I've actually been told by someone with a straight face that Apple invented the MP3 player as well as the first touchscreen.
The Reality Distortion Field is a powerful thing.
Regardless what you think about UI-paradigms or vendor lock-in, there is something that Apple spends far more time on than others to get right:
Papercuts [0]. Every interface comes with a thousand little annoyances that distract and increase cognitive load. Apple tries to bring this number to zero.
You have to find managers and developers willing to reserve a LOT of time for these "trivialities", but ultimately that summed-up effort is what makes their computers so convenient to use.
Android is a security nightmare and most of us are aware of that at this point. On top of that, Android has been moving functionality off the device and into their services for years making their AOSP offering weaker and weaker. Keep up the good work!
Edit: At some point it'd be nice to use a GuixSD or NixOS configuration file as your "one custom package" instead of an Alpine package. Any Linux on bare metal though would be welcome of course.
Non-Google branded phones get updates far later than their Nexus/Pixel counterparts if at all. Google and carriers drop devices from updates eventually (2ish years) so if you continue to use your device after that, you're playing with fire.
That's just covering the delivery mechanism, not the inability to set a encryption password separate from your pin, or the vauge permissions groups, or the fact that all apps can see your global clipboard, etc. If users can't get the newest version of their OS software, then you kind of fail at security 101. Any bug fix only fixes a small subset of your users. At least Windows XP device users knew how long they'd get security updates and had a clear upgrade path afterward.
Linux IoT suffers a lot of the the same problems. No one updates embedded devices.
You can draw the "nightmare" semantic line wherever you want, of course. IMHO it's not even remotely secure unless you only and always buy the newest Pixel phone directly from Google. Then we can talk about modern Android security issues.
Incidentally, Apple just released 40 security updates recently. 21% of iOS devices aren't even using iOS 10. Is there going to be a security nightmare for them too?
iOS has bugs and performance issues too. But overall it is quite solid. The app store experience as a consumer is nice too.
If this project is aimed to bring freedom software to users on mobile with thr goal of running on phones for 10-years, great. But for mass adoption I am going to be bold: it won't happen. Firefox OS failed because (1) device spec is poor (Mozilla wanted to market it in countries where smartphone was not common), (2) not enough apps, (3) the influence and trending look of Android and iPhone.
Make a backup. When you restore your phone, you also loose the data.
> and I probably will break my warranty worh ATT by flashing (I never checked).
You don't. First of all, you don't have any warranty in regards to your phone with AT&T. Second of all, you can always flash back your original firmware. Third, there are exceptions to allow these kinds of things.
> (3) the influence and trending look of Android and iPhone
Are you talking physical or on the software side? If it's the software side, it's just software and it can improve. iOS and android both have.
If that's really your only reason for preferring iOS, Google has been making phones for over 7 years. There are obviously valid reasons for that preference, but the single one you've mentioned isn't.
And yes, if you buy your phone directly from Google, you'll get your updates directly from Google with no delay (other than their staged rollout process).
(I have never owned an Android phone other than the Nexus series.)
For if one opts out of updating those apps, either future versions require an OS update, they stop communicating with underlying cloud services and break, or they require current HW not to make the phone unusable.
If this trend continues into IoT, IMO it will be a dystopic fail whale. At some point these gadgets become appliances (with apologies to Cory Doctorow) wherein IMO their behavior should be well-defined and consistent over time.
Example: do you really want a Smart TV that has to boot and which by default communicates analytics about you into the cloud? I don't. But maybe I'm just an old fogie who remembers how awesome it was when TVs starting turning on immediately instead of having to warm up the picture tube.
I'm guessing this "fixes" that by just disabling everything.
If you build it, they will work.
And for the most part the mature Linux Desktop/Server ecosystem isnt full of reversed engineered drivers, its full of open source drivers contributed by manufacturers. My Linux Laptop works well without binary drivers (a firmware blob or two excepted) because Intel spends the time and money to employ people to write drivers for their GPUs, WiFi, etc.
Replicant is working on reverse engineering the userspace drivers (they also found a backdoor in the closed-source drivers by doing that btw): https://redmine.replicant.us/projects/replicant/wiki/Samsung...
Other people are working on mainlining the kernel drivers for certain devices: https://lwn.net/Articles/680109/
So there is hope, and we need to start somewhere.
Or they could make their user mode pieces work with multiple kernel versions. In, say, a desktop Linux distro, it's often possible to leave the kernel at one version and upgrade other components.
So saying you cannot patch user-mode binaries (again, a majority of code in the system) because the kernel cannot be patched sounds an awful lot like throwing out the baby with the bathwater. And on Linux, the user to kernel ABI is fairly stable (see Linus's rants on the subject), which makes patching these pieces independently much more feasible.
Put another way, if someone says a vulnerability in libstagefright.so can't be patched because kernel modules, that person is lazy and making excuses, or doesn't know what a kernel is.
One thing though: it doesn't state if it's possible to make/receive calls/sms using a phone. You know, I'd appreciate my phone to be able to do such things.
> Most drivers don't work so you can't make phone calls or use the WiFi.
https://ollieparanoid.github.io/post/postmarketOS/#prototype
EDIT: SMS also do not work. In other words, what works is the touchscreen with Weston so far. But the underlying tooling (pmbootstrap) is pretty far, so that's why I have released it now.
I still think tgis project has a huge potential.
https://github.com/ollieparanoid/ollieparanoid.github.io/com...
https://arstechnica.com/gadgets/2017/05/google-hopes-to-fix-...
Also keep in mind, that this will work for newer Android O phones only. We already have more than a billion phones (the number could be much higher, I did not google it right now), which will never get that improvement. They can be saved from being electronic waste with projects like postmarketOS.
There's also the fact that Android will keep on rolling, new features will be added and manufacturers will keep on using them as they see fit, so Treble can help users with a security update or two while that version of Android is supported, even if the manufacturer stops supporting their "vendor layer", but what will happen when Google drops support of Android O?
It's mostly for us power users and people who just want to show off how they got something only cool/rich/smart people have. There were big differences between older versions of Android but apart from split screen which I used 3 times so far I don't see a reason to update.
I'm pretty sure the reason they don't port back the features to older androids is either because the old devices are lacking the specs or because they only want to have something to show as "new".
I know my friends avoided updating their iPhones for years because the new OSs only slowed the devices down.
Will anyone want to use an iPhone 7 or a Galaxy S8 in 2027?
It had Wi-Fi already, you could write messages make phone calls, play some casual games, read e-books, listen to music.
So they probably would be happy to have the original iPhone today, but with software and an open source software eco-system that allows it to still function like the day it came out.
Assuming, we had reverse engineered all drivers, we could even improve it and give it state of the art cryptography for messaging and phone calls.
I think we are more or less already there, maybe not the lowest of all ends but buying high end already feels like buying that more shiny expensive car with more horsepower which is hardly more useful because you are unable to leverage it.
I think I would still be happy with my iPhone 6S 10 years from now, but there are many reasons I would upgrade. Here's a short list:
* Waterproof (Come on Apple, it can't be that hard. Samsung did it.)
* Longer battery life (I'm looking forward to >= 1 week)
* OLED screen with deep blacks and vibrant colors
* The dual camera focus hack in a regular-sized iPhone
* Some breakthrough in camera technology that gives a proper depth of field without the dual cameras. (I'm starting to get really disappointed with my 6S photos, but I don't want to carry around a 7 plus or a huge DSLR.)
I don't care about the processing power or memory any more. The iPhone 6S has a perfectly smooth UI and all of my apps run perfectly fast.
Easy to port.
Is it true the "Android" project rose from the ashes of an earlier company "Danger" who produced a NetBSD based mobile OS for the T-mobile Sidekick?
If true, why did founder of Android use NetBSD for the Sidekick, not Linux?
Microsoft acquired Danger.
"You know if you ever got me, you wouldn't have a clue what to do with me." - Being John Malkovich (1999)
Maybe easier just to collect on Android sales via threatened patent assertion. IDK.
Phone manufacturers will be against it, telcos, retailers, and many consumers. Maybe we could get Green movement groups on board?
I don't think the OS is really the bottleneck here. I think getting a mobile device's hardware to run for this long is. There are a few things that make this difficult:
* Batteries - These currently only have so many cycles. A 10 year phone would need to provide a largish battery holding area allowing for two wires of varying voltages to be supplied. It would then in turn need to be able to charge at these various voltages through those two wires. I think voltages ranging from 1V to 24V would be a reasonable guess at where future battery tech would stay. Any person could then feasibly change their battery for some future tech.
* Connectivity - In just a few years, we've gone from only really having 2G to having just 3G/4G. In 10 years time, I think it wouldn't be unreasonable to think that maybe 4G will be switched off. I think it's unlikely that WiFi will remain for the next 10 years too. You need some robust connectivity module that hackers could connect to an arbitrary home-brew hacker's module. Something like UART/Serial/I2C/SPI.
Other things could burn out over time, but replacing those things becomes way too difficult. The processor, GPU, RAM, case, buttons and screen are just things I think that need to be the core phone.
Another place that could be interesting to explore is converting old, arbitrary phones into useful everyday devices. For example, I'm looking at converting my old HTC wild fire phone (the screen is small) into a permanent low-power alarm clock. It'll sit on the WiFi and if it sees my laptop/phone on the WiFi it will schedule the alarm, otherwise not.
I have another slightly newer phone with a larger display, so I was thinking or either making some notification board for my office or some very cheap VR headset for watching YouTube videos in bed without holding my phone up.
That said, there's no reason why all of these new "smart" devices couldn't reuse old technology. I think a small technology company that recycled old mobile devices into new smart devices would be pretty awesome. People pay loads for a recycled pencil for example, why not a recycled electronics device? On the far end of the scale I've seen some awesome coasters made from old motherboards.
I would love to see offices and schools buying more second hand kit too. There's no reason why thin client software can't run on an old mini-intel board, or even a semi-old smart phone. Kids don't need this year's laptops to write a report in Word. I think there's a big space for reuse here.
I'm using a Nexus 5, which was launched almost 4 years ago, that uses 4G. A reliable, widespread 5G network is at least 2 years distant, probably more. Barring breakage, and changing the battery, the Nexus 5 could almost certainly be used 6 years after launch, and still work well. The barrier for that sort of lifetime is software, not hardware.
I think you're right that 10 years is pushing it.
But, firstly, bear in mind the range of smartphone users there are. Really large percentages of people have never installed an app for instance. There are grades of users on their technology demands, and just as there will be a percentage that always want a brand new phone, there will be a percentage that just want something that is stable. There are a substantial percentage of people that are more worried about the UI changing underneath them than whether or not they're using 3G or 4G.
Secondly, even if 10 years is unlikely, the prospect of being able to run a functioning device indefinite ly allows the lifetimes to increase by more realistic but still significant amounts, 10 years is niche but 4 or 5 isn't.
My prediction for the communications modules not lasting is also trying to take into account that the rate of developments is likely to speed up - not stay the same or slow down.
>There are a substantial percentage of people that are more worried about the UI changing underneath them than whether or not they're using 3G or 4G.
I'm talking about simply being cut off from the rest of the world. Many Countries have now fully retired 2G networks. In less than 5 years, I can see the same likely to happen for 3G.
>Secondly, even if 10 years is unlikely, the prospect of being able to run a functioning device indefinite ly allows the lifetimes to increase by more realistic but still significant amounts, 10 years is niche but 4 or 5 isn't.
I think phones should at least match laptops - there's no reason why not. I think we should encourage a few things:
* Standardization of battery sizes - why is every LiPo pack completely different? If think this might even be arbitrarily pushing up the market value of the packs.
* Expansion ports - why is there no expansion port on a phone? Something just big enough to plug a small PCB with a standard connector. That way you could add something onto the internal bus to add functionality. For even common users, this could be slightly more battery, secondary processor, increased RAM, additional GPU, AI chip, VR chip, better camera, louder speaker, new communications, etc. Looking at the Intel Edison, if you can put an entire computer into an SD card [1], you surely could add value to your phone, either immediately or in the future.
* Unlocked - you should be able to easily load your own OS onto your phone with no consequences. This is the same with most laptops. Maybe somebody can't make a phone OS to last for 10 years, but I'm sure there will be some OS in the next ten years. Is it unreasonable to be able to swap your OS?
Completely unrelated, but another thing I would like to see is the use of colour e-ink displays for phones [2]. Video is something that needs to still be solved [3], but I think we pay too much energy for viewing static content on a phone display.
[1] https://software.intel.com/en-us/iot/hardware/edison
Partly because I'm too poor to upgrade, and partly because it still meets most of my needs.
The biggest problem I face is software rot in iOS 6. That would be the same regardless of OS. I can't use WhatsApp any more, or Kakaotalk. Facebook used to forward my messages to email, but now they demand that I use a Messenger app. Instead, I just check Facebook's website using the browser.
There haven't been any really significant apps that I needed that have been released in the last 5 years. I've made a list in case I ever update my OS. I don't need BBM or Pokémon Go. The messenger apps are the worst for forcing software updates, but I hope that people will eventually move back to email and SMS, which just work.
* 2 phones had their 2.4GHz radio die (no bluetooth, no wifi)
* 2 phones were damaged by water
* 1 phone had screen cracked
* 1 phone was lost
I'm now on my 7th phone in 8 years.
Ironically it was my first phone that lasted the longest (about 2.5 years before the 2.4GHz radio died). Since then I've gone through about 1 phone per year. Phones have gotten much more fragile as they've gotten thinner, though water-resistance is now more common so that could solve at least some of my problems.
I do get what you're saying though because my wife's smart phone lineup is:
Palm Centro
iPhone 4S
iPhone SE
Each upgraded because software that had previously worked stopped working.
But from reading through the comments, no one has analyzed it yet, if you mean that. It has less than 2000 lines of code, and it is Python, so it shouldn't be hard to read through.
Oh and there is room for improvement. Automatic Travis CI builds and what not. Alpine Linux already does this for every package, so with some effort postmarketOS could also do that.