After some break time (summer, vacations, all that), here are some news from the Tweag Nix team:
Because it mostly started as a simple gathering of the Tweag people who happened to work on Nix-related topics, the team has historically had a problem of focus and coordination.
To solve this issue, we decided to get together and collaborate on a roadmap to guide the bulk of our work.
The long-term plans are now set and publicly available.
As stated in the post above, we’ve also decided to regularly publish some shorter-term plans. We’ll expand on these below, right after a quick update on the recent work that has been happening.
- @fricklerhandwerk published a blog post on the principles behind Nix in context of the history of computing
@fricklerhandwerk continued with leading the efforts in improving documentation. Amongst other things:
- Formalized some aspects of the team’s workflow
- Started out with compiling a new Nix language tutorial
- Held the 4th, 5th and 6th documentation team meetings
- Amongst the different outcomes of these meetings, it was decided to use nix.dev as the central place for learning resources – and move it to the NixOS organization (nix.dev#285)
- The team also worked towards clarifying the state of the maintenance of nixos.wiki and making it official
- Reviewed Nix pull requests
patchShebangs(based on a Discourse post by @toraritte)
- Made numerous updates to NixOS Wiki articles
@infinisil joined the Nix documentation team
- @bjth and @mat hosted a number of presentations for the Summer of Nix (available on the NixOS youtube channel, including one by our own @fricklerhandwerk on flattening the learning curve
- The Nixpkgs Architecture team which got pre-announced in the previous update got a head start after its official announcement by @infinisil. It has now three official members, and much more attending the regular meetings or the related discourse channel
This section is structured following our published long-term roadmap.
A recurrent blocker for most changes on the Nix side is that beyond Eelco there’s no clear ownership over the codebase.
This makes everyone’s life hard:
- It puts a lot on @edolstra’s plate
- A number of recurrent contributors are willing to take a more active role in the maintenance of the project but don’t really know where to start
- The experience is poor for most contributors as there’s no clear expectation as to what will happen with their contribution (it might get merged very quickly or get stuck forever)
- It’s very hard to get a clear understanding of where the project is going since everyone has its own opinion and there is no single place to build a consensus.
To fix that, @regnat wants to start organizing a proper “Nix package-manager team” (or however you’d like to call it) that would be responsible both for the day-to-day maintenance of the project and the medium/long-term vision.
@infinisil plans on keeping the work with the Nixpkgs Architecture team, with the main goals of
- Focus the discussions and efforts on some specific actionable issues
- Write down all the knowledge that gets exposed during these discussions for future reference and as a basis for a more comprehensive documentation
We’ve mentioned the installer as one of the main things we want to tackle.
Better start right now. @mkaito has accepted to bootstrap the work on that front, with the help of @regnat, @fricklerhandwerk and @solene.
The priority will be to
- Gather a community effort around that (a number of community members, such as @abathur and @Artturin, are already doing some great work on that front),
- Work on the testing setup.
@bjth will take over the work that @garbas started on gathering metrics about the popularity of Nix (cache download stats, social network mentions, etc.) so that the community can know how it is going.
And that’s all, folks, the rest is history