various: remove by-name overrides (part 2)#483689
Conversation
|
I once heard an objection to this kind of changes that sounds similarly to this: "If someone has (e.g in the case of I think the above is a small price to pay, but is this a consensus? |
|
I'm aware that that objection has been made in the past. (See also #469771, where Aleksanaa noted that others have made that objection, but where no objection was made.) My opinion is:
|
|
Also the error is actually pretty decent: > nix-build -I nixpkgs=. --expr 'with (import <nixpkgs> {}); sile.override { lua = lua5_4; }'
error:
… while calling a functor (an attribute set with a '__functor' attribute)
at «string»:1:29:
1| with (import <nixpkgs> {}); sile.override { lua = lua5_4; }
| ^
… while calling a functor (an attribute set with a '__functor' attribute)
at /home/m/nixpkgs/lib/customisation.nix:194:20:
193| */
194| newArgs: makeOverridable f (overrideWith newArgs)
| ^
195| );
(stack trace truncated; use '--show-trace' to show the full, detailed trace)
error: function 'anonymous lambda' called with unexpected argument 'lua'
at /home/m/nixpkgs/pkgs/by-name/si/sile/package.nix:1:1:
1| {
| ^
2| lib,
Did you mean lib? |
|
Good enough IMO. |
|
A bigger problem with Lua is that the interface stops making sense in some cases (LuaJIT is not a Lua 5.4 implementation, but a package might accept either as Lua). Although for many pins the pin is there exactly because you need an implementation of a specific version's behaviour. (Here, for example, RenPy change is absolutely a sacrifice of semantics in the name of a minor refactoring) |
These are all taken from #474456. My hope is that this PR is easier to review, and contains fewer (or no!) objectionable changes.
Things done