Skip to content
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

Fully automate nix-update #13

Closed
2 of 4 tasks
matthewbauer opened this issue Mar 15, 2018 · 10 comments
Closed
2 of 4 tasks

Fully automate nix-update #13

matthewbauer opened this issue Mar 15, 2018 · 10 comments

Comments

@matthewbauer
Copy link
Member

matthewbauer commented Mar 15, 2018

Here's my master plan for nix-update:

  • Integrate other package updaters Integrate other package updaters #12
  • Move "nix-update" to NixOS org
  • Create a GitHub user that will author the automatic commits and pull requests (like with @GrahamcOfBorg : maybe @RyanTMOfBorg ?)
  • Setup a cron job for nix-update that could run on some shared NixOS infrastructure (maybe the same machines that OfBorg runs on?). I don't want to overload the infrastructure but "updating" is usually less intensive than "building". /cc @grahamc

This is kind of a long term goal for Nixpkgs in general. This will hopefully increase the "bus factor" in Nixpkgs.

@matthewbauer matthewbauer changed the title Full automate nix-update Fully automate nix-update Mar 15, 2018
@ryantm
Copy link
Collaborator

ryantm commented Mar 16, 2018

Right now nix-update can only update about 4% of the sample of known outdated nixpkgs, so there is a lot of room for improvement! Also, I probably should rename this project to nixpkgs-update.

@ryantm
Copy link
Collaborator

ryantm commented Mar 30, 2018

Created new GitHub user @r-ryantm.

@davidak
Copy link

davidak commented Mar 31, 2018

This is an amazing effort!

You should also think about automate all the work a maintainer does when updating a package, like testing. I see you do basic testing with executing the binary, but i think it would be good to expand the testing of builds on hydra. Then this tool can't break anything.

Also, sometimes new versions need other dependencies. That might be tricky to automate.

And yes, nixpkgs-update is a more precise name. You should rename it ASAP so it is not linked everywhere. A good oportunity to transfer to NixOS org.

@ryantm
Copy link
Collaborator

ryantm commented Mar 31, 2018

@davidak Thanks for the feedback. I've renamed this to nixpkgs-update.

Automating more maintainer work is a good idea, and some people have suggested the idea of moving the binary checks that work into the pkgs nix expressions.

Currently, I'm focusing my efforts on figuring out how to update as many packages as I can. There are still many thousands that I cannot update. After that, it might be good to work on that aspect.

@davidak
Copy link

davidak commented Mar 31, 2018

I know, i was at the last NixCon and followed the talk Test ALL the Things by @Profpatsch. I would like to look into it, but had no time yet.

@Profpatsch
Copy link

Running the tests would be done by ofborg, as I laid out in this comment on the nixpkgs tests PoC.
By structuring the maintainers list and adding github handles the first step was done, next up is annotating package derivations with tests they should pass.

I got distracted when I noticed the meta type checking logic was off, though. :D

@davidak
Copy link

davidak commented Mar 31, 2018

annotating package derivations with tests they should pass.

@Profpatsch is there documentation how one can help with that?

@ryantm
Copy link
Collaborator

ryantm commented Mar 29, 2020

nixpkgs-update automatically runs now on nix-community infrastructure

@ryantm ryantm closed this as completed Mar 29, 2020
@davidak
Copy link

davidak commented Mar 30, 2020

That's a small step for the nix community, but one giant leap for mankind.

serveimage (48)

@worldofpeace
Copy link
Contributor

@davidak Truly the future we need.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants