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

Integrate other package updaters #12

Open
3 tasks
matthewbauer opened this issue Mar 15, 2018 · 7 comments
Open
3 tasks

Integrate other package updaters #12

matthewbauer opened this issue Mar 15, 2018 · 7 comments

Comments

@matthewbauer
Copy link
Member

matthewbauer commented Mar 15, 2018

It would be really cool if we could integrate a few other package updaters into nix-update. We have a couple of different manual package updaters being run regularly. Usually people are good at doing this regularly but it definitely increases Nixpkgs' bus factor. Automating this process through nix-update could be very helpful. Here's my initial list along with the maintainers:

Some other packages also have "update.nix" that might be possible to use. This was initially done by @garbas "update script" but I'm not sure if it's still actively being maintained.

@garbas
Copy link

garbas commented Mar 17, 2018

@matthewbauer please remove update.nix if you are able to migrate those packages that use it. having one way to do things can only be a good thing.

@jtojnar
Copy link
Collaborator

jtojnar commented Mar 30, 2018

We are using update.nix extensively for GNOME package set. I migrated to it from a custom shell script that we used previously, and added some fixes to it.

Another update system is updateWalker not sure how maintained is that.

@matthewbauer
Copy link
Member Author

updateWalker looks promising. I'm experimenting with running it in Travis as a cron job.

Also for update.nix stuff, is there any way to pass a description of what's been changed? Something that could go in a commit and PR message hopefully. I guess we could do something like "$attr: $oldVersion -> $newVersion" for each attribute- not sure if all updaters will change the version though.

@jtojnar
Copy link
Collaborator

jtojnar commented Mar 30, 2018

Unfortunately, update.nix is quite limited. It does not even know if the package was updated at all. Single updateScript to take care of everything is nice helper for manual updates but does not really fit into more automatic workflows.

I was thinking about adding simple signalling through exit statuses and maybe some structured output but that would just be cumbersome.

Ideal solution would be multiple scripts directed by update.nix, each taking care of a separate phase – fetch versions, choose a version based on a stability criteria, obtain a changelog, fetch source, update an expression. If I recall correctly, that is what updateWalker does. Maybe we could brush it up (it felt somewhat antiquated to me, last time I looked into it).

Edit: update.nix supports creating commits now.

@blaggacao
Copy link

Does this NixOS/nixpkgs#100772 give testimony of an effective inclusion of passthru.updateScript?

This update was made based on information from passthru.updateScript.

@jonringer
Copy link
Contributor

initial support was given in #205

@Atemu
Copy link

Atemu commented Nov 2, 2022

This can be closed right?

As soon as the updaters wire themselves up into passthru.updateScript, they should "just work" with nixpkgs-update.
That'd make the last leap a Nixpkgs issue.

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

No branches or pull requests

7 participants