An update on the Mobile NixOS project:
I figure most of the people watching this thread will be interested in that update.
An update on the Mobile NixOS project:
I figure most of the people watching this thread will be interested in that update.
Fantastic news ! How long can you work fulltime on this ? There has been some efforts to port nixos for the librem phone. Exciting times.
If everything goes well, more than a year, maybe two full years. Though by “the end” I’ll look into ways to continue working. At least for now I can focus on producing results.
Yes, hopefully some of the work (especially the software) will allow more choice to end-users, “for free”
Fantastic! I would love a NixOS phone!
You could talk to the Purism people and see if they give you a devkit of the Librem5.
It worked well enough for the last post, I’ll continue sharing them here, unless you are not interested in updates .
In which I answer some general questions I’ve been asked, online and in real life.
Actually, systemd does work fine on mobile phones: Sailfish OS uses systemd as its init system. Hardware that depends on Android-specific drivers first initialises hardware with the Android init system, before handing over control to systemd.
The rpm packaging for systemd in Sailfish can be found here.
Yes, systemd does work fine on mobile phones! I was writing defensively, since I hadn’t done it yet, though I was 99.99% sure it was fine.
Why do I say it’s fine? Because it’s fine! Read more here:
Maybe watch it happen here if you do not want to read anything, but note that there’s no narration. It’s only a piece to accompany the write-up.
Oh, I should have been updating this thread, too.
Now that we have a website, I’ve been doing the updates over there.
Hi, any plans to write the Porting guide (step by step guide)?
The more idiot-proof, the lower the bar for others to help you out!
So writing a really comprehensive porting guide is probably of the best investments of time (given the possible high return)
Due to lockdown I have time left, and I want to port my old Samsung Galaxy S5 (for which a LineageOS port exists).
If the step by step porting guide assumes the phone is already supported by Lineage (thus has kernel) then great!
Hi!
I intend to write a more detailed guide, but I can’t promise any kind of deadlines.
It is quite hard to write an idiot-proof guide, considering I kinda know the steps by heart, and assume so much knowledge already. I’ll try and re-do a port as if it wasn’t done, and write the steps.
don’t be a perfectionist it is not all-or-nothing.
Writing such a guide is an iterative process, and by writing it you will receive feedback to improve it (and make it more idiot proof) in later cycles
Hi samueldr, I’m sure you’ll recognize me from the #nixos-aarch64 irc
If you want I can write a porting guide somewhat from what I’ve done with porting to op5/5t. Overall it might be better for someone that knows the commands but not by heart to help write it.
I know some of you follow the project only from this thread. This one’s for you!
The march update:
Holy cow, that is impressive.
It really shows the huge productivity leverage that a programmable package infrastructure gives you, making a major undertaking possible with just 1 developer.
Keep up the great work, @samueldr!
Indeed, the strong guarantees coming from Nix are extremely invaluable, without Nix there would be place for so much mistakes to happen, or accidental re-use of old builds.
I can’t see any project with such a scale (an operating system) without a system similar to Nix with regards to dependency management. I will say, anything not exhibiting the same strong guarantees is a legacy system :).
Hi, question: which version of nixpkgs (git revision?) should I use to be able to use a cached armv7l+gcc6 tool chain?
I’m trying to port something based to mentioned platform, but I don’t have the computing power/disk space to rebuild the whole tool chain
(Sorry, I missed your question)
I would suggest using a revision where the mobile-nixos:unstable:tested
job succeeded.
You can follow a build that has succeded and click on the Inputs tab. That one used 22a3bf9fb9edad917fb6cd1066d58b5e426ee975
.
It’s not a guarantee for armv7l
, but the chances are greater.
Though, you could also do the same with mobile-nixos:unstable:device.asus-flo.x86_64-linux
, which when it succeeds, must mean that the dependencies are available :).