Hi Luke,
For our little OS distribution LuneOS (based on HP/Palm's open sourced
webOS) with various added bits we did the migration to QtWebEngine a
while ago (we've went through a number of updates and are at 5.6.x now),
so I can share something about our experience:
1. As far as I know this doesn't happen since it's a very stripped down
Chromium, but I'm unable to double check & confirm this. You could have
a look at https://github.com/qt/qtwebengine-chromium/ to see if there
are any clues. Sync, Hangouts etc are for sure not there.
2. a. You need to specifically enable these during the build. See
https://github.com/webOS-ports/meta-webos-ports/blob/krogoth/meta-luneui/recipes-qt/qt5/qtwebengine_git.bbappend#L6
what we do in our recipe for this. We use the meta-qt5 layer for this.
b. You need to enable this again in your WebEngineView as well like
we did here:
https://github.com/webOS-ports/luneos-components/blob/master/modules/LuneOS/Components/LunaWebEngineView.qml#L56
3. Not sure what flags you're referring to specifically, but we use the
following to enable proprietary (MP3) plugins, use PulseAudio and enable
plugins:
https://github.com/webOS-ports/meta-webos-ports/blob/krogoth/meta-luneui/recipes-qt/qt5/qtwebengine_git.bbappend#L4
meta-qt5 does something similar for other options:
https://github.com/meta-qt5/meta-qt5/blob/master/recipes-qt/qt5/qtwebengine_git.bb#L32
For Geolocation API: This is denied by default: You'd need to implement
a dialog to allow the user to accept these requests, similar to what
we've done here:
https://github.com/webOS-ports/luneos-components/blob/master/modules/LuneOS/Components/LunaWebEngineView.qml#L45
4. Not sure, we haven't tested this.
meta-qt5 would be a good layer to start with for qtwebengine, a lot of
work has been done to get this working properly already on embedded
systems, qemux86 etc, so it should save you a lot of work for
reinventing the wheel.
Best regards,
Herrie
On 2017-01-24 00:45, Luke wrote:
Hello,
I am currently a packager for Parabola GNU/Linux-libre. While
investigating the change from Webkit to Webengine, I discovered several
concerning issues that affect our compliance with the Free Software
Foundation's Free System Distribution Guidelines (FSDG).[1] I am
hopeful
that some developers will be able to clarify these issues for us as it
affects hundreds of projects downstream including nearly all of KDE, as
well as many QT programs.
In particular, your website claims it is not just a rendering engine,
"it is the entire Chromium platform."[2]
If this is true, there are many outstanding issues with Chromium which
we would need to be addressed.
1) Was any attempt made to remove Google specific code from Chromium
prior to preparing QTWebengine?
- If not, could ungoogled-chromium patches be applied to your code?[3]
By default, Chromium has many lines of code that make internet queries
to Google. Building it using the default settings essentially puts your
browser into the cloud. As mentioned in the GNU.org article "Who does
that server really serve?"[4], free software is only free when you are
in control. Any use of Google API, Google Sync, Google Hangouts, and
Google OK, does not classify as free software.
2) Is any form of proprietary code such as Adobe pepperflash, webvine
DRM[5], or proprietary codecs included? If so, can they be removed or
disabled with a compile time option?
3) Is it possible to compile QTWebengine with specific
chrome://flags?[6]
Due to privacy and security concerns of Geolocation API, and GamePad
API, among others, we would like to have the ability to disable these
settings for our distribution.
4) Was any work done to fix outstanding proxy leaks in Chromium, which
ignore system proxy settings?[7]
Once these issues are resolved we will able to include QTWebengine in
our distribution without issue, otherwise we may have to remove it. Due
to this being a core package we are hesitant to remove it due to the
hundreds of packages now depending upon it.
Thank you for your time and concern regarding this important matter.
Sincerely,
Luke
Parabola GNU/Linux-libre Packager
https://parabola.nu
1. https://www.gnu.org/distros/free-system-distribution-guidelines.html
2. https://wiki.qt.io/QtWebEngine
3. https://github.com/Eloston/ungoogled-chromium
4.
https://www.gnu.org/philosophy/who-does-that-server-really-serve.html
5. http://defectivebydesign.org/
6.
http://stackoverflow.com/questions/17060363/google-chrome-how-can-i-programmatically-enable-chrome-flags-some-of-the-mod
7. https://bugs.chromium.org/p/chromium/issues/detail?id=80722#c33
_______________________________________________
QtWebEngine mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/qtwebengine
_______________________________________________
Dev mailing list
[email protected]
https://lists.parabola.nu/mailman/listinfo/dev