Introducing the "Nixpkgs Contributors" Open Collective - Empowering NixOS Growth to contributors!

I think “peers” represent indeed a group of active committers, but some non-committers are also involved and stick around.

In this instance, we are looking at ways to decrease drastically the amount of time sinks that committers and to a larger extent some reviewers are going through.

Well, I am really sorry for your experience, as you can see, someone who contributed trivial commits to OfBorg gave their opinion on this thing without taking into account the other issue, it’s not the first instance this person has not taken the time to ponders the situation and rushed out to impose their conclusion on things.

For example, @JulienMalka who is someone I work on a daily basis in real life, suggested another way to look at your issue, but it seems the deed was already done.

I would say in general that this is a good example of something that can easily be answered by me as a product manager (debatable), if you want:

I believe that the PR is trivial and is a good addition in general, but OfBorg is not in a sufficiently good shape to accept this PR without evaluation of its impact on the build capacity, which should be reported inside this PR as data. So actually, what is, a seemingly trivial PR, is definitely not IMHO.

We can press ‘merge’ and have the consequences, but they will be very problematic for active contributors like us who are dealing with OfBorg having a too large queue, stopping us in our tracks.

What is even more annoying is that there’s a political dimension to your PR, it has not been discussed, yet I imagine, but if we think from a resource prioritization standpoint, it does not make sense to build unfree packages rather than let’s say exotic platforms like Musl in our CI.

Finally, there is the legal dimension of your PR, what does it mean to build this contents and throw it away — we already had overzealous people coming at us for the fact we were rebuilding their free (!!) software with our CI, I cannot imagine what annoying extra incident it may create with unfree software if it was too “public”.

Though, unfree package in CI is a valid concern and requires a more involved focused group to determine where does the project stand in maturity to support or not an action in that area. At the moment, I believe it’s unrealistic before we secure legal means for the project (because if someone wants to fuck around, they will be able to, and we don’t want to find an IP lawyer on a last minute). At least, that’s my 2 cents.

So I apologize, this was in fact a very complicated issue to deal with and requires coordination with the stakeholders of our legal existence, i.e. the Foundation IMHO.

Here’s the interesting fact: no one has really the keys… OfBorg is in a very precarious position.

I believe what was lacking is that what I have been trying to formalize in terms of “strategic goals inside nixpkgs”, if such a thing would exist, it would take the form of a large big picture set of goals which could be detailed at the issue level we have to take care of, to contribute in a larger form to the project.

And I think you had a mix of:

(a) picking the wrong “easy” issue
(b) picking the wrong project: OfBorg is a special case among all cases, even Hydra is kinda different (!!)
(c) not escalating to more folks (committers/reviewers/any relevant person, you can check the infra team for example for that) who may have a different opinion: committers do not monitor the OfBorg repo and probably who does probably miss stuff that is not directly addressed to them (*)

Nevertheless, it’s not an excuse for saying that the process for you, from what I am seeing, was awful. And I reiterate my apologies, this is exactly what I want to curb.

This Open Collective is about bringing the financial means to curb this, and it sprinkles a bit of that prioritization vision, you will also get better contribution experience in such projects because you won’t have drive-by random contributors (no matter how much prolific they can be, this is irrelevant) who are not necessarily involved in OfBorg operations, which is not a bad thing, but I feel like you deserved the answer I put above on the unfree topic.

Onto the “what can I pick up as a beginner task to help around”, this is a hard one. The way I see it is that we need to get experienced community members to take the time to reduce the barrier to entry to contribution to our stuff, to open it up to people like you and help you towards making satisfying contributions if you want to.

But doing so requires addressing the strategical issues I am talking about first. I am not against doing both in parallel, but I am laser focused on strategical issues if you will because I am convinced this is what put an end to those situations.

I may be wrong, and I would be gladly proven wrong if my vision of the situation is partial.

Either case, I apologize if you feel like there’s a “peer” group that is blocking access to contributions, this is a subject that interestingly @JulienMalka brought regarding the existence of a “core group” at NixCon (Julien: "NixCon feeback" - NixOS Paris server). I don’t want this for the NixOS community, and I am dedicated through those initiatives to lower the barrier to entry and lower the requirements to work on anything in nixpkgs and increase diversity of our community through that.

