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
Qt: purify plugin paths, unify Linux and Darwin builders #25285
Conversation
Some package(s) refer to kwin service types by the wrong names. I would prefer to patch those packages, but I cannot find them!
libkscreen provides all available kscreen backends, so there is no reason to search the environment for plugins.
The default installation path for QPA plugins is appended to QT_QPA_PLATFORM_PLUGIN_PATH, making it unnecessary to wrap some applications and preventing applications from loading platform plugins from the wrong Qt version.
This option does not require a patch; it can be enabled through NIX_CFLAGS_COMPILE.
Qt is configure with `-openssl-linked` which causes the library paths to be resolved at build time and added to RPATH.
Qt is configured with `-dbus-linked` which causes the library paths to be resolved at compile time and added to RPATH.
@ttuegel, thanks for your PR! By analyzing the history of the files in this pull request, we identified @bjornfor, @periklis and @copumpkin to be potential reviewers. |
I don't actually use qt at all; my only work on it was during the LLVM 4 stdenv upgrade, which broke qt, so I fixed it. @periklis seemed to be pretty interested though. |
-QMAKE_INCDIR_OPENGL = | ||
-QMAKE_LIBDIR_OPENGL = | ||
+QMAKE_INCDIR_OPENGL = @mesa_inc@/include | ||
+QMAKE_LIBDIR_OPENGL = @mesa_lib@/lib |
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 should be included in qt5/5.8/qtbase/default.nix L94 for the mac mkspec, too. I suspect these are the missing dependencies for building qtwebkit on mac, because of the "missing OpenGL" errors i see.
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'm not sure what libGL should be used on macs.
@ttuegel Thx for the great work, i'll put this PR on a jobset to test it on darwin. |
@ericsagnes For the moment, we can set In the longer-term, I am working on some changes to our Qt packages for better integration with the user environment. That includes reverting 6169bd9 (or at least, bringing back something like what we had before). Sorry for the churn! |
PR NixOS#25285 removed the auto-detection of qt plugins from NIX_PROFILE, explicitly declaring QT_PLUGIN_PATH in the module solve the problem
@ttuegel Thanks! |
Motivation
Testing
(nix.useSandbox on NixOS,
or option
build-use-sandbox
innix.conf
on non-NixOS)
nix-shell -p nox --run "nox-review wip"
./result/bin/
)I have no ability to test these changes on Darwin. If I recall correctly, @copumpkin and @acowley have worked on Qt-on-Darwin in the past; could you take a look?