-
-
Notifications
You must be signed in to change notification settings - Fork 14.1k
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
stdenv: Disallow output changes in installCheck #143862
stdenv: Disallow output changes in installCheck #143862
Conversation
17e5af2
to
f395531
Compare
Maybe we can chmod -w the outputs before installCheckPhase as well. What do you think ? |
@symphorien I think we should, but it's not as simple as that because we'll have to restore the permissions, as |
/marvin opt-in |
Hi! I'm an experimental bot. My goal is to guide this PR through its stages, hopefully ending with a merge. You can read up on the usage here. |
@roberth how can i test this? I tried:
There are some ofborg eval failures, any idea why that is? Sorry that I can't provide any more direct help at the moment. |
Tests contains a nested attrset of derivations. Try with
I don't think it's technically an eval failure, but rather that the eval status combines the other statuses. The You could "just" build a package, rebuilding whatever needs to rebuild. A lot. If the build works, the pr works, but I don't know if this will impact many subtly broken tests. Maybe this pr should run separately on hydra first? |
This comment was marked as spam.
This comment was marked as spam.
This needs doc for allowWriteInInstallCheck and I think this is too late for 22.05 given the feature freeze #167025 |
/status awaiting_changes |
Hi! The marvin-mk2 bot is now discontinued. I have removed the relevant tags from this PR. If you still need someone to look at it, one option would be to ask in this discourse thread. I am posting this notice to all open PRs with the |
I did the thing. If you're interested, this is continued in |
Motivation for this change
Spot installation script problems and avoid tests polluting the installation.
This will indicate errors in the install script fixed up by the
installed software, or software or configuration that relies on
a writable installation directory.
NOTE: this only works for derivations which use the installCheck phase as intended. Some language integrations, like
pythonPackages
, need to call the new functions on their own.Closes #120053
Things done
sandbox = true
set innix.conf
? (See Nix manual)NixOStest(s) if existing and applicable for the change (look inside nixos/tests)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
./result/bin/
)