This is my commitment in my dedication through what I do, i.e. not only driving my changes as a nixpkgs contributor, but ensuring that you get to feel welcomed in this community and understand how to navigate through all of this without feeling there’s a group of folks that gets to decide unilaterally and you have no say in this.

5 Likes

Sorry to continue to monopolize the thread; I hope this is helpful for you and not just a thing to deal with.

While I did find my experience annoying, and I do appreciate your apology and your explanation of what you think about the issue, none of that was really what I was hoping to talk about. This is the thing:

The strategical issues you’re talking about—some of them are global to Nixland, and I don’t expect them to be resolved any time soon. Some of them, I think you’ve described in your Open Collective blurb:

This includes streamlining the development environment setup, improving documentation, and providing clear guidelines for contribution.

I agree that we need to get experienced community members to put the time in to opening up OfBorg for more contributors. I’m concerned that this time will be focused on devenv stuff, documenting, and writing CONTRIBUTING.md. Those are all good things to do, but if all three of them were done at an excellent level, I would still have had the experience I had as a new contributor. What would have made a difference is someone who could have done any of the following:

  • Proactively monitored the OfBorg issues so that there was at least a comment on the original issue indicating that this was a controversial idea, if not outright closing it for the reasons you describe
  • Stepped in when the PR was submitted to offer an authoritative decision on what to do about it, instead of leaving me to guess whose opinions are just opinions and whose carry the weight of responsibility
  • Had their name(s) in some prominent place as the person to escalate to for questions about what is in scope for OfBorg—I accept the feedback that I could have escalated harder, but arbitrarily choosing a name to ping (cole-h, I guess?) runs the risk of accidentally pestering the Prime Minister of all of Nixland with the issue you wanted to report to the Mayor of OfBorgtown

That’s why I’m saying OfBorg needs a product manager. If this person exists, I agree that writing CONTRIBUTING.md and putting their contact info in there is among the next most important things to do. But if they don’t exist, then I am concerned that new contributors will continue to have a similar experience, just with the perk that they will be able to test their ill-advised and ill-fated OfBorg PRs in a dev container.


Just to close this off:

I really don’t. I think the center of the NixOS community is plenty welcoming. Some PRs are going to be rejected and I don’t think that’s bad or take it personally. My problem is with how the governance structure is so opaque that I don’t even know who’s in it. The NixOS org contains 2,559 members right this second, and I’m one of them, so obviously that means something between zip and squat. The set of committers for Nixpkgs is smaller, but I don’t know how much smaller because I don’t think there’s a way to see the list anywhere, and as you said, some people who matter aren’t even committers. Whoever the core people are, they are all stretched so thin that you can maybe get one comment a week out of them on one of your issues or PRs, and if they stop responding you don’t know who else to ping. I don’t think this is because they’re blocking the rest of us from doing anything; I think they’re just crushed by the size of it all and doing their best.

Nixland-wide governance is clearly a current topic of conversation—I’ve been lurking in most of the relevant Discourse threads, I think—and just as clearly not easy to solve. But maybe for a smaller initiative focusing on OfBorg, we can cut through and establish some actual leadership. Is that you, then? Are you the Mayor of OfBorgtown?

5 Likes

Elephant in the room:

Today, I am thrilled to introduce a new fundraising initiative that has been in the works for some months now: the “Nixpkgs Contributors” Open Collective

Why is this, yet again (like: Nix Community, Nix <3 macOS, and other significant core parts of the Nix ecosystem), not driven by the NixOS Foundation?

I’m not criticizing your choice and initiative here - this seems like the most productive way to get things moving. But if every single person who wants to get something done in the Nix ecosystem has to fork out of the main funding structure for the project, there’s a massive problem that needs to be addressed.

11 Likes

My question as well. Follow-up: How do you defend this growing resource that the OC is hopefully going to be against pressure from companies that often contribute “solo adventures” with less than optimal community synchronization? For example, let’s say Determinate Systems put a big bag of coins in the OC’s lap, and they suggest it to be used to improve their particular favourite toy of the day. (Good PR for them.) Can you ensure that the money ends up where the OC wants it to go, no matter the external pressure?

In general, what’s your process to decide what to spend the money on? We know we can trust you personally, but that process needs a bus factor higher than 1.

1 Like

Yeah, you can only see it if you’re in it weirdly. It’s around 200 people currently and doesn’t grow more than a handful of people a month.

some people who matter aren’t even committers

