Vivaldi Web Browser

Project information: Vivaldi Web Browser

Name: Vivaldi Web Browser
Homepage: vivaldi
License: https://vivaldi.com/privacy/vivaldi-end-user-license-agreement/
Upstream has been contacted: Yes (https://forum.vivaldi.net/topic/33411/flatpack-version)

I’m trying to build a flatpak for my personal use too. But this is my first project and will probably take me much longer than someone who already has a good amount of experience in packaging.

Since I’m a new user I can only post 2 links in a post. https://vivaldi.com is the Homepage

Unless we can get the sandbox working, it makes no sense to flatpak the browser.
@refi64, do you think zypak can work for Vivaldi?

Zypak should generally work on any Chromium- or Electron-based application, so I don’t think this would be an issue.

AFAIK Vivaldi uses LD_PRELOAD to enable 3rd-party ffmpeg.so. Since zypak itself uses LD_PRELOAD, won’t it conflict?

I have been testing with creating my own build and I have vivaldi itself running in flatpak.

I believe I have ffmpeg working as I do not get the error that it needs to be updated anymore. In the vivaldi launch bash script, I just check if LD_PRELOAD exists and if it does I just append the path to ffmpeg, does that cause problems?

The problems:

  • Widevine is not working proerply. When vivaldi tries to load the shared object file it says permissions denied and unable to link to it.

  • Also the browser keeps asking to access a keychain of some sort as kde-wallet keeps on getting requested.

Is your current manifest available online anywhere? Widevine is a bit of a hairy topic and I’ve had to implement quite a few browser-specific workarounds, so adding another one here wouldn’t surprise me.

As for the keychain, I think kde-wallet has its own D-Bus name you might have to grant permission to talk to?

Do note that we do “clobber” (i.e. overwrite without checking for previous values) LD_PRELOAD in a few places in Zypak, some of those might have to be changed to append to it instead if you run into issues.

I just fixed up the configuration from my testing and pushed it to a GitHub repository https://github.com/snugglej/org.vivaldi.Vivaldi.

This builds successful and uses your wrapper to run it properly but I think LD_PRELOAD is getting nerfed because I can’t seem to get get the libffmpeg.so to work properly.

I fixed the key chain issue by adding the below items to my json file

“–talk-name=org.kde.kwalletd5”,
“–talk-name=org.kde.kwalletd”,

Where can I find the source code for the Zypak code? or How would I go about trying to verify that the LD_PRELOAD isn’t showing the right information?

If I did something like this would it work for checking the variable after I called zypak-wrapper?
exec zypak-wrapper.sh /app/extra/vivaldi/vivaldi-bin "$@" && watch -n 5 echo LD_PRELOAD

So with the help of @fastrizwaan I have a working version of the flatpak running the latest stable release of Vivaldi.

(I’m typing it on the browser right now, woot!)

So I built the flatpak and I think I have it working how initially I believe it would work. Videos work, everything inside vivaldi works.

Is there a review process for submissions to the flatpak pull requests or how does that work after I do a PR?