!lymvtcwDJ7ZA9Npq:lix.systems

Lix Development

346 Members
(Technical) development of Lix, the package manager, a Nix implementation. Please be mindful of ongoing technical conversations in this channel.125 Servers

Load older messages


SenderMessageTime
26 Apr 2025
@kfears:matrix.orgKFears (burning out)I already have a NixOS test for it21:43:43
@kfears:matrix.orgKFears (burning out)It's not too bad21:43:55
@k900:0upti.meK900Not a test but a long-lived VM with ports forwarded from localhost21:44:17
@k900:0upti.meK900So you basically treat it just like any other remote box21:44:28
@winter:catgirl.cloudWinter
In reply to @k900:0upti.me
We have good tools for those
like?
21:44:35
@kfears:matrix.orgKFears (burning out) I mean, maybe it makes sense to spin up a parallel VM in a NixOS test to SSH into and spin up Garage there, but like whatever 21:44:39
@k900:0upti.meK900Like nixos-rebuild build-vm21:44:45
@kfears:matrix.orgKFears (burning out)I don't have all of the stuff I actually have pushed21:44:50
@winter:catgirl.cloudWinteroh. well yeah.21:44:52
@kfears:matrix.orgKFears (burning out)And also last time I got stunlocked on the building part because like, the whole setup where n-e-j is used in staging/prod to get the list of derivations to push to Garage doesn't work at all in NixOS VM, and will never work21:45:59
@kfears:matrix.orgKFears (burning out)So I need to do a refactor there for the code to be more abstract and for n-e-j and Nix-native stuff being able to create internal Dataclass representation that can be passed around21:46:58
@jade_:matrix.orgjade_wait what21:48:03
@kfears:matrix.orgKFears (burning out)And there's also a pretty large differences in artifacts that make sense to be uploaded in a local test vs ones that make sense to be uploaded in staging21:48:10
@jade_:matrix.orgjade_how is that not possible?21:48:12
@jade_:matrix.orgjade_nix-eval-jobs should always be used21:48:43
@kfears:matrix.orgKFears (burning out)I don't remember the exact details, I remember running into very annoying situations because NixOS VM doesn't have egress connectivity to pull the flake for evaluation from the internet, and passing it as an evaluated store path from the host also ran into some issue where n-e-j wanted to download something from binary cache to be able to evaluate stuff21:50:26
@kfears:matrix.orgKFears (burning out)And it ran into this shitty problem where unless you run n-e-j on the host first, the VM invocation will straight up fail21:50:48
@jade_:matrix.orgjade_ that sounds like you either want to have egress connectivity in the test (acceptable in principle but not preferred) or figure out a way to pre-seed the necessary things. 21:51:50
@raitobezarius:matrix.orgraitobezariusSounds like missing store paths in the VMs, the installer tests in nixpkgs are probably working in a similar way as what should be done here 21:51:53
@jade_:matrix.orgjade_but in the end it is just a thing that one has to solve21:52:11
@kfears:matrix.orgKFears (burning out)If you can pre-seed the necessary things, there's no use for n-e-j, because pre-seeding will already evaluate all the necessary stuff21:52:56
@jade_:matrix.orgjade_no, the pre-seeding would just be the inputs21:53:14
@jade_:matrix.orgjade_but also, building an entire lix in a vm is not ideal21:53:24
@kfears:matrix.orgKFears (burning out)The whole point of n-e-j in the script is to not pre-seed, and instead to just do it at runtime21:53:26
@jade_:matrix.orgjade_the point of the vm test is to verify that releng works, and if the thing being evaluated already exists and was built that's like fine21:53:55
@raitobezarius:matrix.orgraitobezariusThere's no easy way to pass pre-computed evaluation results across the boundary, short of solving that which is an adventure on itself, evaling twice is not problematic on its own21:55:03
@raitobezarius:matrix.orgraitobezariusIt's an optimization concern to do it once21:55:25
@jade_:matrix.orgjade_the things that definitely need to get into the VM are things that get downloaded from the world wide web21:55:43
@kfears:matrix.orgKFears (burning out)Yeah, hence why I wanted to sidestep the whole n-e-j thing because it also wants you to have evaluated and built artifacts for the whole matrix of [linux, darwin] and [x86_64, aarch64], which is impossible to do locally unless you own a datacenter at home21:55:48
@kfears:matrix.orgKFears (burning out)Because really, to verify that releng works, you can just have the artifacts for your system and that's it21:56:07

Show newer messages


Back to Room ListRoom Version: 10