Even with android custom ROMs like Lineage, support eventually ends. Meanwhile, you can just slap on linux onto any old computer and its still getting the latest updates. 🤔

Why not just do the same thing with phones? Forever phone updates? 👀

  • planish@sh.itjust.works
    link
    fedilink
    arrow-up
    14
    ·
    edit-2
    4 hours ago

    Computers have systems (BIOS, EFI, ACPI) that give the people who make the machine responsibility for providing a standard, publicly-defined way for the OS to enumerate the hardware, and to use the hardware in a basic way even if the OS has never heard of it. Linux can get a kernel panic on the screen even if it has no idea what your GPU is, because EFI understands it and Linux understands EFI. It is set up this way partly because there’s a real possibility of hardware being added or removed, partly because people routinely mix and match parts, and partly because IBM mistakenly designed a good system that was easy to work in and not one that kept them in business.

    Phones (and phone-derived systems like the Raspberry Pi and other single-board computers) don’t implement a standard. The hardware and its boot process assumes tight integration between the hardware and the software, usually to the point where the bootloader refuses to load anything not signed by the device manufacturer, unless it is satisfied that it has been given that manufacturer’s permission to be unlocked. (Computer secure boot implementations generally trust, for example, Microsoft, as well as the machine owner, who can load their own keys.)

    Instead of the CPU developers releasing example EFI implementations, they release forks of the Linux kernel that they maintain as long as that chip is the latest chip they sell, and then fork off the mainline kernel again for their next chip. And the device makers ship devices by starting with the chip maker’s kernel, customizing it for the device, giving it a “device tree” that tells it everything that is supposed to be in that particular device, and shipping it. For a few years they port patches from the current kernel onto this forked kernel, and then they stop. With no standard to develop software against, and no documentation for what’s in a device and how to use it like there is for the standard’s interfaces, the only practical way to run software on a device is to start with that patched kernel.

    Mainline Linux refuses to adopt and maintain the chip and device makers’ low-quality, chip-and-board-specific kernel changes (often because they break the kernel for other uses), so you can’t generally use a mainline Linux kernel instead. If you tried to tease out and improve the device-specific patches to the point where mainline Linux would take them, the device would be hopelessly outdated by the time you were done and you would have dozens of job offers to occupy your time as a highly skilled embedded Linux developer. The work is not practical given the tiny number of people who would benefit from it for a particular device, and how little it pays off compared to just buying a new device with a more up to date forked kernel available.

    “Maintaining” a device for LineageOS or other open software eventually collapses under the weight of mainline Linux’s changes and the necessary chip and device maker patches no longer being practically reconcileable.

  • sem@lemmy.blahaj.zone
    link
    fedilink
    arrow-up
    9
    ·
    6 hours ago

    This is changing. Microsoft is trying to restrict Windows 10 -> uploads based on having a user-hostile TPM module to make PCs more locked down, just like phones.

    • throwawayacc0430@sh.itjust.worksOP
      link
      fedilink
      English
      arrow-up
      8
      ·
      5 hours ago

      user-hostile TPM module

      I mean, the module itself is fine. Some linux distros can also take advantage of that with full disk encryption, instead of putting keys in the ram, store in in TPM which make it harder for keys to get extracted if it gets stole while on.

      But of course microsoft is gonna try to use it nefariously for some DRM stuff.

      • sem@lemmy.blahaj.zone
        link
        fedilink
        arrow-up
        4
        ·
        5 hours ago

        It would be fine if we lived in a utopia, but not fine when corporations have the power to require that you use one, or else you can’t use their services.

    • planish@sh.itjust.works
      link
      fedilink
      arrow-up
      2
      ·
      5 hours ago

      I don’t think this is going to change the overall situation, it’s just a single point new system requirement, like the plausible GPU was for Vista.

      Now, if they start expiring the old TPMs every few years, and Windows 12 needs a TPM 4.0 or something, then this will change the overall situation. At least on the Windows side.

      • sem@lemmy.blahaj.zone
        link
        fedilink
        arrow-up
        2
        ·
        5 hours ago

        The fact that perfectly capable PCs aren’t getting security updates is just part of it. Once Microsoft and other corporations can ensure that your computer is no longer completely controlled by the user (as the TPM ensures) they can start locking it down, first in the name of security, but then just like how some phones have apps that you can’t uninstall, or how printers force you to use name brand ink at a huge markup.

        • planish@sh.itjust.works
          link
          fedilink
          arrow-up
          1
          ·
          23 minutes ago

          Yeah, a TPM is, essentially, a piece of bondage gear. It’s shackles put on you to try and convince someone else of what you can’t do. It has niche applications but it’s not a valid thing to require of the general population.

  • dual_sport_dork 🐧🗡️@lemmy.world
    link
    fedilink
    English
    arrow-up
    124
    ·
    16 hours ago

    PC operating systems are, at least to a broad degree, generic. That’s because a huge amount of backwards compatibility is built right into the PC architecture, much to the delight or chagrin of everybody depending on who you ask. There’s silicon on your processor’s die right now that’s doing fuck-all except ensuring that if you were struck by the perverse urge, you could boot MS-DOS 1.0 onto it even though it’s virtually guaranteed that you never will.

    Phone operating systems absolutely are not generic, because each phone model is basically unique unto itself in terms of what hardware is in it, and backwards compatibility is not in any way a design goal. Furthermore, the entire package has to be rolled into a single unified ROM image.

    There are proprietary core components in phones, notably their SoCs (systems-on-a-chip) and modems (which are often built into the SoC) which their designers jealously guard and are loaded down with patents and other IP restrictions. This hardware requires closed source drivers which must be updated or at the very least recompiled for new kernel versions if the OS is to be updated. That’s for Android, anyhow. It’s even worse for Apple devices, because they’re entirely closed and Apple is in total control of both the hardware and the software. At least they bother to support their own devices with updates for quite some time, but even they’re not absolved of fuckery – see, for instance, the deliberate slowing-down-with-updates scandal from a few years ago.

    If nobody is providing source code or compatible binaries for the core hardware your phone needs in order to work, at minimum it’s going to be impossible to update your device beyond the kernel version that was last supported on it, even with a custom ROM. And all of this is before getting into locked bootloaders and other chicanery that prevents you from running your own code outside of user space on the hardware even if you had the code to run.

    At the end of the day: The hardware vendors are absolutely not interested in providing driver support to end users or source code to anyone, and the handset makers and most especially the cell service carriers, at least in the US where the majority of people buy or lease their phones from said carriers, literally have a vested interest in dropping support as soon as they can get away with it. That’s because rolling out updates to oodles of individual phone models costs money to do, but they only make more money off of you by selling you a new phone.

    • dubyakay@lemmy.ca
      link
      fedilink
      arrow-up
      4
      arrow-down
      4
      ·
      edit-2
      5 hours ago

      I’d like to point out that this:

      see, for instance, the deliberate slowing-down-with-updates scandal from a few years ago.

      this never happened. What you may be referring to is Batterygate where they would intentionally throttle older devices based on their age and presumed battery degradation in order to give the devices a longer life span. The roll out of which did not go as smoothly. The articles also mention that since iOS 11 / iPhone 11 the phones have better battery management and monitoring.

      My 11 Pro that I have bought in 2020 April is still working as well as on the day of purchase. This is after one battery swap in 2024 April, when battery degraded below 80% capacity and the system announced that performance would be throttled. It is expected that the 11 Pro lineup will retain new updates until at least 2026 September.

      Now here’s the thing: these newer iPhone Pro models age so well, with just a battery swap every ~3-4 years, I wouldn’t be surprised if some movement in the EU will step up to force legislation on extending support for them. But still, six years of support is pretty good compared to most other vendors.

  • lordnikon@lemmy.world
    link
    fedilink
    English
    arrow-up
    113
    arrow-down
    1
    ·
    18 hours ago

    Because they are incentivizing us to buy new phones. It’s not a technical reason it’s a capitalism reason.

    • Melvin_Ferd@lemmy.world
      link
      fedilink
      arrow-up
      34
      arrow-down
      1
      ·
      18 hours ago

      Wasn’t one of the phone companies found to be purposely slowing down older phones with each new update

      • givesomefucks@lemmy.world
        link
        fedilink
        English
        arrow-up
        53
        arrow-down
        4
        ·
        18 hours ago

        Apple aggressively throttled CPUs when new models came out.

        They claimed it was due to age of batteries and to prevent overheating. But then Samsungs started exploding and I think people just let it go.

        Not sure if they still do it or not.

        • Trainguyrom@reddthat.com
          link
          fedilink
          English
          arrow-up
          3
          arrow-down
          1
          ·
          5 hours ago

          Everyone dunks on Apple for throttling older batteries but the fact is this was super pro-consumer move. It prevents the phone from randomly powering off because the SOC tries to pull a burst of energy that the battery is too tired to output, and resets following a battery replacement, plus nobody notices the throttling except under synthetic benchmarks where you actually have performance numbers to see the handful of percentage points of performance difference. AND after this kerfuffle they added a toggle switch where if you so prefer random instability on an aging battery over 2% slower turbo performance you can choose to have that.

        • ch00f@lemmy.world
          link
          fedilink
          arrow-up
          27
          ·
          18 hours ago

          Not so much overheating as dropout. Batteries lose both energy capacity and power capacity over time. If you draw too much current from an older battery, its voltage will drop significantly and possibly prematurely shut down the phone.

          Lowering peak current (by slowing down the phone), can prevent your phone from shutting off while it still has like 20% capacity left.

          Considering Apple was doing battery replacements for like $60 (before bumping to $100), and this was a setting that could be turned off, I think the only real crime was enabling it by default and not properly informing users.

    • Ledericas@lemm.ee
      link
      fedilink
      English
      arrow-up
      2
      arrow-down
      1
      ·
      12 hours ago

      and now people , some of thema re. realizing the current iteration of phones, iphones, samsungs are really no different from the last few generations.

  • ryannathans@aussie.zone
    link
    fedilink
    arrow-up
    30
    ·
    17 hours ago

    Operating systems for computers are generic, operating systems for phones are specific

    This is the crux of the problem, there is no single repository where a mobile operating system has been made to generically work anywhere

  • the_q@lemmy.zip
    link
    fedilink
    arrow-up
    18
    arrow-down
    2
    ·
    15 hours ago

    Planned obsolescence to a degree. If you spend $1k a year on a new phone the C suite makes happy faces, but of you spend $1k every few years the C suite makes sad faces. What better way to keep them happy by stopping support for a device.

      • leftzero@lemmynsfw.com
        link
        fedilink
        arrow-up
        21
        ·
        15 hours ago

        Because IBM built the PC as a side project out of mainly off-the-shelf parts, except for the BIOS, never intending it to be more than one of many personal computers in the market… and then Compaq and Columbia Data Products reverse engineered said BIOS making PC-compatible clones a possibility.

        Open BIOSes and a personal computer made of essentially off-the-shelf parts led to everyone and their aunt making PC-compatible machines, and the personal computer boom, and most personal computers being able to run mostly the same software.

        IBM tried to lock it back down with the PS/2, and Microsoft also later tried to lock it down to Windows with some shady schemes like ACPI, but all attempts ultimately failed because by that point the PC ecosystem was so large that any attempts at lockdown were sidestepped by other vendors, or eventually reverse engineered or bypassed.

        Sadly the same never happened with phones. The PC thing was a serendipitous fluke to start with, phones aren’t made of off-the-shelf parts, and manufacturers were wise to the “risk” and made sure to keep as much control as possible.

      • BCsven@lemmy.ca
        link
        fedilink
        arrow-up
        10
        ·
        15 hours ago

        Windows11 is trying to do just that; having a minimum spec chip, so they could eventually drop support for a lot of older hardware. But PCs are so modular that you can pretty much add any hardware together and the OS (such as Linux) can figure out the packages you need to make it all run…but even Linux has dropped a lot of 32bit support in the last few years. So it happens, just at a much longer time frame

        • IsoKiero@sopuli.xyz
          link
          fedilink
          English
          arrow-up
          5
          ·
          12 hours ago

          even Linux has dropped a lot of 32bit support in the last few years

          And that’s just because no developer uses those systems anymore actively. If you really want to, you can pick up from where they left and bring the support back. But as 32bit x86 CPUs haven’t been produced in the last 20 years (give or take a few years) there’s just not that many working systems around anymore.

          • BCsven@lemmy.ca
            link
            fedilink
            arrow-up
            2
            ·
            6 hours ago

            Yeah, no point supporting something that has become obsolete. Foss community often puts effort in as passion, but a business will not want technical debt and move on to the next hardware support

      • snooggums@lemmy.world
        link
        fedilink
        English
        arrow-up
        8
        ·
        15 hours ago

        Microsoft makes money supporting their OS on older hardware for businesses. That has gone on long enough they have to continue, and they might as well share it with everyone else.

      • Dran@lemmy.world
        link
        fedilink
        arrow-up
        6
        ·
        15 hours ago

        They’re trying to, but market adoption has said so far that we’re unwilling to tolerate it.

  • Jeena@piefed.jeena.net
    link
    fedilink
    English
    arrow-up
    31
    ·
    17 hours ago

    Even for Linux there is a end of life for devices: https://linuxiac.com/linux-kernel-to-drop-support-for-legacy-i486-and-early-586-cpus/

    The difference to phones is that around Linux everything is open source so that some poor shmuck ho still has this old computer and is capable can keep supporting it for everyone. When it comes to phones it’s much more difficult because a lot of the parts are closed source. Similarly to Mac OS and Windows.

    • givesomefucks@lemmy.world
      link
      fedilink
      English
      arrow-up
      8
      ·
      17 hours ago

      It won’t last forever though…

      A lot of the non-upgradability is the pursuit of smallest form factor. But then everyone throws a case on it anyways. Miniaturization has diminishing returns and we hit that long ago with laptops.

      Eventually we’ll hit it with phones, and then it’s just a matter of time till a solid “base” with swapable components come out. There’s been a couple already, but they still require a sacrifice of size or speed/power.

      That’s why manufacturers are trying to push us to watches or glasses. They need to shrink the form factor to keep up the (insanely profitable) strategy of selling a brand new unit every 2 years.

      • T156@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        5 hours ago

        Eventually we’ll hit it with phones, and then it’s just a matter of time till a solid “base” with swapable components come out. There’s been a couple already, but they still require a sacrifice of size or speed/power.

        I’d honestly argue that we’ve more or less hit it already, since a lot of phones over the past few years haven’t really changed from the template of being a black glass rectangle with some buttons on it.

  • BananaTrifleViolin@lemmy.world
    cake
    link
    fedilink
    English
    arrow-up
    12
    ·
    edit-2
    17 hours ago

    PCs are generally based around the X86 chip architecture which is an open standard. PCs are basically modular and lots of manufacturers make components that are interchangeable, creating a huge variety of possible hardware. Hardware suppliers also sell to both big manufacturing companies and individuals. It’s therefore in their interest to distribute their drivers freely even if closed source. If hardware breaks it can be replaced and the PC keeps going, and some components can be kept going for years as a result as people dot have to throw the whole machine out everything something breaks or becomes obsolete.

    Mobile devices are closed standards. They use a more limited range of off the shelf components which are deeply integrated into a device, and the hardware suppliers provide their drivers to the device manufacturer or the device manufacturer builds their own drivers and custom version of the os. Hardware can have very long retail lives selling for years and still being functional, so the manufacturers have an incentive to keep drivers available and even update them.

    It means mobile devices are more locked down, and the hardware drivers harder to come by. This makes it hard to build custom OS for them and therefore when the device comes to the end of its support from the maker there is limited options to keep it running securely.

    It’s effectively a type of planned obscelence that keeps the mobile industry going. Manufacturers stop supporting old devices (because it provides no income) and then consumers have to buy new ones as no one can provide the security patches to keep them secure.

    So for mobile there is nothing to force Android or IOS to be kept up to date for old devices. The money is in new devices, and for Android manufacturers are responsible for the mobile device anyway. While for PC it’s in Microsofts interests to keep updating and keeping devices secure via Windows becuase devices have long lifespans and old components can be in the PC ecosystem for decades. Similarly Linux is able to support hardware for a long time because drivers are more freely available and long lifespans to hardware incentivise people to put the effort in to write open drivers when they’re not there.

    Microsoft is trying to force an upgrade cycle at the moment with Win 11 though. And the laptop industry ia more like the mobile industry than the desktop pc industry with more propriety devices and locked down hardware.

    • Aatube@kbin.melroy.org
      link
      fedilink
      arrow-up
      5
      ·
      17 hours ago

      I agree, but the instruction set (what you called a chip architecture, which isn’t wrong at all but potentially confusable with microarchitecture which is how you implement the instruction set architecture) has nothing to do with this. Though Apple does have the ability to make their own instruction set if they want, they and (mainstream) Android currently use ARM, which is also an open standard.

  • Ledericas@lemm.ee
    link
    fedilink
    English
    arrow-up
    10
    arrow-down
    8
    ·
    edit-2
    12 hours ago

    older electronics, were designed to last 5-10+years, companies realized they wernt getting any more profit, so they had planned obselescene into every electronic device. every 2 years. microwaves built pre-2000 would last 20-30+years, and with more efficiency, while more modern ones are prone to catch on fire or break down after a certain amount of uses.

    • silly goose meekah@lemmy.world
      link
      fedilink
      arrow-up
      6
      ·
      6 hours ago

      I mean planned obsolescence is absolutely a thing, but

      modern [microwaves] are prone to catch on fire

      is a wild take that you better support with some kind of proof. Otherwise it just makes the rest of your (IMO valid) argument look bad.

  • solrize@lemmy.ml
    link
    fedilink
    arrow-up
    9
    ·
    17 hours ago

    x86 hardware interfaces are traditionally pretty well documented and standardized, going back to the original IBM PC in the 1970s(?), enabling among other things an aftermarket of plug-in expansion cards and other peripherals. That standardization also makes it possible to write device drivers and keep them working.

    ARM stuff on the other hand is closed and changes all the time. So this year’s peripheral won’t work with last year’s phone. Mac stuff is also like that, maybe not quite as much most of the time.

  • Hoohoo@fedia.io
    link
    fedilink
    arrow-up
    8
    arrow-down
    1
    ·
    17 hours ago

    The way that Google and Apple approaches programming is a little obtuse and it never gets out of the way.

    Without someone like Linus Torvalds rewriting a whole new approach to mobile phones we’re all stuck with the majority offerings from lock-in corporations.

    Then there’s telcos and manufacturers who never get out of the way either. So, even if we run to changemakers like FDroid the desired compatibility is still limited by a cacophony of weird restrictions and unknown difficulties.

    With mobile phones we need to start manufacturing with Open Source to get the compatible-mobiles industry up to standards first. It’s not something that’s happening because those guys are far too retired to come back to a new front for machine compatibles - it’s 80s stuff.

    Also, a non-java scheme would be a better way to go. Java development is all about using giant washing machines to spin out compilations from esoteric versions of fragile code. Having code that didn’t break every year would be great too.

  • Windex007@lemmy.world
    link
    fedilink
    arrow-up
    7
    ·
    18 hours ago

    Directly from my ass, it’s my assumption that the primary maintainers just don’t have an incentivize the cost of supporting older devices and the disparate hardware configurations.

    Like, planned obscellesance or not, smartphone churn is going to happen anyways. People lose them, smash them, fall into a pool with them, decide they NEED the newer camera soldered into them, etc…

    It’s not like there are old phones in a closet somewhere propping up business critical infrastructure like with computers.

    The cost vs utility of maintaining forward features and security patches for a massive catalog of hardware configurations just isn’t there.

    • Corroded@leminal.space
      link
      fedilink
      English
      arrow-up
      4
      ·
      17 hours ago

      I think it has a bit to do with a lot of firmware or drivers being closed source too. I feel like a couple years ago I ran into that issue with camera my old Android phone had

  • SpikesOtherDog@ani.social
    link
    fedilink
    English
    arrow-up
    6
    arrow-down
    1
    ·
    18 hours ago

    When I bought my phone 5 years ago, 128G of storage seemed limitless. Now it appears to be a tightening constraint. Should I be able to increase that storage, I wouldn’t even be thinking of a new phone. Sadly, Samsung removed storage expansion from their flagships.