-
-
Notifications
You must be signed in to change notification settings - Fork 18.1k
treewide: use writableTmpDirAsHomeHook
#378110
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
Merged
Merged
Changes from all commits
Commits
Show all changes
14 commits
Select commit
Hold shift + click to select a range
62d4ca6
build-support: update `addBinToPathHook` hook
drupol ce1e95c
awscli2: use `addBinToPathHook` and `writableTmpDirAsHomeHook`
drupol e28bd60
meli: use `writableTmpDirAsHomeHook`
drupol 6e7356c
pylyzer: use `writableTmpDirAsHomeHook`
drupol 72cf3eb
shopware-cli: minor cleanup
drupol f75606e
snapcraft: use `writableTmpDirAsHomeHook`
drupol e3d1fe0
menulibre: use `writableTmpDirAsHomeHook`
drupol 57e5e28
hedgedoc: use `writableTmpDirAsHomeHook`
drupol 3f1c6f0
hatch: use `writableTmpDirAsHomeHook`
drupol 15fa6be
aws-shell: use `writableTmpDirAsHomeHook`
drupol 9322094
amp: use `writableTmpDirAsHomeHook`
drupol 6f6f573
apx: use `writableTmpDirAsHomeHook`
drupol a74cba7
podman-tui: reformat + cleanup
drupol 71cfe3b
python312Packages.accelerate: use `addBinToPathHook`, use `writableTm…
drupol File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
I find that this pattern does not work for go packages. The
writableTmpDirAsHomebash function is never called and$HOMEremains to beHOME=/homeless-shelter. Any ideas? cc @ShamrockLeeThere 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.
Have you tried recently ?
The hook was initially broken but got fixed afterwards.
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.
My test is on the master branch 8b564bb.
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 the right commit ?
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.
It works if I do one of these things:
writableTmpDirAsHomeHooktocheckInputsstrictDeps:nix-repl> :b apx.overrideAttrs { strictDeps = false; }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.
To be honest, I have no clue who to contact. Can you ping the relevant nicknames here perhaps?
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.
@NixOS/stdenv @NixOS/golang @infinisil @roberth Sorry for bothering, but does anyone know why setup hooks using
addEnvHooks "$targetOffset"don't take effect when passing tobuildGoModule?Uh oh!
There was an error while loading. Please reload this page.
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.
@NickCao told me how setup hooks work and why this issue happens only for go packages here. Thank you, @NickCao .
The following patch fixes it:
Here is the explanation. Assume
writableTmpDirAsHomeHookis added tonativeBuildInputs(ornativeCheckInputs). IfhostOffsetis used, the bash functionwritableTmpDirAsHomeis run against each dependency indepsBuildBuild depsBuildHost(nativeBuildInputs) depsBuildTarget. IftargetOffsetis used, it is run against each dependency indepsHostHost depsHostTarget(buildInputs). Go packages usually have no dependencies indepsHostHost depsHostTarget(buildInputs), so the bash functionwritableTmpDirAsHomeis never run and we observe this issue. Since we assumewritableTmpDirAsHomeHookis added tonativeBuildInputs, there is at least one dependency (the hook itself) indepsBuildBuild depsBuildHost(nativeBuildInputs) depsBuildTarget. As a result, the bash functionwritableTmpDirAsHomewill always run whenhostOffsetis used.The implementation of addEnvHooks may be helpful.
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.
Fixed in: #378927
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.
Thank you for making the investigation, very interesting !!!