Comment by Tepix

Comment by Tepix 21 hours ago

32 replies

Isn't every Android phone a Linux phone? OK, i guess we want something that is less encumbered and more transparent with more digital sovereignty for the user than the Android that we get from the various big phone vendors.

What's the difference between an AOSP Android phone and a Linux phone? For me, there is no substantial difference. The Android based phone is likely to be way more usable the various "Linux phones". The linked article states "Linux phones and their apps are all open-source and do not depend on ads or surveillance to sustain some nefarious business model, which means there is much privacy to be won." but this also applies to AOSP Android devices with open source apps.

In other words: If you seek a Linux phone, why aren't you picking GrapheneOS or LineageOS? Is there anything else that's missing?

carpenecopinum 21 hours ago

For me personally at least a few aspects about this are efficiency and control:

The number of CPU cycles my current android phone burns through just to boot and get ready to accept my "first useful input" is probably in the same order of magnitude as or higher than my old N900 would use for the entire day (600MHz single core vs. 8 cores at several GHz). Yet somehow the N900 could easily run quite a lot of things in parallel and would still react quickly to inputs, while I decided to get rid of my previous (still several times more powerful) phone because it would regularly hang for 10 more seconds without any good reason (also there were no more OS updates).

Also with the N900, I had control over every aspect of the system, I could easily script things in python without installing a huge app for it, which the OS would decide to randomly kill to save battery, etc.. Closest thing you can do on Android is root your phone and now every second app complains what a horrible person you are for wanting a bit more control over your own hardware.

