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? 👀

  • Ledericas@lemm.ee
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    17 days 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
      0
      ·
      17 days 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.

  • planish@sh.itjust.works
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    17 days 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.

  • Jeena@piefed.jeena.net
    link
    fedilink
    English
    arrow-up
    0
    ·
    18 days 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
      0
      ·
      18 days 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
        0
        ·
        17 days 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.

  • ryannathans@aussie.zone
    link
    fedilink
    arrow-up
    0
    ·
    18 days 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

  • lordnikon@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    18 days ago

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

      • givesomefucks@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        18 days 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
          0
          ·
          17 days 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
          0
          ·
          18 days 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.

          • Rai@lemmy.dbzer0.com
            link
            fedilink
            arrow-up
            0
            ·
            17 days ago

            I mean… that’s a true thing that happens and must be compensated for unless you want your phone to randomly die at 20%. Android phones do it, too. I’d rather my phone slow down at 10% than have it just cut out and die.

            • bobs_monkey@lemm.ee
              link
              fedilink
              arrow-up
              0
              ·
              edit-2
              17 days ago

              It wasn’t slowing down the phones at different battery percentages, they were essentially derating the hardware under the premise of battery management, and iirc they got called out and said “you’re right, but buy new phones anyway, yours are old.” I don’t recall the specifics, but it just seemed super shady.

    • Ledericas@lemm.ee
      link
      fedilink
      English
      arrow-up
      0
      ·
      17 days 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.

  • MTK@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    16 days ago

    Long story short, profit.

    The not so short versio is that each manufacturer along the supply chain decides for how long they want to provide updates, the following manufacturer can’t provide updates that the previous manufacturer doesn’t. And so it goes until you get a phone that has 3 years of software updates and 5 years of security updates and that’s it.

    For example, you might buy a phone from google, they buy electronic parts from maybe Qualcomm and a few others. Say Qualcomm decides that it won’t be profitable to provide driver updates to the SoC past 7 years and critical security updates past 10 years. At this point even if Googke really wanted to, they can’t provide anything past that as they would not be able to update the Qualcomm driver. But google has otger providers with maybe shorter support windows, abd they have their own costs and updates to make. So Google decideds that for them it won’t be profitable to provide support past 5 years and security updates past 7 years. So now you get a phone which will be unsupported after 7 years, and here comes the big difference between phones and most computers. Phones have a locked bootloader and usually a custom SoC. Locjed Bootloader means that you can’t just install another OS that might still provide some support, and the custom SoC means that any driver support will have to be only for this specific device.

    So with an old laptop you might have a custom motherboard, but the cpu, gpu, ram, wifi, sound, etc will all be off the shelf, so if some linux developer makes some sort of driver support for your wifi card, it will also apply to all other laptops with that wifi card, but for a phone this won’t work, let alone even be viable since the bootloader is locked.

    Simply put, no right to own and profit chasing means that no one really cares if your phone is a security and usability nightmare after a few years.

  • gnuplusmatt@reddthat.com
    link
    fedilink
    arrow-up
    0
    ·
    17 days ago

    in the case of Android, it comes down to the proprietary driver modules that are compiled for certain kernel versions. As newer versions of android are released with newer kernels, the closed source modules fall out of step. If the drivers for these components were open source anyone could recompile them for any Linux kernel. It’s usually up to the device manufacturer working with the likes of the chip makers to release newer module versions for their hardware. OEMs dont want to support their hardware beyond few years, so you’ll hopefully buy a new phone.

    The postmarketOS community (and some of the android community) works pretty hard trying to bring mainline kernel support to devices, which enables them to run generic Linux kernels, or conceivably newer versions of android than the OEM has released. But this involves reverse engineering support for this hardware.

    • Caveman@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      16 days ago

      We need some regulation that makes driver APIs and a linkable compiled version of drivers mandatory to be available upon request.

      • FooBarrington@lemmy.world
        link
        fedilink
        arrow-up
        0
        ·
        16 days ago

        The APIs are part of the Linux Kernel, so you’d be forcing the Kernel to completely change their development policy of internal breakages being allowed. That’s a no-go.

        • Caveman@lemmy.world
          link
          fedilink
          arrow-up
          0
          ·
          16 days ago

          Not necessarily. The drivers in the kernel are already released and free to use and can be linked to as long as the software linking it retains the GNU license or can claim that it’s a separate service (such as an API or separately installed service) or it has to be installed afterwards like proprietary nvidia drivers.

          Either way the source code is released and if the drivers want to retain the proprietary license they the community can make a way to download and compile the driver for the current OS after install. This will save a ridiculous amount of dev time and make Linux phone OS development much easier.

          • FooBarrington@lemmy.world
            link
            fedilink
            arrow-up
            0
            ·
            16 days ago

            There’s really no way to do this without making the whole driver source-available, as there’s no way to update it to a new Kernel without full source access. That’d be great, but the manufacturers will fight tooth-and-nail against that, especially since the drivers can contain trade secrets.

  • Hoohoo@fedia.io
    link
    fedilink
    arrow-up
    0
    ·
    18 days 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.

  • the_q@lemmy.zip
    link
    fedilink
    arrow-up
    0
    ·
    18 days 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
        0
        ·
        17 days 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.

      • snooggums@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        17 days 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
        0
        ·
        18 days ago

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

      • BCsven@lemmy.ca
        link
        fedilink
        arrow-up
        0
        ·
        18 days 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
          0
          ·
          17 days 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
            0
            ·
            17 days 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

  • solrize@lemmy.ml
    link
    fedilink
    arrow-up
    0
    ·
    18 days 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.

  • SpikesOtherDog@ani.social
    link
    fedilink
    English
    arrow-up
    0
    ·
    18 days 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.