the one thing linux really hasnt been made on par with winblows yet is the dreadful amount of options for android simulation -the most popular choice seems to be Waydroid, but its such an unneeded hassle to set up at all -genymotion is just slow -and than you have things like android x86 which entirely defeat the point of an emulator

  • Skull giver@popplesburger.hilciferous.nl
    link
    fedilink
    arrow-up
    3
    arrow-down
    2
    ·
    1 year ago

    Apps “forcing” you to update are the result of developers doing their jobs. Just because you decided to buy a cheap phone or a free Android distro that doesn’t come with any update guarantees doesn’t mean they have to pour in money to keep things working for you.

    I don’t know how much money you’ve paid for those old apps of yours, but unless they’re a subscription developers won’t be able to keep outdated platforms like Android 6 going forever. Vote with your wallet, buy subscriptions from apps that do support your platform of choice. Google’s compatibility library works well in many circumstances, but the backwards compatibility hacks have to make financial sense for any company-backed apps.

    It’s not hard to run Android apps on computers. Windows 11 runs Android apps without external tools. Linux can run them through Waydroid or Anbox. I don’t know if there’s a Mac version, you could Apple to build in an Android runtime like Microsoft did but it’s better to find a community that’s willing to build it for macOS instead. You get bonus performance for the ARM code running on an ARM CPU!

    As for Arm on x64: years ago, before x64 Android and HAXM were a thing, I used to develop against ARM virtual machines. The performance hit is absolutely atrocious. What Apple did with Rosetta2 is amazing and you can’t get that type of performance without dedicated hardware.

    I don’t know if the Windows runtime supports ARM emulation, but I’m pretty sure you can drop qemu-static into the Waydroid file system and run ARM apps on your platform of choice. Expect laggy animations and 100% CPU usage at all times.

    • mycodesucks@kbin.social
      link
      fedilink
      arrow-up
      8
      arrow-down
      1
      ·
      edit-2
      1 year ago

      Apps “forcing” you to update are the result of developers doing their jobs. Just because you decided to buy a cheap phone or a free Android distro that doesn’t come with any update guarantees doesn’t mean they have to pour in money to keep things working for you.

      I absolutely refuse to spend that much money on a platform with so little respect for users. You shouldn’t even NEED an update guarantee. You don’t go out and buy a computer and check for guarantees that it’s going to include OS updates… you KNOW it’s going to continue updating until the hardware physically can’t handle it anymore and you get sick of it and go upgrade it. The Android system and its heavy ROM customization and reliance on vendor updates is fundamentally broken, and it is NOT a problem to be pawned off on USERS to fix by throwing more money at it. The only reason there’s ANY difference in the Android environment vs X86 computers is because people tolerate it for whatever reason. This is a problem to be fixed, and the first responsibility for fixing this is on Google, and failing that responsible app developers should be developing for the lowest still supported Android version for SEVERAL reasons.

      1. I’m generalizing, but as an app developer, usually more users is better.
      2. If they DID it would be incentive for Google and Android manufacturers to FINALLY decouple Android updates from the hardware they run on.
      3. It reduces e-waste by extending the time phone hardware can be used. I shouldn’t have to explain why this is a good idea.

      There are good reasons to update an app to use a new Android version. Complacency in a broken environment of continuous obsolescence as a money making scam isn’t one of them.

      • Skull giver@popplesburger.hilciferous.nl
        link
        fedilink
        arrow-up
        3
        arrow-down
        1
        ·
        1 year ago

        I absolutely refuse to spend that much money on a platform with so little respect for users

        If you’re not paying, you’re the product, or you’ll be left with shovelware. Companies that won’t make any money from you aren’t going to give you anything out of the goodness of their hearts.

        You don’t go out and buy a computer and check for guarantees that it’s going to include OS updates

        And several models of netbooks found out the hard way that they didn’t have any guarantee. It’s shit, but sadly it’s necessary.

        You have every right in the world to be pissed at whatever brand you bought your phone from, but Google and independent app developers can’t change anything about the fact that you got scammed by a hardware vendor.

        As for the current situation:

        • “More users, more better” only applies if you can guarantee stability and decent performance for all users. You don’t want word of mouth to spread about how terrible your app is draining some Android 5 phone’s battery because Doze barely worked back then and modern phones have significantly better GPUs, which people have come to expect apps to use for smooth animations and transitions.
        • Google have decoupled everything they could from the hardware abstraction layer. These changes started coming in around Android 8 and 9 (5-6 years ago at the earliest) and have only been extending the following versions. Entire subsystems like the Bluetooth system can receive updates through Google. You can boot standard OS images and all the important hardware will Just Work. If you’re stuck on an Android version that’s being dropped by app developers (Android 7, I’m guessing?) you probably won’t reap the benefits, but it’s been a few years since then.
        • I completely agree with you that e-waste prevention should get more focus. Things are improving. Samsung is now supporting phones with security updates for five years and even Xiaomi is following in their footsteps. PostmarketOS is trying to extend the lifetimes of many devices (my Oneplus One can run Kubernetes if I want it to!)

        The EU is working on legislation that is going to seriously affect companies that don’t provide software updates. It’s mostly targeted at security issues, but the idea is that you can’t sell devices with known vulnerabilities. That means that if someone finds an exploit for a two year old phone that got dropped by Oppo, everyone retailer who bought those phones would be left with stock that can’t be sold. Those retailers would think twice about buying phones from a brand like that!

        Furthermore, the EU is also working on law that enforces at least three years of software updates and at least five years of security updates. These proposals are affecting devices that are currently being designed.

        I don’t have a solution for your old phone and its crappy software support. Things are rapidly changing for the better, though.

        • mycodesucks@kbin.social
          link
          fedilink
          arrow-up
          6
          arrow-down
          2
          ·
          edit-2
          1 year ago

          My anger is that the decision of an upgrade is made FOR me when the functionality of my phone should be limited by the physical limits of the hardware, and not the development limits of the phone vendor. A company should NEVER tell me “We don’t think this is going to give you a good user experience so we’re disabling it for you.” That is MY decision. If I want to suffer through running your app more slowly, that’s up to me, and I don’t need the decision made on my behalf, especially when the end result is costing me money. I’m sorry, but that is absolutely unacceptable. EU legislation is nice - I’m particularly looking forward to replaceable batteries making a comeback - but legislation forcing vendor updates doesn’t fix the fundamental problem that it shouldn’t even be their responsibility. I know the only real differentiating factor between vendors is their particular ROMs and whatever custom bloatware they ship with, but unlocked boot loaders and an operating system with a kernel that is not so inextricably linked to particular hardware that it can be installed and run on ANY Android phone is the real solution. Desktop operating systems don’t have 47 different installation images for 47 different special pieces of hardware, and there’s absolutely no reason that Android should need that either. Maybe there was an argument that ARM CPUs weren’t powerful enough, or space was at a premium for a kernel to have unnecessary hardware support 10 years ago, but the hardware is certainly powerful enough now, and all of those CPU cycles get wasted on crap like app scanning when the system starts, services I can’t identify and probably don’t need, assistants that are constantly listening to my microphone… I won’t say those things are all well and good - I loathe them - but if we’re going to have them that should come AFTER development of a generic Android image with a kernel that supports a wide variety of hardware. At this point, vendors can’t NOT conform - what are they going to do, develop their own mobile OSs again? Android has become the defacto standard and has no competition. You can force vendors to build hardware that conforms to standards and support generic OS installation now.

          Google have decoupled everything they could from the hardware abstraction layer. These changes started coming in around Android 8 and 9 (5-6 years ago at the earliest) and have only been extending the following versions. Entire subsystems like the Bluetooth system can receive updates through Google. You can boot standard OS images and all the important hardware will Just Work. If you’re stuck on an Android version that’s being dropped by app developers (Android 7, I’m guessing?) you probably won’t reap the benefits, but it’s been a few years since then.

          If this is true, I haven’t seen it. I’ve got Android 10 phones and as far as I know, I sure can’t download a generic Android 12 ROM and just install it. I’m stuck waiting for system updates.

          If you’re not paying, you’re the product, or you’ll be left with shovelware. Companies that won’t make any money from you aren’t going to give you anything out of the goodness of their hearts.

          It’s surprising that I’m STILL hearing this when I’m running 6 PCs with free operating systems that work, aren’t bloated, and are loaded to the brim with world class software that is all free and reliable, some of which was written 20 years ago and barely been touched since because it STILL works.

          What you’re saying is perfectly valid for SERVICES, which involve ongoing costs, but not everything needs to be a service. In fact, I’d argue most things SHOULDN’T be services. And if I write an app TODAY that works PERFECTLY for some task, I can’t just leave it there and rely on it to keep being used in the future. Because of the architecture of the Android system, I have to continually put in work to make it conform to new standards, which of course, keeps reliable, functional FOSS from getting ANY kind of long term usage in the mobile space.

          My favorite dictionary app was written for Android Kitkat. Completely offline and functional and did everything it needed to PERFECTLY. I upgraded my daily driver phone to a Android 12 and with there being NO changes to the dictionary app that did EVERYTHING that was necessary for free, that app was broken, because it didn’t conform to some new standard. Another app let me remotely mount my SSHFS folders and use my personal server, but THAT broke when Android removed the modules from the kernel. The entire history of the platform is LITTERED with this garbage where developers are FORCED to continually put in work on things that should be “develop once and it’s done”, and that’s INTENTIONAL.

          It’s a scam of squeezing money out all the way down.

          • Desktop operating systems don’t have 47 different installation images for 47 different special pieces of hardware, and there’s absolutely no reason that Android should need that either.

            Phones are glass slabs. Without unique software, there’s no reason to spend the extra money on a Samsung phone, so why would companies bother investing in a platform like that? You may be interested in projects like Fairphone who do support multiple operating systems.

            Furthermore, Android itself doesn’t need custom images, but phones do. Manufacturers only write the kernel themselves for their own chips, for their better Snapdragons, they receive a preconfigured kernel (that is in no state to be upstreamed) from Qualcom, packed with proprietary drivers. MediaTek is even worse at this. You can go for Exynos, the chip that is worse in every single way than its competitors, but that’s it.

            Could vendors open their code, work to upstream drivers, and make their code available for everyone to use? Of course they could! They just have no reason to do so.

            If this is true, I haven’t seen it. I’ve got Android 10 phones and as far as I know, I sure can’t download a generic Android 12 ROM and just install it. I’m stuck waiting for system updates.

            Check out https://developer.android.com/topic/generic-system-image or maybe a LinageaOS build that targets GSI, like this repo.

            It’s surprising that I’m STILL hearing this when I’m running 6 PCs with free operating systems that work, aren’t bloated, and are loaded to the brim with world class software that is all free and reliable, some of which was written 20 years ago and barely been touched since because it STILL works.

            Why don’t you run Linux on your phone if you want the Linux experience? Android is not Linux, in the same way Windows isn’t. Android is based on the Linux kernel after all, you just need to download the right user image for Ubuntu Touch and configure it for your phone’s specifics.

            My favorite dictionary app was written for Android Kitkat. Completely offline and functional and did everything it needed to PERFECTLY. I upgraded my daily driver phone to a Android 12 and with there being NO changes to the dictionary app that did EVERYTHING that was necessary for free, that app was broken, because it didn’t conform to some new standard. Another app let me remotely mount my SSHFS folders and use my personal server, but THAT broke when Android removed the modules from the kernel.

            I’m not aware of any API changes that would affect a dictionary app. It’s possible the app was abandonware and got cleaned up in Google’s yearly trash cleanup (that does remove some useful apps with the heaps of abandoned trash), but in that case you should still be able to install the APK from F-Droid or another source.

            I don’t believe the standard Android image ever contained SSHFS, so I’m a bit surprised. That said, with basic root access you can still inject kernel modules into Android phones, so a command or two should get you your SSHFS fix. You’ll need to bypass the security mechanisms protecting apps from reading each other’s data, but that’s possible with a Magisk module I believe.

            The entire history of the platform is LITTERED with this garbage where developers are FORCED to continually put in work on things that should be “develop once and it’s done”, and that’s INTENTIONAL.

            That is true. Google made terrible mistakes in its API design that let Google and its competitors turn Android into a privacy nightmare, so they need to keep restricting the API surface every time some sneaky data broker finds new ways to abuse the existing API.

            That said, compatibility in Android goes back various versions. Google Play demands that you use modern APIs and test your apps with modern phones, but Android has API compatibility stretching back far, to the point that shitty apps target old Android versions to avoid the privacy improvements of modern Android versions.

            It’s a scam of squeezing money out all the way down.

            I don’t disagree. That’s why I’m grateful for the Fairphone, Pinephone, and its other open competitors. Consider buying one of those once your current phone no longer works right! Most customers couldn’t care less about this, so open source/less restrictive phone community can use more customers or they’ll stay niche and inaccessible!

            • mycodesucks@kbin.social
              link
              fedilink
              arrow-up
              2
              ·
              edit-2
              1 year ago

              Phones are glass slabs. Without unique software, there’s no reason to spend the extra money on a Samsung phone, so why would companies bother investing in a platform like that? You may be interested in projects like Fairphone who do support multiple operating systems.

              Change the model. The sameness of Android phones is one the worst thing about them, and the software changes with each unique one are almost exclusively battery hogging and poorly written. If phone companies were forced to open their hardware platforms maybe we’d see more risk again. Perhaps differentiated with ACTUAL VARIETY of hardware. Phones with physical keyboards… phones with e-paper… These things are actually actively selected AGAINST in the current model because the limitations of system updates means even if you get used to a better workflow with unique hardware, there’s no guarantee that you will get ANY updates or that there will EVER be a better version of the hardware released, but if the platforms were open, the lives of these things could be extended almost indefinitely. And besides,there’s absolutely no reason developers couldn’t have special software features still installed into their phones and still give me the option to dump a vanilla android image on there. Most PC users don’t buy a PC and then wipe the OS and customize their installation, so there’s no reason to believe open platforms would change anything for end users, and forcing companies to get more creative in innovating isn’t a bad thing in this nightmare market of samey overpriced clones.

              I’m not aware of any API changes that would affect a dictionary app. It’s possible the app was abandonware and got cleaned up in Google’s yearly trash cleanup (that does remove some useful apps with the heaps of abandoned trash), but in that case you should still be able to install the APK from F-Droid or another source.

              It DOES fail directly installed from the APK, but I don’t want to get bogged down in this.

              I don’t disagree. That’s why I’m grateful for the Fairphone, Pinephone, and its other open competitors. Consider buying one of those once your current phone no longer works right! Most customers couldn’t care less about this, so open source/less restrictive phone community can use more customers or they’ll stay niche and inaccessible!

              I’ve thought about that and I might do that if Pine ever contracts a less scammy shipping partner. Regardless, this special hardware is antithetical to developing a mobile Linux ecosystem anyway. Linux thrives because it runs on ANYTHING. That gives the widest possible user base who then contribute back to the system and makes the entire ecosystem BETTER. You can buy ANY PC and just install what you want, and that’s not less profitable for PC manufacturers. Smartphone manufacturers are greedily wanting to ENFORCE that environment to be Google’s specific flavor of Android modified the way THEY want, and the fact it’s based on that very same Linux kernel, locking down and limiting and forbidding users from using that hardware in better ways, is morally appalling and disgusting. I don’t disagree that this is an option, but this is a workaround to a system that shouldn’t function this way.

              • Skull giver@popplesburger.hilciferous.nl
                link
                fedilink
                arrow-up
                3
                ·
                edit-2
                1 year ago

                Perhaps differentiated with ACTUAL VARIETY of hardware. Phones with physical keyboards… phones with e-paper…

                Both exist and are still sold, though. Take the F(x) phone, or the Boox Palma. The problem is that there’s not enough demand for such phones to make that many of them, which in turn drives up the price.

                It DOES fail directly installed from the APK

                Sorry to hear that, that’s very strange. Reverse engineering APKs isn’t that hard, maybe you can find a community that can propose a fix for you if you post the crash logs?

                Linux thrives because it runs on ANYTHING

                Linux thrives because companies like Intel, AMD, and all the other manufacturers submit patches and drivers. Back in the day, the hardware came out first, and Linux ran on backwards compatibility modes and drivers written by volunteers. Nvidia has only recently opened up their driver (sort of), and if try to run a game or even any other kind of GPU accelerated application under Nouveau, you’ll know that “Linux runs on anything” only applies to things that someone made drivers for.

                Smartphone manufacturers are greedily wanting to ENFORCE that environment to be Google’s specific flavor of Android modified the way THEY want

                Samsung and other manufacturers are shipping their own browsers, their own stores, their own calendars, exactly because they don’t want to be held by Google’s grasp.

                What you seem to want is the Windows Phone model, which had a lot less trouble doing updates back in the day: Microsoft provided the OS, companies provided the hardware it ran on. Of course Microsoft’s version was closed source and had tons of other issues (like breaking compatibility every major release), but the OS design followed this path.

                Manufacturers hated it. They wanted their custom branding on the phone, but Microsoft wouldn’t let them. Carriers hated iOS for the same reason, because before they could slap their themes and crapware on phones, but Apple wouldn’t let them either. The only reasons these companies ever sold any phones was that the carriers and manufacturers were smaller than Microsoft and Apple’s influence, and that Apple controlled their own production line.

                In a perfect world, I agree with you. I want Android to just apt-upgrade my phone from Android 13 to Android 14. I know its’ technically possible because Ubuntu does it. In practice, this idea relies on thousands of volunteers working together with hundreds of manufacturers who all contribute code and effort into the ecosystem. Linux may be free for the end user, but it certainly isn’t free for the companies putting hundreds of man hours into drivers they’ll never see any profits on.

                If you manage to find a world where your ideals work out, please take me with you. It sounds amazing. Sadly, I think the current world is moving away from the computer freedom that started in the 80’s and died in the mid-2000’s.

                • mycodesucks@kbin.social
                  link
                  fedilink
                  arrow-up
                  2
                  ·
                  edit-2
                  1 year ago

                  I agree with you that it’s unlikely we’re ever going to see that world come back (although I think given where we are now with Android’s dominance even if Android DID adopt the better, open model most manufacturers would suck it up and deal)

                  But that’s not going to stop me from old man ranting about it every chance I get. And like an old veteran who fought in a lost war, I’ll continue ranting about how it should’ve gone until I’m rotting in the ground, and shaking my fist at the whippersnappers who dare to move on with life.

                  Thanks for humoring me this long.

            • Waraugh@lemmy.dbzer0.com
              link
              fedilink
              arrow-up
              2
              ·
              edit-2
              1 year ago

              Since mr fantasy land can’t find it in himself to thank you for all the knowledge you shared in this interaction I wanted to make sure I took the time to. Thank you, I learned a great deal from your comments and your ability to communicate information is superb.

              • mycodesucks@kbin.social
                link
                fedilink
                arrow-up
                2
                ·
                edit-2
                1 year ago

                It’s only a fantasy as long as you accept it. Digital hardware NEVER worked this way until the mid-2000s and accepting the change is a CHOICE. If the same governments that rightly put the screws to Microsoft over their Internet Explorer monopoly had any justice or logic left, these changes would’ve been legislated a DECADE ago, if for no other reason than to align with e-waste reduction and reduce supply chain disruptions. But by all means, attack me.

                And for the record, I am NOT ungrateful for skullgiver’s input, and I am happy to get his/her counterarguments so I can point by point explain why I do not find them convincing, but I am passionately not in the same camp, and I hope you can appreciate that I find defense of the position, particularly the ones along the lines of “It is how it is”, abhorrent. Everything is the way it is until it’s not, and the way things SHOULD be matters.

                I respect his/her knowledge, and I respect him/her as a person, but I don’t respect the position that things are okay and/or can’t be changed. There is just too much damage being done by the way things are.