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

syncplay: 1.6.4 -> 1.6.4a, and upgrade dependency from Qt4 to Qt5 #63882

Merged
merged 3 commits into from Dec 20, 2019

Conversation

solson
Copy link
Member

@solson solson commented Jun 28, 2019

Motivation for this change

It turns out Syncplay has had support for Qt5 for a while, and automatically detects whether it has access to PySide, which binds Qt4, or PySide2, which binds Qt5. By simply updating the dependencies, we can upgrade Syncplay to Qt5.

Technically the upgrade to 1.6.4a is independent, but I figured I might as well do both. If there is any reason to keep a separate Qt4 version of Syncplay around, let me know. cc @Enzime

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option 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 nix-review --run "nix-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)
  • Assured whether relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@Enzime
Copy link
Member

Enzime commented Jun 28, 2019

@ofborg build syncplay

@solson
Copy link
Member Author

solson commented Jul 3, 2019

I just noticed - I think @ofborg is the wrong username. In my other PR @GrahamcOfBorg was used and I found the docs.

@Lassulus
Copy link
Member

Lassulus commented Jul 3, 2019

@GrahamcOfBorg build

@solson
Copy link
Member Author

solson commented Jul 27, 2019

Anything I need to do to move this forward?

@Lassulus
Copy link
Member

Lassulus commented Aug 2, 2019

oh sorry,
it seems an update to 1.6.4 was already merged, so you need to rebase and change the commit message.

Syncplay automatically detects whether it has access to PySide, which
binds Qt4, or PySide2, which binds Qt5. By simply updating the
dependencies, we can upgrade Syncplay to Qt5.
@solson solson changed the title syncplay: 1.6.3 -> 1.6.4a, and upgrade dependency from Qt4 to Qt5 syncplay: 1.6.4 -> 1.6.4a, and upgrade dependency from Qt4 to Qt5 Dec 18, 2019
@solson
Copy link
Member Author

solson commented Dec 19, 2019

I've rebased and retested, all seems ok.

@Lassulus
Copy link
Member

hmm, I can't run it because of:

qt.qpa.plugin: Could not find the Qt platform plugin "xcb" in ""
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Aborted (core dumped)

@solson
Copy link
Member Author

solson commented Dec 19, 2019

I actually had the same problem, until I updated my system. I believe it's a known problem for Qt apps in general due to a mismatch between the Qt libraries you have installed in the root system vs. the ones used in an app built against nixpkgs master, but I didn't investigate deeply since updating fixed it.

@solson
Copy link
Member Author

solson commented Dec 19, 2019

Hmm, on the other hand, looking at other issues/PRs with the same error text, it looks like there is an explicit solution with either a Qt-specific mkDerivation or wrapQtAppsHook, so perhaps I should apply this fix before we merge.

Edit: There is also a wiki page about this.

@solson
Copy link
Member Author

solson commented Dec 19, 2019

I was able to reproduce the qt.qpa.plugin: Could not find the Qt platform plugin "xcb" in "" error inside a nix-shell --pure and I have pushed a fix using wrapQtAppsHook that fixes it.

@Lassulus
Copy link
Member

Ah I wanted to suggest something along these lines but hadn't any time to dig into it.
Now everything seems to run

@Lassulus Lassulus merged commit 5361b33 into NixOS:master Dec 20, 2019
@solson solson deleted the syncplay-1.6.4a branch December 20, 2019 07:09
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