-
-
Notifications
You must be signed in to change notification settings - Fork 15.4k
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
Use qt5's mkDerivation in packages that otherwise crash #84673
Conversation
This pull request has been mentioned on NixOS Discourse. There might be relevant details there: |
a29bdbb
to
ce1ae1f
Compare
ce1ae1f
to
c19b692
Compare
@das-g thank you for your attention! I've dropped |
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.
👍 Change LGTM
👍 Commits LGTM
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.
bomi
does a conditional wrapProgram
which will prevent it from being wrapped.
And that's because wrapQtAppsHook
only wraps ELF
, so it won't double wrap a script.
Other packages that have this problem are:
ipe
awesomebump
The part around here in the manual should be useful to you https://nixos.org/nixpkgs/manual/#qt-default-nix-co-3 |
c19b692
to
1d9b9f2
Compare
@worldofpeace good point! In all three cases the hook ended up wrapping the .foo-wrapped binary so things worked out somewhat fine. Nevertheless having multiple levels of wrappers is ugly so I added
|
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.
This LGTM. But there's no way I could even test this manually. Perhaps our other reviewer did this.
Me? I didn't test anything, I only looked at the diff and commit messages. I could run The functionality of the build results I can't really test either, as I don't know the packaged applications. Maybe ping the respective package maintainers? |
I still think Qt's |
@jtojnar I personally don't see much benefit in telling people to commit to something that isn't a committed practice, when it's mentioned in detail in our official documentation. @mmilata Can you rebase? |
Wrap Qt program manually, remove makeWrapper from nativeBuildInputs.
Wrap Qt program manually, remove makeWrapper from nativeBuildInputs.
1d9b9f2
to
d5b14e5
Compare
@worldofpeace rebased |
I've backported this to 20.03, but I've yet to do it for 19.09 because there's conflicts. |
Did the 19.09 in #85805 - gonna try building it now. |
Just to have it on the record, copying my rant from IRC:
but since you already did the work and we do not want to make you redo it, I agreed with merging this for now:
|
Yep, thank you so much @mmilata for taking initiative to get these last fixes, I know people will appreciate it. |
No need to merge this just to not upset me, I'm not too invested, just wanted to see if it's possible to fix some of the broken packages using a simple script:) Anyway, #85805 built for me - had to drop |
This attempts to fix several Qt applications that crash on startup with:
A crude script was used to find packages that:
libsForQt5.callPackage
fromtop-level/all-packages.nix
, andstdenv.mkDerivation
, butbroken
nor do they refer towrapQtAppsHook
, andThis was followed with manual steps:
mkDerivation
from argument list instead ofstdenv
, andMotivation for this change
#65399
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)Result of
nixpkgs-review pr 84673
13 package marked as broken and skipped:
34 package built: