Mobile NixOS
mobile.nixos.org
mobile.nixos.org
If this Mobile NixOS can get solid support on as many or more devices (including using mainline Linux, with no closed drivers, but possibly closed blobs for now), that will be another option.
BTW, one thing I don't want to see happen to any of these distros is for PinePhone to be the only actually solid device. Tempting as that device may be. If the distro doesn't run well on many devices, that's not a good sign for long-term viability, and it's also potentially awkward.
I share the same concern. I've been elevating the different platforms about equally. This is why there's so many "unfinished" ports. They are approximatively at equal support, but the crucial thing is that I helps me validate assumptions. I wrote a bit about that on my personal blog[0].
In fact, it's caused some "concern" about the viability of Mobile NixOS as the Pinephone isn't any more "well supported" than other platforms, which means there's work to do still :).
0: https://samuel.dionne-riel.com/blog/2020/04/24/mobile-nixos-...
Similarly, I'd like to see a linux distro targeted strictly to apple silicon macs and nails the user experience, fully working drivers etc.
I'm excited about Mobile NixOS though. I've found the NixOS community to be motivated and friendly, but there is only so much progress that a small group of volunteers can make.
I'm curious to hear more details about issues you might have been facing.
You can hit me us/me up on the Matrix channel[0] for "NixOS on ARM", tag me (@samueldr) on the Discourse[1], open an issue[2] if there's something actionable (and you didn't already), or I guess a reply here could do too, if you want.
0: https://matrix.to/#/#nixos-on-arm:nixos.org
I think if more devices aren't doing this kind of thing then the cost might not make sense to them at all. Perhaps they aren't bricking devices often, or perhaps their support load is low.
But I'm only speculating. I'm all for more NixOS if it helps people.
Fedora-IoT effectively does this with rpm-ostree + greenboot.
Greenboot specifies a series of directories under /etc that organizes your custom scripts (scripts that must not fail, scripts that may fail, scripts to run on success, scripts to run after previous failed, etc) then it marks your current ostree as either being active or auto-rollsback into previous.
1. LumiGuide uses NixOS for their embedded systems, which track automatic bicycle rentals at little solar-powered stations IIRC: https://av.tib.eu/media/39625 (also some coverage here: https://www.worksonarm.com/blog/nixos/ )
2. Yakkertech uses NixOS for their embedded systems, which do baseball pitch tracking: https://av.tib.eu/media/50713
3. Swift Navigation uses NixOS for CI/CD for the embedded systems they use for GPS and navigation: https://blog.swiftnav.com/using-nixos-to-manage-hardware-tes...
I'd only heard of the first two, and discover the third just now.
There are also two downstream distros/related projects that target embedded systems, but idk how much commercial use they've yet seen, if any:
I'd bet mobile Linux is still a few years away in the real world though. I got a PinePhone a couple weeks ago for tinkering and the user experience is nowhere near my Samsung Galaxy. Still hesitantly optimistic about the future of mobile though.
I've only observed some of the discussions over at pmOS (and some at ArchLinuxARM for that matter), but to me it's very unclear what the "workflow" should look like if I would have, say, a patch ready for my pinephone's drivers.
A lot of different efforts seem to be somehow widespread across the interwebz, with varying degrees of stability, and seem to be very uncoordinated or isolated efforts.
I'm asking this, because I've seen that the nix file builds from megous' fork [1] so I'm a bit unsure on how "official" it is in regards to whether or not pull requests/patches submitted there will be integrated upstream.
(Sorry if I misunderstood it, but I'm a bit cautious having developed on dozens of abandoned forks of Linux kernels for Android/AOSP before - as most of them were a waste of development years due to no patron available or willing to merge fixes upstream)
I’ve dabbled in NixOS, I have it installed in a second desktop under my desk, and occasionally use it for Linux tasks...
Most of my Linux projects though have been doing stuff on raspberry pi or pine phone, or any of these sorts of little machines, where I’d really love to run Nix... the problem is every time I start digging, they seem to require already a lot of Nix experience, and expecting that I’m already on a nix machine to create and burn images, etc...
But where is like the image I can just download and burn from Windows to an sdcard, or at least really simple instructions to get that image from an nix machine?
One thing I notice, is this url is just given, without much context: `https://hydra.nixos.org/build/142828023/download/1/nixos-sd-...`
But I (think I) know enough about nix to know this is an image generated by the build system, and in theory I should be able to browse hydra, to find other images that I could try to burn, I think some info about where that image came from would be super helpful in understanding nix's build system.
They're also the initial target demographics, if only because this is a limited amount of developers in what is a cross-section of two niches: Non-Android Mobile Linux and NixOS users.
But you're totally right. Once it's "ready enough" for any end-user, we'd want to make it clear "why Mobile NixOS rather than another Non-Android Mobile Linux?"
First impressions really are important.
Mobile NixOS is intended to be strictly a supserset composed on top of NixOS. So the question should be answered the same, except you add "for your mobile devices" at the end.
Mobile NixOS: The Present and the Future - https://news.ycombinator.com/item?id=20780504 - Aug 2019 (47 comments)
Though you might want to ask around for your particular use case. While basic support (it boots) is right around the corner, it's probably not yet at a point where it'll be nice to use.
Just like NixOS doesn't prescribe a user interface, it is left to the end-user to choose what they want to run.
As such, this is meant to allow you to run the "mobile first" desktop environments like Phosh and Plasma Mobile. As many other non-Android Mobile Linux distributions do.
So to answer more succintly: no, it doesn't run Android. Yes, some other UI, at the end-user's choice.