-
-
Notifications
You must be signed in to change notification settings - Fork 13.9k
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
Deprecate explicit setting of phases = [...]
#28910
Comments
Or maybe just document to not forget about fixupPhase? |
I'm very in favour of this! |
As an author of `osmctools` expression I want to note that at least some
of those uses are legit.
I agree that adding `fixupPhase` there (or pretty much to any expression
lacking it) wouldn't hurt.
But I think that explicitly disabling all the phases when you don't want
them is a pain in the ass (and would require a lot of maintenance when
stdenv adds a phase).
I'd prefer a solution where hooks and `fixupPhase` are not "phases" but
some special things you are not supposed to touch. To me they seem to be
more of "prePhases" and "postPhases" things than "phases".
|
If touching phases directly is deprecated, how would you go about reordering phases without manually touching the phases attribute? I'm thinking of things like python where checkInstall does tests before the installation phase, but a test requiring calling of an exucution a shell command generated (and wrapped) in the install phase that isn't created until after the install phase? |
Not doable for 18.09. |
- Use `autoPatchelfHook` - Don't explicitly set phases - Part of NixOS#28910 - Correct `version` by hoisting out the suffix
- Use `autoPatchelfHook` - Don't explicitly set phases - Part of #28910 - Correct `version` by hoisting out the suffix
- Use `autoPatchelfHook` - Don't explicitly set phases - Part of NixOS#28910 - Correct `version` by hoisting out the suffix (cherry picked from commit 02e9d06)
Doing stuff like
phases = [ "unpackPhase" "buildPhase" "installPhase" ];
is a bad idea, because:fixupPhase
are almost always forgotten, leading to things like:patchelf --shrink-rpath
autoreconfHook
which appends topreConfigurePhases
)We should either undocument
phases
or at least write that it's a bad idea, and replace all the following with properdontBuild
etc. flags:The text was updated successfully, but these errors were encountered: