My biggest blog post yet, and it’s about running (almost) vanilla NixOS on a (formerly) Android phone! This was 50% fun and 50% exhausting… you solve one issue and another one crops up right away… it was certainly an interesting educational experience.

I’m not explaining any basic technical concepts here, as I’m not a complete noob in phone ROMs and Linux.

Ask me any questions if you have them!

  • chayleaf@lemmy.mlOP
    link
    fedilink
    arrow-up
    8
    ·
    edit-2
    1 year ago

    Most phones have no mainline Linux support, and require something like ubports, which can use an unholy hack to run Linux userspace based on Android drivers and kernel. I think this one can be installed to just about any Android phone (worst case you can use the generic GSI image, which should work but be slow). Personally, I’ve never once bricked a phone by flashing it, and I’ve been doing it since ~2015 (don’t remember the year, but it was a Lenovo S660).

    OnePlus 6 is a 5 year old phone with a SoC that has comparatively high development velocity (SDM845), which is why it’s finally getting close to full mainline support for basic features like calls/SMS/camera/sensors (still not fully there, and yes sensors are needed, they make stuff like autorotate and turning touchscreen off when you put your phone to your ear during a call work). If you want to tinker with Linux, I recommend a Pinephone; though Mobian did mention how frustrating its ecosystem is in their blog. Maybe Pinephone Pro or Librem are better, but they’re way way way more expensive. If you want a daily driver, I recommend a OnePlus 6/6T as explained in the article, or some other SDM845 phone, and maybe don’t DIY if you don’t have the basic experience in working with ARM SBCs and Android ROMs like me lol.

    postmarketOS is probably the smoothest experience you’ll get on a wide range of devices, and I highly recommend it. Most other mobile Linux distros are often more or less piggy backing off their work (though of course other distros create cool stuff too).