balena-io-experimental / balena-wpe

Fullscreen WebKit browser with hardware accelerated CSS, WebGL, and HTML5 video for the RaspberryPi 3.
Apache License 2.0
380 stars 77 forks source link

Project not working on raspberry pi 4 #58

Open floion opened 5 years ago

floion commented 5 years ago

The rpi4 firmware support for the bcm closed source opengl drivers has been discontinued and now only using the kms driver is supported on pi4 (by using the vc4-kms-v3d overlay). This means this wpe project needs to be recompiled against the open source gl libs. So the backend will probably need to change to fdo here: https://github.com/balena-io-projects/balena-wpe/blob/master/base-image/meta-resin-wpe/conf/samples/local.conf.sample#L35 and also https://github.com/balena-io-projects/balena-wpe/blob/master/base-image/meta-resin-wpe/conf/samples/local.conf.sample#L36 needs to be removed. And for using the new base image compiled with the above changes, we will also need to figure out how to use weston to make it display nicely on the screen (from what I saw at a quick glance, the fdo backend uses weston)

adamtester commented 5 years ago

Related: https://github.com/balena-io-projects/balena-wpe/issues/52

codefriar commented 5 years ago

If someone can link me to a 'getting started editing balena proejcts' i'm happy to try and create a patch for this.

balena-ci commented 5 years ago

[shaunmulligan] This issue has attached support thread https://jel.ly.fish/#/support-thread~460394ec-6186-4619-8cbe-88caf74c6e5b

floion commented 5 years ago

@codefriar you would need to do the changes highlighted above, then recompile the base image using the build script https://github.com/balena-io-projects/balena-wpe/blob/master/base-image/build.sh , then push the resulting image to dockerhub, then change wpe to use your newly built image (change would go here https://github.com/balena-io-projects/balena-wpe/blob/master/Dockerfile#L1 ) . Then commit these changes and then git push balena. So at this point you would have wpe running with weston and from here you would need to figure out how to get it to render on the screen.

natcl commented 4 years ago

Any updates on this?

floion commented 4 years ago

Not yet as of now

liquidmagic commented 4 years ago

Hello,

Is there a plan to upgrade for Pi 4?

Thank you

floion commented 4 years ago

@liquidmagic we need to put this issue in the prio list somehow; not sure when that will happen

We'll make sure to update this ticket with the progress

dcnoren commented 4 years ago

This was my one use-case for Balena, and I went and bought a Pi 4 without checking this. Woops. Looks like I'll scratch the Balena plan, oh well.

liquidmagic commented 4 years ago

@liquidmagic we need to put this issue in the prio list somehow; not sure when that will happen

We'll make sure to update this ticket with the progress

Any updates?

smarthomeagentur commented 4 years ago

Hi, I build the Image with the changes descried here for VC4 support: https://github.com/Igalia/meta-webkit/wiki/RPi The Image can be found here: https://hub.docker.com/r/danielboe/resin-wpe/

Here are the changes I made: https://bitbucket.org/danielboe/balena-wpe/commits/8d73c841fc55df0b2c77a3fe4495cebf4888f33c

I stuck now with the Error: 19.02.20 19:00:28 (+0100) wpe 2020/02/19 18:00:28 Command is 'cog' 19.02.20 19:00:28 (+0100) wpe 2020/02/19 18:00:28 Starting listening on port 8080 19.02.20 19:00:29 (+0100) wpe wpe: could not load the impl library. Is there any backend installed?: libWPEBackend-default.so: cannot open shared object file: No such file or directory

Edit: After changing cog to this I get new error messages: cog --platform=fdo --cookie-store=always $WPE_URL & 19.02.20 20:33:30 (+0100) wpe (cog:21): GLib-DEBUG: 19:33:30.371: posix_spawn avoided (child_setup specified) 19.02.20 20:33:30 (+0100) wpe ** (cog:21): DEBUG: 19:33:30.455: platform_setup: Platform name: fdo 19.02.20 20:33:30 (+0100) wpe ** (cog:21): DEBUG: 19:33:30.455: platform_setup: Platform plugin: libcogplatform-fdo.so 19.02.20 20:33:30 (+0100) wpe (cog:21): Cog-FDO-DEBUG: 19:33:30.468: Initializing Wayland... 19.02.20 20:33:30 (+0100) wpe ** (cog:21): WARNING **: 19:33:30.468: Platform setup failed: Could not open Wayland display 19.02.20 20:33:30 (+0100) wpe ** (cog:21): DEBUG: 19:33:30.468: Instantiating default WPE backend as fall-back. 19.02.20 20:33:30 (+0100) wpe ** (cog:21): CRITICAL **: 19:33:30.468: WebKitWebViewBackend* webkit_web_view_backend_new(wpe_view_backend*, GDestroyNotify, gpointer): assertion 'backend' failed 19.02.20 20:33:30 (+0100) wpe ** (cog:21): ERROR **: 19:33:30.468: Could not instantiate any WPE backend.

lukecurtis93 commented 4 years ago

any update on this?

ghost commented 4 years ago

Any update?

jbotte commented 4 years ago

Any updates on this?

niedfelj commented 4 years ago

@jbotte @vbersier @lukecurtis93 They have another repo with a gpu accelerated chromium browser that supports RPI4

https://github.com/balenablocks/browser

ghost commented 4 years ago

@niedfelj looks promising! For now I'm using the balenaDash project since it has a chromium browser that works on rpi4 as well. But the link you provided looks more in line with what I need.