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

Migrate from qt4 to qt5 [WIP] #33239

Closed
wants to merge 8 commits into from

Conversation

@peterhoeg
Copy link
Member

commented Dec 31, 2017

Motivation for this change

Qt4 is deprecated.

Mixxx can simply be recompiled for Qt5.
OpenMW is also updated from 0.42.0 to 0.43.0 with a slightly newer openscenegraph.
Vanilla openscenegraph is updated from 3.4.0 -> 3.4.1

If you guys think they should be split up into multiple different PRs for the sake of not changing too many things at the same time, let me know.

Cc: @abbradar @aszlig @cillianderoiste @7c6f434c

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
  • 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 nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

@yegortimoshenko

This comment has been minimized.

Copy link
Member

commented Dec 31, 2017

I would like to take on some Qt4 apps too. List of files mentioning Qt4: [truncated, moved to #33248]

@yegortimoshenko

This comment has been minimized.

Copy link
Member

commented Dec 31, 2017

223 total.

I think we already have Qt5 version of VLC in libsForQt5.vlc attribute, but we might want to drop Qt4 version.

pkgs/tools/inputmethods/* will all be dropped when Qt4 is removed entirely, and will also remove Qt4 from closure of everyone who uses non-alphabetic writing systems.

LibreOffice will probably land Qt5 in February: https://www.phoronix.com/scan.php?page=news_item&px=LibreOffice-VCL-Qt5

@orivej

This comment has been minimized.

Copy link
Contributor

commented Dec 31, 2017

It is fine to build applications that support Qt 5 with Qt 5, but is there any reason to stop building applications with Qt 4 that don't (e.g. i7z)? Qt 4 works well and is not going to be removed in any near future.

@adisbladis

This comment has been minimized.

Copy link
Member

commented Dec 31, 2017

@yegortimoshenko Wouldnt it be better to create a tracking issue with that list? I doubt that all of those packages will be handled by this PR.

@orivej I agree with you. I think it may be worth revisiting that question once there are only a few packages depending on Qt4 but for now I don't see any reason to drop Qt4 from packages not supporting Qt5.

@orivej

This comment has been minimized.

Copy link
Contributor

commented Dec 31, 2017

@peterhoeg The fork of qjoypad that you have found is pretty good, but its UI is a bit deficient compared to its qt4 ancestor. I'd like these pull requests to be merged before we switch: panzi/qjoypad#17 and panzi/qjoypad#18.

@7c6f434c

This comment has been minimized.

Copy link
Member

commented Dec 31, 2017

Sounds reasonable for xxdiff, for openscenegraph I am not sure whether flightgear or speed_dreams care about Qt support in the library. Hopefully they use as much as openmw, though.

@yegortimoshenko yegortimoshenko referenced this pull request Dec 31, 2017
47 of 223 tasks complete
@yegortimoshenko

This comment has been minimized.

Copy link
Member

commented Dec 31, 2017

@orivej: i7z-gui segfaults for me, so I too think we should drop it, if it doesn't work for anyone:

$ i7z-gui
i7z DEBUG: i7z version: svn-r77-(20-Nov-2011)
i7z DEBUG: Found Intel Processor
i7z DEBUG:    Stepping 7
i7z DEBUG:    Model a
i7z DEBUG:    Family 6
i7z DEBUG:    Processor Type 0
i7z DEBUG:    Extended Model 2
i7z DEBUG: msr = Model Specific Register
segmentation fault

But in other cases, patching application to support Qt5 is preferable.

@adisbladis

This comment has been minimized.

Copy link
Member

commented Dec 31, 2017

@yegortimoshenko Works fine for me.

@orivej

This comment has been minimized.

Copy link
Contributor

commented Dec 31, 2017

Works for me too. It must be run as root, but when it isn't it doesn't segfault, it prints:

i7z DEBUG: i7z version: svn-r77-(20-Nov-2011)
i7z DEBUG: Found Intel Processor
i7z DEBUG:    Stepping 3
i7z DEBUG:    Model e
i7z DEBUG:    Family 6
i7z DEBUG:    Processor Type 0
i7z DEBUG:    Extended Model 4
i7z DEBUG: msr = Model Specific Register
i7z DEBUG: Unknown processor, not exactly based on Nehalem, Sandy bridge or Ivy Bridge
i7z DEBUG: msr device files exist /dev/cpu/*/msr
i7z DEBUG: You DONOT have write permissions to msr device files
i7z DEBUG: A solution is to run this program as root
@yegortimoshenko

This comment has been minimized.

Copy link
Member

commented Dec 31, 2017

Interesting, i7z doesn't segfault for me (output identical to #33239 (comment)) but i7z-gui does.

@peterhoeg peterhoeg force-pushed the peterhoeg:f/qt4to5 branch to a7797b3 Jan 1, 2018
@peterhoeg peterhoeg referenced this pull request Apr 19, 2018
4 of 8 tasks complete
@nixos-discourse

This comment has been minimized.

Copy link

commented Feb 13, 2019

This pull request has been mentioned on Nix community. There might be relevant details there:

https://discourse.nixos.org/t/bump-openmw-0-44-0-and-ported-to-qt5/2121/1

@geekware geekware referenced this pull request Feb 14, 2019
2 of 10 tasks complete
@geekware geekware referenced this pull request Mar 30, 2019
2 of 10 tasks complete
@mmahut

This comment has been minimized.

Copy link
Member

commented Aug 20, 2019

Are there any updates on this pull request, please?

@peterhoeg

This comment has been minimized.

Copy link
Member Author

commented Aug 26, 2019

No longer relevant.

@peterhoeg peterhoeg closed this Aug 26, 2019
@peterhoeg peterhoeg deleted the peterhoeg:f/qt4to5 branch Aug 26, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
10 participants
You can’t perform that action at this time.