Upstream lix-nixos-module (at least the majority of it) to nixpkgs #54

Closed
opened 2025-02-07 23:48:20 +00:00 by jade · 4 comments
Owner

This needs to be done in a way that we can continue to be able to inject new versions of lix into it (if only because it is useful to be able to run older or newer lixes on nixpkgs on purpose), but the majority of this module is error checking and can be gotten rid of. After doing this upstreaming to nixpkgs, this module will still exist for running lix HEAD, but it will remove the majority of the usage and ideally even the Lix HEAD one will reuse the majority of that code, just replacing lix and nix-eval-jobs.

The new module should be placed in such a place that it breaks the overall nixpkgs CI green-ness if it is jacked (e.g. if someone puts in busted dependency cycles like the nix-prefetch-git/rust one that happened recently).

This needs to be done in a way that we can continue to be able to inject new versions of lix into it (if only because it is useful to be able to run older or newer lixes on nixpkgs on purpose), but the majority of this module is error checking and can be gotten rid of. After doing this upstreaming to nixpkgs, this module will still exist for running lix HEAD, but it will remove the majority of the usage and ideally even the Lix HEAD one will reuse the majority of that code, just replacing lix and nix-eval-jobs. The new module should be placed in such a place that it breaks the overall nixpkgs CI green-ness if it is jacked (e.g. if someone puts in busted dependency cycles like the nix-prefetch-git/rust one that happened recently).
Owner

NB Anyone interested in doing this should talk to @raito about it

NB Anyone interested in doing this should talk to @raito about it
Owner

Right now we have several "excluded" packages which always want CppNix to avoid massive rebuilds + errors (some of them link against CppNix headers directly, for example). We can make these use an explicit cppnix package to help all Nix implementation maintainers with testability: https://github.com/NixOS/nixpkgs/pull/384099

Right now we have several "excluded" packages which always want CppNix to avoid massive rebuilds + errors (some of them link against CppNix headers directly, for example). We can make these use an explicit `cppnix` package to help all Nix implementation maintainers with testability: https://github.com/NixOS/nixpkgs/pull/384099

There's https://github.com/NixOS/nixpkgs/pull/469067, for now it's mostly just a fork of the nix-daemon module.

There's https://github.com/NixOS/nixpkgs/pull/469067, for now it's mostly just a fork of the nix-daemon module.
Author
Owner

That's a slightly different object, but we can effectively declare this issue complete: the lix-module is sufficiently simple in requirements by now that if you want you can just replace pkgs.nix in nixpkgs upstream and it will just work, which was the goal of this issue.

That's a slightly different object, but we can effectively declare this issue complete: the lix-module is sufficiently simple in requirements by now that if you want you can just replace pkgs.nix in nixpkgs upstream and it will just work, which was the goal of this issue.
jade closed this issue 2025-12-21 13:02:40 +00:00
Sign in to join this conversation.
No labels
No milestone
No assignees
3 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lix-project/nixos-module#54
No description provided.