A lot of them actually. The only thing that really differentiates you from a committer is that they’re allowed to press the merge button while you aren’t. We’re experienced with Nix/Nixpkgs in general, yes, but we don’t know about every nook and cranny of Nixpkgs and certainly aren’t familiar with every language/framework or package.

If you can demonstrate the amount of QA you have done and ideally have another person do a bit of QA, that’ll have your PR much closer to merging than having a random committer looking at it.

If I come across a PR about a package or framework I’m not familiar with in the slightest, I likely won’t even look at it.

If I see that it’s approved by someone (non-committer or otherwise) however, I might open it. If I see there has been sufficient QA, I might even just merge it.

That is certainly part of it but I also what I mentioned above. Each committer only knows a fraction of packages well enough to immediately merge a non-trivial PRs touching them.
If you’ve refactored a package in your PR and you can get another user of that package to come in and say “I’ve tested functions x, y, z and they all still work for me”, that’s extremely valuable as it increases the amount of committers comfortable to merge that PR has from perhaps even as little as 0 to at least a couple dozen. (Add an approval tag in that case so we can find such PRs!)

So to reply to

Anyone who can demonstrate that the PR is good. A user of the package would be perfect but someone with experience in the ecosystem is also great.

I can’t speak for Raito but, gathering from his replies, I don’t think that’s in scope for this initiative. I think the goal is to get Lily some time and compensation to do technical improvements to ofBorg.

@rhendric you raise perfectly valid points. From my experience, we certainly need (and lack) both: a clear product vision for each subsystem and their interplay and substantial amounts of work done to implement it. Often this can be covered by the same person, sometimes not. It’s an issue of personality and the specifics of the project.

I also agree with the assessment that the core of the ecosystem is too damn big for the number of people actively working on it. Where authority is in place, we lack the time to onboard new owners even if there are candidates. Where no authority is exercised, it‘s delicate. And even if we were to follow the practice of giving full permissions for abandoned code to anyone who asks, for vital components it would be a responsibility that requires significant time to take on without help of an experienced mentor.

Therefore I wholeheartedly support @RaitoBezarius‘ effort to make such a transition possible financially. Yes, this is just the beginning and will require more specification down the road. But there is enough uncontroversial work to do right now, so overall this is clearly beneficial. Any progress is great news!

Why the NixOS Foundation doesn’t take care of it? The foundation board is fully booked with more urgent responsibilities. I know first hand, because I have to pester them with all kinds of stuff for the Summer of Nix work I do on the foundation‘s behalf. All members have full time jobs or run companies, and they can’t be paid for their board membership. In this situation it’s the right thing for the community to self-organise, and we have to trust well-known people to do the right thing in absence of more formal processes.

Yes, it would be ideal if we had a dedicated person working on such things, on the foundation‘s payroll, and this is exactly what I and others proposed in the linked governance discussion, not for the first time. It would of course raise the exact same questions around trust, but they’d be a bit easier to answer with a mandate.

5 Likes

As I call in the initial post and I received proposals recently, my goal is to grow the set of administrators to a set of active nixpkgs contributors.

Ideally, we should make it clear that it is first and foremost about improving nixpkgs machinery and only about that.

I would expect that administrators who will join me (and when this whole initiative may end up under the umbrella of the Foundation, etc.) will abide by this culture because it is about getting help to help more people regarding the various areas where we have subpar investment.

Therefore, the process to decide what to spend the money on is completely grounded in the experience you derive from being a (very) active contributor in nixpkgs, i.e. involved in daily operations, you see what’s going on with staging, you see what’s going on with Hydra, OfBorg, and even GitHub itself!

We depend on a lot of external projects for our work: Zero Hydra Failure is an external project, reviewing tools for staging is an external project, bots to add “first time automation” or “approvals” tags are two external projects (which are hosted on internal infrastructure, thanks to the recent efforts of the non-critical infra team!).

Active nixpkgs contributors are also involved in the support channels, e.g. the big “Nix / NixOS” matrix channel, helping a lot of folks, we have some contributors who are extremely active there. There is a strategic need to improve our ways to help people and avoid exhausting our own contributors with re-answering the same question because we were not able to build the right platform to improve how we help folks and improve how helping folks help folks.

I hope by those examples, you can see the trend of the process to decide how to spend the money on.

When someone comes around and complains about how nixpkgs is too slow to merge things or how they are concerned that we have too many PRs, too many issues, etc.

