Skip to content
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

20.09: pythonPackages: use latest qt version instead of 5.14 #100428

Merged
merged 44 commits into from Oct 14, 2020

Conversation

FRidh
Copy link
Member

@FRidh FRidh commented Oct 13, 2020

Motivation for this change
Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

doronbehar and others added 30 commits October 13, 2020 18:56
In NixOS@3fafb02
the Qt version used by Qutebrowser was downgraded from 5.15 to 5.14.
Let's be consistent by also setting qt514 and including a comment so one
can trace why it is used.

(Note that downgrade gave it the same Qt version as used by the Python
packages set at the time, so in principle the override could be
removed.)

(cherry picked from commit 4bccbd9)
Since we now use qt5.15 in all python modules (defaulting to the same
qt5 used in all-packages.nix), That patch is not required, but it will
be needed if qt5.14 is used if pythonInterpreters is overridden, which
is likely to happen like it happend to qutebrowser for instance. See:
NixOS@2667af4

(cherry picked from commit 15bfdf8)
Bonus: Set `makeWrapperArgs` instead of calling `wrapQtApp` - to prevent
double wrapping.

(cherry picked from commit 198e025)
(cherry picked from commit 5cbf0c1)
Since now Python packages use qt5.15, this should too.

(cherry picked from commit f3e5c93)
Remove included upstream patches. Use qt5.15 (NixOS#99956). Spare double
wrapping by using `makeWrapperArgs+=()`.

(cherry picked from commit 2edd4ed)
Add an optional withGui flag to turn off gui as most of the time it's
not needed since this is a python library.

Use a GitHub tarball to optionally enable tests, currently disabled by
default, but next release' tests should pass (tested the beta release
tag).

Wrap qt apps properly, without double wrapping, if gui is enabled.

(cherry picked from commit 36b7e89)
Since Python's pyqt5 is using qt5.15, it should use the same version as
well.

(cherry picked from commit 56d047f)
The same as used by pyqt5 (NixOS#99956).

Also: Fix double wrapping.
(cherry picked from commit bc0113e)
Don't mix qt5.14 and pyqt5 which uses qt5.15 (NixOS#99956).

(cherry picked from commit 16c2b3c)
Bonus: Spare double wrapping.
(cherry picked from commit 3d8267e)
Don't double wrap executables.

(cherry picked from commit 62738d4)
Wrap application with wrapQtAppsHook and no double wrapping.

(cherry picked from commit f4b8c8f)
(cherry picked from commit 883b21d)
FRidh and others added 6 commits October 13, 2020 18:56
(cherry picked from commit b9af2d2)
For security reasons [1] we upgrade to the latest Qt, despite this
breaking a feature, which is why 5.14 was forced earlier.

[1] NixOS#99456 (comment)

(cherry picked from commit 902c567)
(cherry picked from commit 5d4117b)
(cherry picked from commit c0d5cf4)
Update many dependencies. Add a patch that fixes a build. Use
`libsForQt5` instead of `libsForQt514`.

(cherry picked from commit dfcde03)
They do depend on qt5, and putting them in top level scope could cause
qt5 incompatibilities errors.

(cherry picked from commit 6b6f680)
@FRidh FRidh requested a review from doronbehar October 13, 2020 17:06
@doronbehar
Copy link
Contributor

Did you exclude any commits?

@FRidh
Copy link
Member Author

FRidh commented Oct 13, 2020

Nope. The last two shown here needed some fixing, and the first one from the original PR is the third last here.

@FRidh
Copy link
Member Author

FRidh commented Oct 13, 2020

I have tested several applications, definitely not all of them. This at least fixes the ones that were failing for me.

@doronbehar
Copy link
Contributor

I too think no commits should be excluded.

@FRidh
Copy link
Member Author

FRidh commented Oct 13, 2020

attribute 'kidentitymanagement' missing, at /var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/mr-est/packet-spot-eval-3/pkgs/top-level/all-packages.nix:21501:70

@jonringer
Copy link
Contributor

jonringer commented Oct 13, 2020

@FRidh not all the applications are exposed correctly, since the 20.09 kde merge has to deviate from master

EDIT: example #99139

@jonringer
Copy link
Contributor

jonringer commented Oct 13, 2020

cc @ttuegel

@FRidh
Copy link
Member Author

FRidh commented Oct 14, 2020

Something is of here with ofborg/actions. Everything succeeded, but it hasn't received the signal to pass the "Wait for ofborg" job.

@doronbehar
Copy link
Contributor

Noticed that on other PRs. Could be fixed with #100269 ?

@FRidh
Copy link
Member Author

FRidh commented Oct 14, 2020

Thanks. Then this goes in.

@FRidh FRidh merged commit ad0d203 into NixOS:release-20.09 Oct 14, 2020
@FRidh FRidh deleted the qt branch October 14, 2020 19:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants