-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Return to factoring and comments on flake once major features have all been added #27
Comments
Just to explain the names We (@ngi-nix/fungus) were under the (incorrect) understanding that the only reason for the attrset merge in flake.nix was to carefully only define hydraJobs and checks for I suspect this would all get a lot cleaner if we could start defining checks for all systems, but that would require addressing #24. |
The @ngi-nix/algae team has done a great job on a major refactor of the flake for ngipkgs as part of their work on the pretalx service in #38. @fricklerhandwerk and I joined one of their mobs yesterday to better understand what they had done, and to provide some context for the earlier iterations of the flake. In addition to removing the The outputs of the new flake are organized into three different attribute sets, sorting outputs based on their relationship to For their work on pretalx they also introduced a new output and and associated repo directory for Even though not all the originally listed features have been added yet, I think this work addresses the core need I had in mind when I created this issue so I'm going to close. |
Nice. The refactor looks great to me! |
Minor correction: Looking at Lines 59 to 64 in 0893452
system that (1.) takes would become constant, i.e. system = "x86_64-linux" , and equal to the variable linuxSystem = "x86_64-linux" relevant for the second group. Thus, these two blocks could be merged. At this point, one might also think about abandoning separation into blocks, since system = "x86_64-linux" would be everywhere, and it's not as important anymore to think about the distinction:
*: This quantifies over all "default systems". |
The "major features" in the title primarily refers to ongoing work on CI (#24) , as well as future work on nixos-tests (#28), support for public VM (cloud) deployments (#22), and import of Ngipkgs into existing NixOS configs (#21).
I'm making this issue in order to not lose track of a good conversation that happened in a PR today:
#26
Following from that conversation, I just added some additional comments into the flake:
ac50c3b
The comment I'm least confident about, and therefore would prioritize returning to, is the explanation of the location of nixosConfigurations as the workaround for nixos-container parsing of attribute paths. This is my rewording of the original comment by @fricklerhandwerk that was removed in PR #26 and prompted this work. Relately, as I say in that PR, I think would also be good to have more structural commentary on the reasons for, and differences between,
buildOutputs
andcheckOutputs
.In the end, the structuring of the flake we've arrived at organically through debugging could end up not being relevant anymore and could be refactored into something more logical but I would wait until features are done being added before considering that.
The text was updated successfully, but these errors were encountered: