2025-03-26 Nix@NGI Team Update

We continue our work on packaging all NGI Zero-funded projects in a declarative, transparent, and verifiable way. With Nix packaging applied consistently across all NGI Zero programs, this approach aims to ensure a smooth and efficient deployment pathway.

tl;dr

We have started working on an end-to-end demo for NGIpkgs. The idea is to provide an easy way for new users to try out and customise a complete example application from our package repository as if it was running on NixOS.

We’ve seen a surge of enthusiastic and highly-motivated Outreachy applicants who have already begun contributing to our repository (see the issues they closed so far). We look forward to welcoming even more applicants and seeing them showcase their skills!

Project contributions & team updates

  • @OPNA2608 has been adding to packaging NGI Review projects like Libervia and Marginalia.
  • @Erethon has been handling infrastructure issues and proxying requests to the infra team — special thanks to @Hexa for always being there when needed! Additionally, @erethon has helped fix our CI and is currently working on running NixOS inside an OCI container.
  • @eljamm has transitioned from type-checking projects to handling various triaging and maintenance tasks. Currently, he’s assisting Outreachy applicants, while also improving the contribution workflow.
  • @fricklerhandwerk & @imincik continue to take a holistic view of our workflows and technical strategy. And even in a small team, everyone needs a buddy for code reviews, so they often jump in to back up other team members.

Outreachy x NixOS

After being accepted into the Outreachy internship program, with the support of individuals involved in NGI-0 initiatives, and contributions from @SigmaSquadron, @peterhoeg and @rosscomputerguy, the NixOS Foundation has shaped five projects for interns to work on.

Now, we’re focusing on mentoring prospective interns as they prepare their final submissions by 2025-04-15 to secure a spot in the program. @eljamm is coordinating the “contribution phase” where people interested in an internship pick up small issues, and working closely with some of the applicants.

To make onboarding smoother, a substantial number of “good first issue” tasks have been added to NGIpkgs, making it easier for new contributors to get started.

Demos to improve discoverability

@erictapen continues coordinating with project authors and collecting their feedback via our questionnaire. She has also improved the project overview and will keep refining it.

She is also working on improving the information architecture and enhancing package discoverability, making it easier for users to navigate Nixpkgs metadata.

Additionally, we’ve started exploring a “first-contact” workflow, evaluating the various approaches:

  • Change the user’s environment to make Nix available and build the desired configuration from a Nix expression
    • Official Nix installer
    • Rust Nix installer
    • Install Nix using apt (Ubuntu/Debian unstable)
  • Splice a Nix expression with the desired configuration into an isolated NixOS-like environment
    • OCI image with NixOS
    • LXC image with NixOS
    • KVM image with NixOS
    • NixOS installer image

The goal is to expose new users to Nix expressions in very small steps, and allow them to keep using their existing environment and tools as long as possible. Do you have any feedback or other creative approaches to a smooth first encounter with a complex Nix project?

Summer of Nix 2025

With spring in full bloom, we’re slowly preparing for the fifth edition of the Summer of Nix program in 2025. Stay tuned!

Your questions, answered

Have something to discuss? Thinking about joining the Outreachy program with the NixOS project (#4) and need guidance on where to start? Our team members are available every Tuesday and Thursday from 15:00 to 16:00 (Europe/Berlin time).
We have a public NGIpkgs Matrix room—feel free to drop by, ask questions, or just say hi!
All essential project details, discussions, and contributions can be found here in the project board.

The Nix@NGI team is part of a coordinated effort to support selected free and open source software (FOSS) projects, by making them available as Nix packages or NixOS service modules.
It is funded by the European Commission’s Next Generation Internet (NGI) initiative through the NLNet Foundation and the NixOS Foundation.

9 Likes