That being said, I too eventually buckled to the fact that all the software you need to make a smartphone useful/entertaining is pretty much only available for Android and iOS. And the most realistic way to get "Android-compatibility" to a Linux phone is to just ship an entire Android build with it, due to how interwoven things are on Android.

  • holowoodman 21 hours ago

    Fully agreed as a former N900 and now Fairphone+LineageOS user.

    Some more things to add: On the N900 updates were quick, easy and painless to a degree that no current phone OS matches: You just to "apt update && apt upgrade", reboot will only happen when really necessary, otherwise any small component (which are just .deb packages as in Debian or Ubuntu) will just be upgraded and restarted in place, without a big download, interruption and reboot. And most importantly, without waiting for a slow vendor to collect and package up all the tiny updates into a big 1GB package that can then be delivered weeks late...

    Also, Backups. The only backup solution for a non-rooted phone nowadays is "use our cloud, trust us", and even then backups are always incomplete, because an increasing number of apps set the "no-backup" flags and do (or not do) their own thing, selling you yet one more cloud subscription just to get your own data into "safety". And even with a rooted LineageOS, backups are still a huge pain and incomplete. On the N900, you could just run any old normal Linux backup software, and be done. Imagine, your phone just sending its stuff to your company tape library, no hassle!

    And (didn't try this, but should have worked): remote management. SSH into your users' phones to do stuff. Run ansible/puppet/..., manage them like any old Linux box. No tedious mobile device crap management that doesn't really do most of the useful shit, only works on half the hardware and in the end is just yet another cloud lock in by some vendor.

    • seba_dos1 17 hours ago

      I switched from Nokia N900 to Librem 5 that I'm writing this from and I'm still enjoying these things. I miss the keyboard though.

      • holowoodman 15 hours ago

        Yes, hardware keyboards are another good thing from the past that got lost...

  • Tepix 12 hours ago

    All the Linux phones that i‘ve used have felt very sluggish, even if they were pretty recent models.

    GrapheneOS on the other hand is very snappy.

forty 21 hours ago

GrapheneOS only supports a few specific Google phones, so it's not an option for most cases

  • quotemstr 21 hours ago

    It still makes zero sense to take the XDG/dbus/whatever stack and make it run on a phone, suboptimally, when AOSP is right there and has already solved all the thousands of integration issues you'll run into --- plus, it's already free software.

    NIH is the only rationale for the "Linux" phone thing and it's why it will be forever fringe. People working on "Linux" phones as anything more than a diversion (why not play Factorio instead?) are wasting their time.

    • aragilar 20 hours ago

      One could ask why AOSP was created when there was an existing userland on linux that could be used (and was, by Nokia).

      More seriously, I think the reason people want to do this is threefold: 1. Android vendors almost universally seem to make it hard to run stock AOSP (and do the Windows bloatware thing that Windows vendors were known for), so a "linux phone" lets people run what they want and remove what they do not 2. AOSP, while open source, is not developed in any way like a community open source project, so their ability to change anything, especially anything Google does not want to change, is limited and means constant rebasing 3. AOSP doesn't really solve the "run a modern/non-buggy kernel" issue on existing vendor hardware (as far as I know), so if you're going to spend time on getting the kernel to work, you probably want to have a userland that is amenable for getting the kernel working, so AOSP isn't helpful there, and by the time you've done all this, you can probably just run the rest of the standard setup with a distro and tooling you are already familiar with

      I think the interesting thing would be if the modern kernel work from (3) could be used by an AOSP build and get the best of both worlds, or if by the time you do all this AOSP is too resource intensive to run on the device, and so running the alternative is the only option.

      • seba_dos1 17 hours ago

        Not just Nokia - at least Trolltech and Motorola had their own stacks, and Openmoko predates Android release too.

        In fact, it was Nokia's stack that was the youngest one out of all these, as Maemo had no telephony capabilities pre-Android.

    • ponorin 5 hours ago

      > it's already free software

      I'd just like to interject here for a moment. The word Free Software has a specific meaning that AOSP does not meet. The only component of AOSF that is Free Software is the Kernel, due to GPL, and aside from low-level Android-specific modules such as binder there's no secret sauce in Android kernels; even the vendor modifications are mostly gutted out in favour of Project Treble and GKI. Everything else is only Open Source and not Free Software, and even then developed privately and only published upon release. Because nobody releases a pure AOSP phone (Google Play Services alone changes the OS behaviour dramatically, punching through all the usual app sandboxes) and the source code for the modification, it's effectively proprietary with open source components.

      • Tepix 2 hours ago

        Which one of the four freedoms is not met by AOSP?

        Don‘t Linux phones also rely on binary blobs?

    • hnlmorg 21 hours ago

      I agree with your overall point but the following comment is unnecessary:

      > People working on "Linux" phones as anything more than a diversion (why not play Factorio instead?) are wasting their time.

      People are free to spent their free time however they want. Some people view building things, whether it’s furniture or software, more enjoyable than playing computer games or watching TV.

    • guappa 20 hours ago

      Try getting a patch into android vs getting a patch into a debian package and tell me how it's the same thing :D

      • Tepix 2 hours ago

        GrapheneOS has contributed many past features to AOSP.

        Does that count?

    • JCattheATM 10 hours ago

      It makes sense because it gives you complete control over your device, to a level even AOSP can't touch.

      • Tepix 2 hours ago

        Even Linux phones rely on binary blobs.

gf000 21 hours ago

> What's the difference between an AOSP Android phone and a Linux phone?

One is actually working without draining the battery in an hour and has an actually working security model.

Sorry for the tongue in cheek reply, but I am in complete agreement with you.

  • guappa 20 hours ago

    > actually working security model.

    ?

    If you use a famous and popular vendor like Samsung, if you're really really lucky your 0-day will take 9 months to be fixed.

    • Tepix 12 hours ago

      We‘re talking about AOSP Android here

      • guappa 10 hours ago

        It cannot be compiled as it is, so it's nothing that runs on any phone.

  • aragilar 21 hours ago

    I know right, when will Android vendors actually release security patches on time?

    • Tepix 12 hours ago

      GrapheneOS is really good at this.

fsflover 20 hours ago

> What's the difference between an AOSP Android phone and a Linux phone?

The latter is:

- not being developed by Google which chooses what's better for them,

- provides convenient development tools,

- runs any desktop Linux software, can serve as a desktop when connected to a keyboard/screen,

- native terminal, including ssh, sshfs, X forwarding etc,

- allows to choose the OS you run.

More: https://source.puri.sm/Librem5/community-wiki/-/wikis/Freque...

  • rahen 12 hours ago

    Those are very relevant for a Linux laptop, but much less so for a Linux smartphone. An AOSP-based distro like LineageOS, GrapheneOS, or /e/OS paired with Termux provides almost a all of this, with the added benefit of ART - quite possibly the most polished runtime in the Linux ecosystem.

    You can even plug a bluetooth keyboard and run Emacs on your Android / AOSP phone nowadays.

    • 418tpot 10 hours ago

      I currently run LineageOS and am constantly frustrated with its limitations every day.

      On desktop linux I can quickly write up a program to do most anything I want in pretty much any language, and in my text editor of choice. I don't know anything about android development and I don't really want to invest time in learning Google's proprietary GUI toolkit when QT/GTK, or even raw OpenGL is more portable. I once looked into it and gave up when it seemed like it was going to be very painful to write an app outside of android studio (why is there not just a CLI tool to compile these things?). On vanilla linux I can whip up most things in under an hour in C, Rust, or even Bash.

      • rahen 9 hours ago

        You absolutely can write something in C, Rust, Go, or whatever on Lineage. Just install Termux and the relevant packages (e.g., pkg install rust, etc.).

        AOSP is still vanilla Linux under the hood, just with a touch interface on top. Plus, ART is open-source and works great for GUI apps.

        • 418tpot 5 hours ago

          Right, but that is still severely limited in my experience.

          Like I can't bind these programs to run on keyboard shortcut (or I guess the mobile equivalent would be a button on the home/lock screen?)

          I can't do basic UI-- even if I don't write a QT/GTK app sometimes I want to pipe to imv, mpv, present a list of options via dmenu/rofi, send a notification to dunst/mako via notify-send, copy strings to the system clipboard, write a script that calls wtype to emulate keystrokes, etc.

          I don't have access to the whole filesystem too, right? Last time I tried writing a script in termux I couldn't access the photos my phone took.

          One concrete example: I use music player daemon to play music throughout my home. On the phone the answer is to download an app that implements the protocol, but the app isn't great. Instead, I wish I could bind dmenu to open up when I press volume up for example that just shells out to mpc. These are the types of things that I like to set up on my desktop to get a really ergonomic experience tailored to my workflow, but on mobile I'm at the mercy of what apks are available.

          I also haven't found any great solution for setting up a phone declaratively. On desktop I can use NixOS to codify my configuration, on mobile, flashing a new OS means pecking around settings/fdroid like a point and click adventure game for an hour to get everything to a somewhat usable state.

          Perhaps this is all just user error and everyone else has figured out how to do these things, or they just suck it up and build their own android apps. But for me, this is really what I'm asking for when I say I want Linux on mobile.

          > Plus, ART is open-source and works great for GUI apps.

          This requires writing the app in java and building it in android studio, right? Is there an easy way to just compile an apk from a non-android project?

          Also if I invest a lot of time in learning ART and building apps for android, I will have a much worse experience running these apps on desktop linux (for example under waydroid) which is where I spend a vast majority of my time.

immibis 21 hours ago

The term "Linux operating system" refers to Mozilla/systemd[optional]/Xorg/bash/GNU/Linux and does not refer to Google/Facebook/Samsung/Linux

  • mrheosuper 20 hours ago

    And who decided that ?

    • immibis 16 hours ago

      The same people who decided the meaning of words like "who", "decided" and "that": all of us