-
-
Notifications
You must be signed in to change notification settings - Fork 14.5k
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
treewide: split name into pname/version for unstable packages #88023
Conversation
This may not be the best place to ask but something I've wondered for a while - why does the |
Actually I think there was a consensus (maybe not?) before that the |
That's not what the documentation says, it only says the And AFAIK there is no consensus yet (as confirmed by @jtojnar on IRC).
Currently, there are at least 3 options being discussed: a) My intention with this change is to untangle If there is a strong opposition against b) option in this PR, I will rework it to be in a) format. I am fine with both options, honestly. |
I vote for option |
Force pushed and used option a) instead of option b) as per comment above. |
I dislike including My preferred option would be as @eadwu said, just dropping the |
Well, it's kind of unclear. First it says:
So it seems reasonable to assume that when it later refers to "the name", the "(excluding the version part)" is implied, i.e. it's referring to what we'd now call
If "the name" was meant to refer to the entire However I agree with @eadwu and @emilazy that ideally the unstable-ness could be indicated in some other way, so that the Another reason not to use option b) is that the docs specifically say:
|
I think the reason for having it in the first place is to differentiate between unstable and stable packages when using |
That would be great however also a quite invasive break that also needs support in nix-env, so I would not do this right now. |
Beeing consistent with nix builtins also means that tools/services that evaluate nix will show versions the same way the user sees it in the code, i.e. https://repology.org, nixpkgs-review or https://lazamar.co.uk/nix-versions/ |
It seems there are good reasons to stick with a) for now until a better mechanism is invented. Once this is merged, I'll send a followup PR which moves the |
The issue with having it in To repeat myself from #86430 (comment), I think we should stop using |
There are also a fair number of packages which use
These should probably be cleaned up at some point too. There may also be some packages which use |
The problem arises if upstream uses the same format to specify versions and we have no |
What is the alternative? |
Split the name into pname in every derivation packaging a software project and use |
I was kind of hoping the new To me, including |
Come to think of it, is the behaviour where It seems to me that usually if a package has moved to an unstable version it's for good reason, and we'd want users to be running that version. There's a distinction between "unstable package you don't want to install yet" and "package that uses an unstable revision as a base", and it seems like the former belongs more in the domain of "what nixpkgs branch you run" rather than "what version of a package you have installed". To be clear, this is an argument for removing the |
The problem is however that we have both unstable/stable packages for some packages. In that case |
I am closing this. When there is a consensus how to do this, we can revisit. |
Motivation for this change
A little step forwards to untangle the unstable versioning mess.
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)