!UUYziobKGGxpovWyAN:nixos.org

Robotnix

256 Members
Build Android (AOSP) using Nix | https://github.com/danielfullmer/robotnix82 Servers

Load older messages


SenderMessageTime
6 Apr 2026
@esch:eschbach.houseesch joined the room.14:53:27
8 Apr 2026
@atemu12:matrix.orgatemu12Not sure whether I published it but I recently had the idea to pierce the sandbox for the gradle cache for the java stuff that can't be ccached. Though now that I've written it out I realise that it might not even use gradle and calls javac directly, hm02:03:37
@atemu12:matrix.orgatemu12Mozilla has a caching tool for rust though that ought to be usable in the sandbox somehow02:04:29
@jack:mudshark.orgjackI remember coming across a nix project that did this for gradle. Lemme dig around a bit. 04:09:56
@soph:soph.zipSophiaI mean the robotnix project does offer a ccache. Though for me it feels like it doesn't do much05:56:13
@atemu12:matrix.orgatemu12ccache only caches the c/c++ bits07:24:33
@atemu12:matrix.orgatemu12A lot of the AOSP is Java and some rust is in there too07:25:18
10 Apr 2026
@neobrain:matrix.orgneobrain https://nlnet.nl/project/Shinobi/
Are any of you behind this or is that a separate effort?
06:45:19
@cyclopentane:aidoskyneen.eupentane @jaen:matrix.org was this your grant? 12:35:13
@jaen:matrix.orgjaenYes, that's the one12:36:52
@jaen:matrix.orgjaen * 12:38:33
@neobrain:matrix.orgneobrainnice, congrats!13:13:04
@magic_rb:matrix.redalder.orgmagic_rb Lol, you found out you got the grant cause you got pinged here? 13:21:22
@magic_rb:matrix.redalder.orgmagic_rbPeak13:21:23
@jaen:matrix.orgjaen It would be funny if I did, but no - I actually do read e-mails from time to time xD 15:23:40
@jaen:matrix.orgjaenI guess now I have to actually go and build this thing for real.15:26:18
@jaen:matrix.orgjaenGotta hold Ericson by his "we're making dyndrvs generally usable this year" because when I transitioned my PoCs from parsing at scale to building at scale it turns there sure is a bit of overhead to solve xD15:26:28
@neobrain:matrix.orgneobrainTo me as a layperson the project sounds like it's solving a similar problem space as soongnix did. Are they related at all or am I thinking in the wrong direction?19:50:21
@atemu12:matrix.orgatemu12Depends on which way you build it. If you take the simple approach of basically doing nix-ninja, you don't interact with soong at all but that's unlikely to work in practice because drvs don't scale into the 100000s.23:05:53
@atemu12:matrix.orgatemu12The hard way would be to build soongnix and run it inside a drv to get per-project drvs (100s)23:06:51
11 Apr 2026
@jaen:matrix.orgjaenYeah, It Depends™01:48:50
@jaen:matrix.orgjaenThe MVP is writing a ninja parser that doesn't choke on how big AOSP is (that I have mostly mapped out), welding it onto nix-ninja (with a few CLI oddities Soong insists on) and seeing what falls out. Which will probably be "congrats, you now have loads of dyndrv profiling to do" and it is a bit of an open question how far you can go with optimisations. I don't think it's fundamentally impossible to get it to scale (bazel, for all of it being a giant PITA, somehow does it), but may end up not being practical.01:49:42
@jaen:matrix.orgjaenWhich is where the second part of it comes in - I'm trying to write it in a modular enough way, so you could decide to take out the ninja chunks, write some Soong piece and keep the rest of niceties for free. Or Grade, or Cmake, or Kbuild or whatever. I just picked AOSP as the first target because I was annoyed at how painful robotnix was to iterate on (until CyclicPentane came along and showed me I just sucked xD), but the idea is to provide something all whatever2nix tools could use.01:52:30
@jaen:matrix.orgjaenAnd if it turns out that there's a hard ceiling to dyndrvs that makes the simple & dumb approach not work, then I guess I can always pivot to Sonngnix 2: Electric Bogaloo.01:54:43
@jaen:matrix.orgjaen * 01:55:04
@jaen:matrix.orgjaenAs far as I understand it, the biggest difference between the two is Soong(nix) being applicative (as far as I can tell) and dyndrvs (and thus shinobi) being monadic. It doesn't change much for AOSP build since applicative is strictly less powerful (you have to know the build graph ahead of time), but is in general more powerful (because you can modify the build graph during the build, when you discover new dependencies), so it doesn't hurt to try and leverage that, if practicable.02:02:24
@jaen:matrix.orgjaenBut I guess that's enough of off-topic for now02:02:43
@cyclopentane:aidoskyneen.eupentanefwiw i think it's perfectly on-topic, and I'm also interested in this06:45:11
@magic_rb:matrix.redalder.orgmagic_rbNot yet enough offtopic. I never thought of dyndrv as being monadic while normally were in applicative land, but damn youre right06:55:49
@magic_rb:matrix.redalder.orgmagic_rbDoes bazel do sandbox setup? Cause assuming you dont use stdenv for your dyndrvs, then the only real thing nix does except for a fork exec is the sandbox setup07:37:36

Show newer messages


Back to Room ListRoom Version: 6