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

vivaldi: add support for proprietary codecs #26842

Merged
merged 5 commits into from Aug 4, 2017

Conversation

lluchs
Copy link
Contributor

@lluchs lluchs commented Jun 25, 2017

Motivation for this change

As described in #26413, Vivaldi currently doesn't support proprietary codecs such as H.264. This PR adds a vivaldi-ffmpeg-codecs package with a libffmpeg.so built from the Chromium source and makes Vivaldi load that library.

The build steps are based on the AUR package with the same name.

Things done
  • Tested using sandboxing
    (nix.useSandbox on NixOS,
    or option build-use-sandbox in nix.conf
    on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • Linux
  • 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 nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

Due to licensing costs, Vivaldi bundles a version of ffmpeg compiled
without support for the common H.264 codec. However, it is possible to
supply a custom libffmpeg.so with additional codecs. This derivation
uses the Chromium source to compile a compatible libffmpeg.so.

This approach is recommended by a Vivaldi developer, see
https://gist.github.com/ruario/bec42d156d30affef655
@mention-bot
Copy link

@lluchs, thanks for your PR! By analyzing the history of the files in this pull request, we identified @zimbatm, @zraexy and @otwieracz to be potential reviewers.

When trying to open or save a file using the file chooser GUI, Vivaldi
would crash with the message

   GLib-GIO-ERROR **: Settings schema 'org.gtk.Settings.FileChooser' is
   not installed

This commit adds the GTK directory to XDG_DATA_DIRS which fixes the
crash.
@lluchs
Copy link
Contributor Author

lluchs commented Jul 25, 2017

I updated the PR. There's now an update script which will check the Vivaldi website for the current version and update both the vivaldi and vivaldi-ffmpeg-codecs packages. I removed the version check during the vivaldi build though. At the moment, Vivaldi uses Chromium version 59.0.3071.112, but there is no Chromium source tarball for that version. It's up to the maintainer to decide which Chromium version is best in that case. Currently, the previous version works fine.

I also included a (somewhat unrelated) patch for #27299.

@lluchs
Copy link
Contributor Author

lluchs commented Aug 4, 2017

Any further comments? Can someone merge this?

cc @otwieracz @NeQuissimus @volth @romildo

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

5 participants