gort818 / qtwebflix

A qt webengine program for netflix
GNU General Public License v3.0
245 stars 29 forks source link

Not working with Arch Linux without command line options #19

Closed arcenik closed 6 years ago

arcenik commented 6 years ago

Hello,

I've just installed qtwebflix using AUR package but I can't play any video.

The error displayed is the follow

We cannot find all the required components to play Netflix on this device. Please visit chrome://components, locate the WidevineCdm component, and click the "Check for update" button.
Error Code: M7702-1003

And in the terminal I see

$ qtwebflix
[0420/100822.307726:WARNING:stack_trace_posix.cc(648)] Failed to open file: /home/xxx/#894872 (deleted)
  Error: No such file or directory
"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) QtWebEngine/5.10.1 Chrome/61.0.3163.140 Safari/537.36"
false
Netflix Player detected! Injecting Netflix 1080p Unlocker...
[10495:10510:0420/100825.676467:ERROR:service_manager.cc(156)] Connection InterfaceProviderSpec prevented service: content_plugin from binding interface: memory_instrumentation::mojom::Coordinator exposed by: content_browser

The versions and context :

arcenik commented 6 years ago

Update,

When passing the register-pepper-plugins option it is working and displaying 1080p content.

qtwebflix --register-pepper-plugins="/usr/lib/qt/plugins/ppapi/libwidevinecdmadapter.so; application/x-ppapi-widevine-cdm"

But the magic parameter is found only in the source README.md file which is not provided in the AUR package. A man page and/or --help option would be very welcome.

Thanks.

gort818 commented 6 years ago

Thanks for the issue, the command line option is included in the .desktop file.

Do you have chromium installed, if so there is an issue as qtwebengine looks there first for the widevine libs this is a known bug in qtwebengine.

Are you running from the command line?

Yes you are right a man page or help option would be great.

arcenik commented 6 years ago

Hi,

I do have chromium installed:

$ pacman -Q chromium
chromium 66.0.3359.117-1

And using i3wm, I do not see any desktop icons.

Instead of the desktop file, default options should reside in a file like /etc/qtwebflix.conf

gort818 commented 6 years ago

From qt docs:

Except for the Adobe Flash Player plugin, the plugins must be loaded manually using the Chromium command line syntax with the --register-pepper-plugins argument.

Unfortunately that is not possible, probably the easiest solution is to make an alias for qtwebflix if you are running from the command line .

arcenik commented 6 years ago

Is it not a typical use-case for a wrapper ?

owenthewizard commented 6 years ago

Worth noting I put the libraries in /usr/lib/qt/plugins/ppapi/ and didn't need to the --register-pepper-plugins stuff.

gort818 commented 6 years ago

@owenthewizard yes that is where they should be, but unfortunately if you have chromium installed it only checks in /usr/lib/chromium so in that case you need to override it with --register-pepper-plugins. I read it might be fixed in Qt 5.11 , it should default to /usr/lib/qt/plugins/ppapi/.

@arcenik I am not sure if that would be a typical case, but I could have another program just create a process to call qtwebflix with the command line options.. or the package could just create a system wide alias.

omni6 commented 6 years ago

or the package could just create a system wide alias.

For which shell? zsh, fish, bash ... instead of starting qtwebflix it is possible to start a shell script with the command line option inside, overdone?

Imho, when installing the recommended arch way (git clone - makepkg) the .desktop file will be downloaded, when one inspect the package he will find the right command to start. I3, bspwm and so on users on arch (DIY) are known as advanced users, they should be capable to figure this out.

--help option sounds good

gort818 commented 6 years ago

@omni6 I see what you are saying, I wonder how ubuntu does it, for vim it seems to set an alias for vi system wide.I could be mistaken.

A shell script would work but the only ones who would need it would be users with a tiling window manager and also have chromium installed.

Well to start I will add a help command-line option.

gort818 commented 6 years ago

Added a help option that show the command to load widevine libs, hopefully the issue will be fixed upstream so we don't have to worry about this.

gort818 commented 6 years ago

Ok my fix made everything more complicated so I removed it.

Maybe a man page is the way to go or just wait until it gets fixed upstream. Or just redo the readme.

What are your thoughts @omni6 ?

omni6 commented 6 years ago

I think in the most cases everything works fine. Special informations should be / are available on github. For a manpage there are too less options to be worth to write it. My 2 cents...