!UUYziobKGGxpovWyAN:nixos.org

Robotnix

228 Members
Build Android (AOSP) using Nix | https://github.com/nix-community/robotnix69 Servers

Load older messages


SenderMessageTime
24 Dec 2025
@cyclopentane:aidoskyneen.eupentane (DECT CYPT/2978)Yep, I'm arriving in Hamburg on the 26th19:47:32
@cyclopentane:aidoskyneen.eupentane (DECT CYPT/2978)would be really cool to meet up :)19:47:43
@sebastian:srx.digitalcrstlNice. Is there going to be a Matrix Nix Channel for the congress again? That would definitely be good, so we don't get lost in the hustle and bustle.19:55:20
@matthewcroughan:defenestrate.itmatthewcroughan @ 39c3 (DECT 94667 or 97340 or 67192) pentane ⭔: can you lock the device with your own nixos setup? 20:24:50
@matthewcroughan:defenestrate.itmatthewcroughan @ 39c3 (DECT 94667 or 97340 or 67192)oh yeah I'll be at 39c3 too, so maybe we can meetup and you can do a quick FAQ? :D20:25:10
@matthewcroughan:defenestrate.itmatthewcroughan @ 39c3 (DECT 94667 or 97340 or 67192)I'll document such a setup too if you help me figure it out20:25:27
@sebastian:srx.digitalcrstlSound great, let's do that.20:28:39
@cyclopentane:aidoskyneen.eupentane (DECT CYPT/2978) yep, you just need to flash the avb_pkmd.bin generated by generateKeysScript instead of the one provided by upstream grapheneos 20:45:00
@cyclopentane:aidoskyneen.eupentane (DECT CYPT/2978)yeah i need to rewrite all the docs at some point, theyre horribly outdated xc20:45:21
@matthewcroughan:defenestrate.itmatthewcroughan @ 39c3 (DECT 94667 or 97340 or 67192)ah, and then you need to keep those keys safe?20:46:31
@cyclopentane:aidoskyneen.eupentane (DECT CYPT/2978)exactly20:46:38
@cyclopentane:aidoskyneen.eupentane (DECT CYPT/2978) and pass them to the releaseScript to sign your target files with them 20:46:58
@matthewcroughan:defenestrate.itmatthewcroughan @ 39c3 (DECT 94667 or 97340 or 67192)can you embed those keys into a yubikey?20:47:21
@matthewcroughan:defenestrate.itmatthewcroughan @ 39c3 (DECT 94667 or 97340 or 67192)or perhaps derive them rom one20:47:29
@matthewcroughan:defenestrate.itmatthewcroughan @ 39c3 (DECT 94667 or 97340 or 67192)* or perhaps derive them from one20:47:31
@cyclopentane:aidoskyneen.eupentane (DECT CYPT/2978) hmm, youd have to take a look at build/tools/releasetools/sign_target_files_apks.py to see what it supports 20:49:19
@cyclopentane:aidoskyneen.eupentane (DECT CYPT/2978)afaik CalyxOS is doing something with HSMs in that direction?20:49:52
@sebastian:srx.digitalcrstl changed their profile picture.21:33:23
@sebastian:srx.digitalcrstl changed their display name from sebastian to crstl.21:33:36
25 Dec 2025
@cyclopentane:aidoskyneen.eupentane (DECT CYPT/2978) changed their display name from pentane ⭔ to pentane (DECT CYPT/2978).11:23:25
@soispha:vhack.euBenedikt How is the support for unofficial lineage os devices (e.g. fp6)? The mdbook documentation mentions a (non existing) flavors/lineageos/supported_devices.toml and the readme in flavors/linageos points me to a repo-tool command that seems to always re-lock the official devices, but not my specified unofficial one (which I did via --lineage-device-file <my devices.json with just the fp6 unofficial repo>) 16:03:58
@sebastian:srx.digitalcrstl

Here is some context of my thoughts so that they are visible to others even without a meeting at the ccc congress.

My ultimate goal is, as one would expect from a Nix/NixOS lover, to turn my mobile device into a nice reproducible nix environment. I want to use NixOS primarily on the go, but because the day‑to‑day requirements and the still‑unrefined mobile optimizations are unlikely to be practical in the near future, I believe it makes sense to invest my time in robotnix instead.

My first attempts with robotnix are already satisfying thanks to your work, though a few essential components are still missing, which makes it less usable at present. Please excuse any incorrect assumptions I may be making because I haven’t fully understand robotnix yet—feel free to correct me.

I’ve also noticed that the current Flake structure, while providing a clearer separation between library functions, modules, and packages, suffers from one major issue: everything is built in a single large derivation. This makes it difficult to leverage binary caches, which in turn keeps build times high.

I read the documentation at https://github.com/nix-community/robotnix/blob/master/docs/src/building.md#binary-cache, but quickly realized that the components required for that, listed in https://github.com/nix-community/robotnix/blob/master/release.nix#L53, appear to be missing.

I tried to trace the implementation in the repository (https://github.com/nix-community/robotnix/blob/master/modules/base.nix) based on your talks and took a closer look at Android’s Soong build architecture at https://source.android.com/docs/setup/build. Unfortunately, I couldn’t find the solutions you suggested in your talk in the repo, which makes me think there are reasons why they haven’t been pursued further.

My first idea was to abstract the components listed in https://github.com/nix-community/robotnix/blob/master/components.json into individual packages via a lib function for mkAndroid and mkAndroidComponent, so they could be made available as a binary cache. If this hasn’t been implemented yet only due to time or support constraints, it would be great to discuss it before I invest unnecessary effort and test my ideas—so I don’t fall into the same problems again.

If anyone here already has thoughts on these topics, feel free to share them. I’ll try to document and transfer them to a new docs page. During a ccc congress meetup we can then dive into the details together.

16:29:05
@atemu12:matrix.orgAtemuAh damn, that's still a leftover. All devices are supported19:18:06
@atemu12:matrix.orgAtemuAs for building an unsupported device: just use build.dirs to add the required dirs19:18:42
@atemu12:matrix.orgAtemuThe repo tooling is for automatically fetching them for all devices that are officially supported19:19:33
@atemu12:matrix.orgAtemuWe all want this. It has nothing to do with flakes and everything to do with AOSP being an immensely complex projects19:20:32
@atemu12:matrix.orgAtemuWe should probably have a doc that states the status quo with constraints, avenues already explored etc:19:21:19
26 Dec 2025
@matthewcroughan:defenestrate.itmatthewcroughan @ 39c3 (DECT 94667 or 97340 or 67192)Yeah we should meet up 09:56:37
@sebastian:srx.digitalcrstl

pentane (DECT CYPT/2978) matthewcroughan
Thanks for the feedback. What do you think, would it make sense to list the meeting as a Robotnix Meetup under Self-Organized Sessions in the wiki and find a date and timeframe for it? That might attract more interested parties and Android experts to the project. Then I would try to prepare a short description for the wiki. But it might be good if you could briefly share your ideas for the meeting.

Maybe something like:

  • the status of the project
  • the challenges of the past
  • Useful or necessary extensions to the library and module system
  • Missing parts of the documentation
  • A roadmap with the challenges for dividing up the build derivation

I could imagine that if we tried to make this as concrete as possible, a few people might be interested in hacking together a few prototypes during the congress.

13:45:05
@atemu12:matrix.orgAtemuThat sounds like a really good idea actually!14:53:00

Show newer messages


Back to Room ListRoom Version: 6