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
gonic: init at 0.11.0 #96569
gonic: init at 0.11.0 #96569
Conversation
''; | ||
|
||
passthru.updateScript = writers.writeDash "update-gonic" '' | ||
${vgo2nix}/bin/vgo2nix \ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ideally, updateScript
should also find the latest version and update the hash in the source file.
genericUpdater
might help #85304 (comment)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this documented somewhere? I can’t find anything. It’s only used in a few places.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not yet, outside of the comment I linked.
You would use something like:
passthru.updateScript = writers.writeDash "update-gonic" ''
${pkgs.genericUpdater {
inherit pname version;
versionLister = "${pkgs.common-updater-scripts}/bin/list-git-tags ${lib.escapeShellArg sr.meta.homepage}";
}}
${vgo2nix}/bin/vgo2nix …
'';
But that would not be enough if the rev
needs to be updated too.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cool, once it’s documented I will take a look.
meta = { | ||
homepage = "https://github.com/sentriz/gonic"; | ||
description = "Music streaming server / subsonic server API implementation"; | ||
license = lib.licenses.gpl3; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
gpl3
is unclear, use gpl3Plus
or gpl3Only
. See https://discourse.nixos.org/t/lib-licenses-gpl3-co-are-now-deprecated/8206 for more details.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hm, why is this not an automatic lint in the meta checker?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IIRC it would break evaluation of PRs if we enforced it in meta checker.
let | ||
# update these, then run `updateScript` to update dependencies | ||
version = "0.11.0"; | ||
rev = "056fb54a703ef5b5194ce112cbbdd8fb53dbb1ea"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not use "v${version}"
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tags are unstable.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you add a comment mentioning it then? Though it would be nicer to convince upstream to treat tags as immutable once created.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Huh, the version tag is right above it. It’s a problem with git(hub), not with upstream.
Gonic is an implementation of the subsonic server and protocol.
@GrahamcOfBorg build gonic |
Merging, looks like the darwin builders are down. It should work just as well on darwin in principle. |
|
||
in | ||
buildGoPackage { | ||
pname = "gonic-${version}"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
$ nix-instantiate --eval --strict -A gonic.name
"gonic-0.11.0-0.11.0"
Gonic is an implementation of the subsonic server and protocol.
Motivation for this change
Things done
sandbox
innix.conf
on non-NixOS linux)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
./result/bin/
)nix path-info -S
before and after)