What I hear as an active contributor is that we don’t have the right automation to select automatically reviewers for a given PR, we don’t have triaging tools (maybe external to GitHub, we don’t need to tie everything to GitHub and I support mirroring GitHub data for our own good!).

This way of performing systematic identification of root issues and attacking them as long as they are in the range would be the process I would like to erect as the “culture” for this Open Collective.

In exchange, I would like the contributors’ community to be empowered on to scrutinize and hold us accountable.

Note that direct initiatives for end-users (i.e. non contributor community) can exist also but are semi out of scope here, we believe about working for the nixpkgs contributors first because we believe this is what will achieve the maximal utility for everyone. I do not wish to substitute myself to existing efforts in documentation, learning journeys, etc. which are also very important and have another angle at looking at things.

If you have ideas on how to make this more sustainable in the long run, I am interested. I know there is a governance matter, which is non-trivial, hidden under this initiative. I am not hiding it, I want to bring it with the governance workshops we initiated at NixCon, and we should continue in the future.
We should also go deeper with questions pertaining to the relations between commercial entities and nixpkgs contributors.

I will take the opportunity to not make it only about Determinate Systems, if you will. If Flox, Determinate Systems, Cachix, Tweag or any commercial entity (list non-exhaustive does not say anything about the previous entities I cited.) would put a big bag of coins in the OC’s lap and suggest anything.

This would not change the decision-making process I established previously, people contributing to that fund should operate under the expectation this will be used in the ways that are seen fit by nixpkgs contributors, if those previous commercial entities have very active contributors and drive the discussion in those matters, that is fine by me too!

This fund does not replace contracting someone to improve their favorite toy of the day and if big commercial entities does not see the value in contributing to that fund, that is fine as well.

A more important thing I would like to bring forward in the future is the concept of sane relationship with community member in the space w.r.t. to our finite resources (cache, build and CDN, to say the big 3).

If we consider that commercial entities are part of the community, and they bring also their own community, it is important for sustainability that this initiative gets funded otherwise it would not be surprising to me that we would see volunteers trying to increasingly overstrain themselves, resulting in more and more burnouts, more friction and ultimately instability of our operations.

Some may even consider forking nixpkgs because of the resulting un-sustainability and I do not want to downplay those existential issues of our community that could result in fragmenting our own community in face of our inability to prioritize strategical issues.

I hope that commercial entities that will read me, for some — who knows me on a personal level, understand the message I am sending here: I believe you and we all gain from establishing an interface relationship between the social object called nixpkgs and investing into stabilizing the platform you are building on via this initiative.

I hope I was clear enough regarding this very important subject, don’t hesitate to reach out to me in private or publicly if you feel you have concerns you would like me to address publicly.

Furthermore, I am extremely open to all feedback, including negative one!

2 Likes

Put also another way, I do not plan to be mayor of OfBorgtown, but if we need a bootstrap mayor of OfBorgtown for a temporary lifetime until we find a strategy to get the final mayor, we can discuss this.

The problem I see is that I don’t want to put mayor of Xtown for all X that exist in nixpkgs, there’s too many and that would create complications IMHO.

I am torn and wonders every day if we should have a technical committee that could be empowered to create mayors of Xtown or be bootstrap mayors of Xtown.

I feel like this technical committee already exist in the form of persistent nixpkgs contributors who wants their opinion to count based on their experience and their persistence.

Furthermore, I do not know what is the best governance method here, I do not have that answer yet. That’s why I am not thrilled about a form of mayor of Xtown right away. I would like to organize more governance efforts to reach the point where we can discuss techniceal leadership and see how we can find a common ground on this.

Until then, the best we can have is temporary technical leadership and sometimes some project have none, I believe this is the case of OfBorg and the case for Hydra for example.

2 Likes

As the Nixpkgs Architecture Team lead, I fully support this effort! The Nix community is really struggling with a lot of problems that we can’t expect volunteers to fix, so any sort of effort to get people funded to work on these is a great step.

Focusing this on Ofborg specifically sounds great to me, since it’s a core part of the Nixpkgs automation infrastructure, saving us a ton of work. I also believe that more automation is the key to fixing Nixpkgs scaling issues and am working towards this in the Nixpkgs Architecture Team.

I can also vouch for @lilyinstarlight, she recently helped me with an odd OfBorg error and was able to quickly figure out the problem and fix it!

