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

qutebrowser: 1.6.3 -> 1.7.0 #65150

Closed
wants to merge 1 commit into from
Closed

Conversation

magnetophon
Copy link
Member

@magnetophon magnetophon commented Jul 20, 2019

pdfjs: 1.10.100 -> 2.1.266

Motivation for this change
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)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

Sorry, something went wrong.

pdfjs: 1.10.100 -> 2.1.266
@rnhmjoj
Copy link
Contributor

rnhmjoj commented Jul 20, 2019

Can you include a fix for #64984?

@magnetophon
Copy link
Member Author

@rnhmjoj I can't reproduce that. Works for me, I'm typing this in 1.7.0! ;)

@mmahut
Copy link
Member

mmahut commented Jul 20, 2019

@GrahamcOfBorg build qutebrowser

@mmahut
Copy link
Member

mmahut commented Jul 20, 2019

Fails to run after build.

Fatal error: PyQt5.QtQml is required to run qutebrowser but could not be imported! Maybe it's not installed?

The error encountered was:
No module named 'PyQt5.QtQml'

@magnetophon
Copy link
Member Author

That's odd. Any idea how I can reproduce it?

@mmahut
Copy link
Member

mmahut commented Jul 20, 2019

Try to build it with nix-review.

@worldofpeace
Copy link
Contributor

You need to add wrapQtAppsHook to nativeBuildInputs.

@magnetophon
Copy link
Member Author

@mmahut Thanks, I didn't know about that tool.
The help has led me to stumble on nix-review pr 65150, and now I'm in a nix-shell, and I don't know how to continue...

@rnhmjoj
Copy link
Contributor

rnhmjoj commented Jul 20, 2019

@magnetophon any Qt application that uses plugins needs to load these at runtime. It will look for plugins in some fixed path or following an env variable. So, qutebrowser will not run in a (pure) nix-shell or from result/bin/qutebrowser without being wrapped. If it does it's probably because it picked up impurities from your profile, because you have qutebrowser installed.

I think (I have not tried it yet) wrapQtAppsHook automatically set QT_PLUGIN_PATH and QML2_IMPORT_PATH so you don't have to specify all the plugins (see bbefa95).

@magnetophon
Copy link
Member Author

@rnhmjoj Thanks, but that's the part I got from @worldofpeace already.
What I still don't know is how to test it.

@mmahut
Copy link
Member

mmahut commented Jul 21, 2019

@mmahut Thanks, I didn't know about that tool.
The help has led me to stumble on nix-review pr 65150, and now I'm in a nix-shell, and I don't know how to continue...

Look around the shell, you will see a result symlink where you will find the binary, just run it from there.

@magnetophon
Copy link
Member Author

I added wrapQtAppsHook to nativeBuildInput, ran nix-review wip -p qutebrowser in this branch and got the same error.
Am I doing it right?

@rnhmjoj
Copy link
Contributor

rnhmjoj commented Jul 23, 2019

I think the python wrapper is possibly intefering with the hook. I'll look into it

@worldofpeace
Copy link
Contributor

probably need #56354

@FRidh
Copy link
Member

FRidh commented Jul 24, 2019

Yes, we need to get the new pyqt5 in.

@FRidh
Copy link
Member

FRidh commented Jul 25, 2019

#64720 (comment) blocks scripts from being wrapped.

@emmanuelrosa
Copy link
Contributor

emmanuelrosa commented Jul 27, 2019

Adding wrapQtAppsHook only address plugins, such as xcb, not loading. It does not address the missing PyQt5.QtQml module. According to a working build of qutebrowser, that module is actually missing from PyQt5. This can be seen by comparing the PyQt5 referenced by working and non-working builds of qutebrowser. In the working build you'll see the files QtQml.pyi and QtQml.so in `/nix/store/PyQt/lib/python*/site-packages/PyQt5/. In the non-working build those two files will not be present. In fact, I recall seeing other missing files, such as QtWebEngine.

@FRidh
Copy link
Member

FRidh commented Aug 3, 2019

Let's try again after #65836 is in.

@magnetophon magnetophon deleted the qutebrowser branch July 26, 2020 11:56
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

6 participants