I’m also interested in taking on an administrative role for this to help out.

Edit: I’ll also personally contribute 50$ per month for this!

14 Likes

Ok, but I still read this as “there will be a group of volunteers, including myself, and they will decide how to spend the funds as they see fit”. Which is maybe not the worst way to manage it, but I would have loved to hear about e.g. community surveys, interviews, polls/forums/processes where community members can propose something, and so on.

Also it would be relevant how transparent the decision making process is. Will administrators just make a decision, or will someone estimate efforts and benefits, discuss these estimates before committing, and so on. I don’t want to create bureaucracy for this, but I also don’t want to have dramas like “this evil OC admin took the funds for my favourite project away”.

Let me attempt to work towards an answer. I’m not familiar with https://opencollective.com/, but it seems like one can support individual projects. So if there were not only an ofborg project, but also a, say, nixos-hardware project, I could decide whether I wanted to support those who work on ofborg or on nixos-hardware. Is this as fine grained as it gets for a community member to influence where funds go?

EDIT: Grammar, wording

1 Like

Right, but there’s no process at the moment that is dedicated or addressed to nixpkgs contributors, we have many processes for end-users, community members, etc. in many subjects. But no one is here collecting the data for nixpkgs contributors, building such a process is not totally out of scope, but is very hard. How would you do it?

Would you ask broad questions: what do you want to see? — how do you analyze this in a way that falls in the prerogatives of a “nixpkgs contributors” collective, for example: “it would be good if someone fund further the graphical installer”, this could be a valid community feedback, but this is a hard question: is the graphical installer holding nixos back for its daily operations?

In that sense, I believe that the feedback you want to provide as a nixpkgs contributor comes from a shared consciousness of what is blocking all of us (:= contributors) and as a result, all of us (:= everyone).

Right, I think there are multiple levels of decisionmaking:

  • opening new projects
  • tasking/introducing community members
  • approving “expenses plan”

I agree, I would like for the decision-making process to be transparent. I think we are still in the bootstrapping phase, so there’s a lot of “here I did this, let’s go”, but we do want to stabilize this right away.

As an administrator, the model I am thinking of is to create a venue to discuss: (a) new projects and prioritization (we don’t want to create all the projects at the same time, otherwise, we will just divide the fundraising efforts atm) (b) providing an expense plan containing necessarily exploration and unknowns (such are the things in nixpkgs, their state is unknown and requires re-investigation which should be paid as part of the work) (c) approving expense plan too

I agree I don’t want bureaucracy for this, I don’t want drama neither, and maybe it’s controversial a bit, but this initiative is direct targeted to contributors, so I would like to have feedback and inputs from contributors, sometimes active contributors as a priority, because those are the folks who are performing the daily operations. I would not discard opinion from a non-(active)-contributor, but I would not attempt to build consensus based on them, to be clear. Furthermore, I would enjoin anyone entitled to give their vision to join an active contribution role to also understand the situation.
Providing a solution to non-(active)-contributor feedback can come after we solve what I believe to be a lot of their root issues or can happen in parallel, my strategy here is to get a maximum of hanging fruits and move on to harder targets later.

Therefore, I would encourage again being strategic about how make decisions in order to avoid paralysis analysis or stuck consensus.

There could be definitely a nixos-hardware project (and honestly, it’s on my list!), though, I guess the important concept is the concept of “requirements”, certain projects maximize their funding opportunities when they are met with a certain number of requirements, e.g. privilege access, nixpkgs is ready, infra capacity is ready, etc., etc.

Someone has to come up with those requirements and analyze when it’s the right moment to launch a new project taking in account the existing ones as to not divide too much the attention and create too low stipends that will not create a big enough incentive for our community member to work on.

So here, the question would be: is it time to open a new project in the area of nixos-hardware? I believe the answer is no, as we are still figuring out a lot of stuff with this idea right now. In addition, we have lower hanging fruits for nixos-hardware that are still in reach for volunteers and people involved in the ecosystem of that repository.

How does a community member suggest a new project? I believe Discourse/Matrix is the right venue to talk about it.

In the next days/months (when I get more time in $LIFE), I would like to work on a “project proposal template” which enables us to discuss new projects in a GH issue or whatever and the idea is that it should be maximally frictionless while taking into account those subtleties. Though, even if a project has a green light, it does not mean this is the right time to post it as you can understand it. There’s also a question of scheduling and to pursue more fundraising in different forms, e.g. grants, potentially interested foundations, etc.

This is extra work that someone has to do and that’s why it may appear that everything is insufficient or imperfect, I apologize in advance. I think we ought to be… strategic (I say this too often but this is really the key) on when do we run a project, what do we fund, what do we choose, etc.

Investing in the right balance between ambition, sophistication, interesting byproducts, etc. is a task that requires, IMHO, a high level of exposure to the nixpkgs contribution ecosystem and its constellation.

This is the ambition of this Open Collective.

1 Like

Makes sense. Then the only remaining wish I have right now is that the OC has some kind of transparent, low-barrier “inbox”. For example a subforum or a thread on Discourse. There, people could come and discuss potential projects, or ask questions.

I’d assume it’s this very thread right here.

1 Like

Probably :slight_smile: some good strategical projects to consider for the future might be a lot of things CI related, like matching reviewers, code owners, and maintainers, or merging trivial PRs fast. Someone needs to write Typescript I assume, or find the right kind of CI bot, and that’s the kind of work people shy away from, because we all want to write Nix, right? :wink:

1 Like

I have been discussing and working on this on and off for the last year. :slight_smile:
I think someone may release something interesting by the end of this month possibly!

1 Like

Today, I am thrilled to introduce a new fundraising initiative that has been in the works for some months now: the “Nixpkgs Contributors” Open Collective: Nixpkgs Contributors - Open Collective … The force behind this new and exciting initiative is none other than myself, @raitobezarius. After numerous discussions with various members of our vibrant community (some of whom may prefer to remain anonymous), I’ve taken it upon myself to spearhead this effort.

I am pleased to see this move to acknowledge areas where focused, financed development would benefit the Nix ecosystem. As always, where money is involved, there is a certain amount of complexity regarding taxes, reporting and standards compliance, hence I would like to ask the following questions:

  • Which legal entity will receive the donations made via OpenCollective (and by extension, where is this legal entity based and how is it incorporated)?

  • At what frequency will financial reports be made available to the general public, and how much detail will these cover?

  • Have bookkeeping services and legal counsel already been arranged, and will these be paid for out of the Nixpkgs Contributors Open Collective fund (and if not, by whom)?

Thanks in advance for your time.

2 Likes

As you can see, this is the Open Collective provided host which will receive the donations. There’s no legal entity as the Nixpkgs Contributors are a very non-formal group of folks and I am but one representative of such a group.

I will aim for yearly, I would be interested if we could have a third party (be it a nixpkgs contributor or not) as an accountant who can review our Open Collective. This is a possible role of this initiative.

All bookkeeping is already handled by OC as our host, we only need to generate expense and approve them, for the rest, this is the person being paid who should be responsible to manage their own income tax thingie, their legal structure, etc. We pay directly individuals (or their company).

As for legal counsel, I would be curious to what you have in mind, we should have very few needs for legal counsel, so my aim is to have people with experience scrutinize our operations and raise warnings if anything could be problematic. We will also let the OC fulfill their obligations towards their tax host, e.g. US.

1 Like

Choosing to delegate all accounting and legal requirements to Open Collective is a prudent decision, and yearly reports would be perfect for the NixOS community to remain informed about the fund with. Thank you for your very swift and conclusive response!

2 Likes

What exact qualifications apply for being able to apply for funding? What does “funding” mean exactly? I like probably many others, wish we could have a job or career with Nix because of how much we enjoy it and love what it offers. Unfortunately, it seems there isn’t much of a market.

I think it would be good to see contracts between certain team members on various teams be contracted by the Nix Foundation for involvement with maintaining their respective modules and packages. There’s a lot of picky packages which require a lot of work to maintain or update so even if it isn’t a fixed pay but a contracted rate for the number of hours spent on maintenance, I think that would be beneficial. But then we come into the problem of 1) how much should people be paid that and 2) how much can the foundation provide.

I started using Nix a year ago coming from Void and Arch after a system crash caused me to loose a lot of data and NixOS was interesting enough that I picked it up. I learned how things worked and when I noticed Lens was out of date, I updated it and eventually started contributing. I’m not sure what everyone else’s story is but whatever their story is, I hope we can all continue to make NixOS and Nixpkgs a great piece of Linux technology.

3 Likes