Skip to content

Commit

Permalink
www-client/vivaldi: Add support for external libffmpeg (bug #580990).
Browse files Browse the repository at this point in the history
Package-Manager: Portage-2.3.8, Repoman-2.3.3
  • Loading branch information
Jeroen Roovers committed Sep 11, 2017
1 parent fd5b227 commit de3de7a
Show file tree
Hide file tree
Showing 2 changed files with 141 additions and 0 deletions.
27 changes: 27 additions & 0 deletions www-client/vivaldi/files/vivaldi-1.11.917.43_p1-libffmpeg.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
--- a/opt/vivaldi/vivaldi
+++ b/opt/vivaldi/vivaldi
@@ -32,14 +32,14 @@
# Chromium's FFMpeg version N-82746-g6bb7ea7 is the oldest known working version
# chromium/third_party/ffmpeg/chromium/config/Chromium/linux/x64/libavutil/ffversion.h
if [ -r "$1" ]; then
- if [ `grep -aom1 'FFmpeg version N-[0-9]\+-' "$1" | cut -f2 -d-` -ge "82746" ]; then
+# if [ `grep -aom1 'FFmpeg version N-[0-9]\+-' "$1" | cut -f2 -d-` -ge "82746" ]; then
if [[ -n "$LD_PRELOAD" ]]; then
export LD_PRELOAD="$LD_PRELOAD:$1"
else
export LD_PRELOAD="$1"
fi
export VIVALDI_FFMPEG_FOUND=YES
- fi
+# fi
fi
fi
fi
@@ -54,6 +54,7 @@
# Check for libs in order that they are most likely to appear.
# Where possible, use other files/directories to confirm it's the correct variant.
VIVALDI_FFMPEG_FOUND=NO
+checkffmpeg "/usr/lib64/chromium/libffmpeg.so"
checkffmpeg "/usr/lib/$DEBARCH/oxide-qt/libffmpeg.so" '/usr/share/doc/oxideqt-codecs-extra'
checkffmpeg '/usr/lib/chromium-browser/libffmpeg.so' '/usr/share/doc/chromium-codecs-ffmpeg-extra'

114 changes: 114 additions & 0 deletions www-client/vivaldi/vivaldi-1.11.917.43_p1-r1.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=5
CHROMIUM_LANGS="
am ar bg bn ca cs da de el en-GB en-US es es-419 et fa fi fil fr gu he hi
hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr sv
sw ta te th tr uk vi zh-CN zh-TW
"
inherit chromium-2 eutils multilib unpacker toolchain-funcs

#VIVALDI_BRANCH="snapshot"

VIVALDI_PN="${PN}-${VIVALDI_BRANCH:-stable}"
VIVALDI_BIN="${PN}${VIVALDI_BRANCH/snapshot/-snapshot}"
VIVALDI_HOME="opt/${VIVALDI_BIN}"
DESCRIPTION="A new browser for our friends"
HOMEPAGE="http://vivaldi.com/"
VIVALDI_BASE_URI="https://downloads.vivaldi.com/${VIVALDI_BRANCH:-stable}/${VIVALDI_PN}_${PV/_p/-}_"
SRC_URI="
amd64? ( ${VIVALDI_BASE_URI}amd64.deb -> ${P}-amd64.deb )
x86? ( ${VIVALDI_BASE_URI}i386.deb -> ${P}-i386.deb )
"

LICENSE="Vivaldi"
SLOT="0"
KEYWORDS="-* ~amd64 ~x86"
RESTRICT="bindist mirror"

DEPEND="
virtual/libiconv
"
RDEPEND="
dev-libs/expat
dev-libs/glib:2
dev-libs/nspr
dev-libs/nss
>=dev-libs/openssl-1.0.1:0
gnome-base/gconf:2
media-libs/alsa-lib
media-libs/fontconfig
media-libs/freetype
net-misc/curl
net-print/cups
sys-apps/dbus
sys-libs/libcap
x11-libs/cairo
x11-libs/gdk-pixbuf
x11-libs/gtk+:2
x11-libs/libX11
x11-libs/libXScrnSaver
x11-libs/libXcomposite
x11-libs/libXcursor
x11-libs/libXdamage
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libXi
x11-libs/libXrandr
x11-libs/libXrender
x11-libs/libXtst
x11-libs/pango[X]
"
QA_PREBUILT="*"
S=${WORKDIR}

src_unpack() {
unpack_deb ${A}
}

src_prepare() {
iconv -c -t UTF-8 usr/share/applications/${VIVALDI_PN}.desktop > "${T}"/${VIVALDI_PN}.desktop || die
mv "${T}"/${VIVALDI_PN}.desktop usr/share/applications/${VIVALDI_PN}.desktop || die

sed -i \
-e "s|${VIVALDI_BIN}|${PN}|g" \
usr/share/applications/${VIVALDI_PN}.desktop \
usr/share/xfce4/helpers/${VIVALDI_BIN}.desktop || die

mv usr/share/doc/${VIVALDI_PN} usr/share/doc/${PF} || die
chmod 0755 usr/share/doc/${PF} || die

rm \
_gpgbuilder \
etc/cron.daily/${VIVALDI_BIN} \
${VIVALDI_HOME}/libwidevinecdm.so \
|| die
rmdir \
etc/cron.daily/ \
etc/ \
|| die

local c d
for d in 16 22 24 32 48 64 128 256; do
mkdir -p usr/share/icons/hicolor/${d}x${d}/apps || die
cp \
${VIVALDI_HOME}/product_logo_${d}.png \
usr/share/icons/hicolor/${d}x${d}/apps/vivaldi.png || die
done

pushd "${VIVALDI_HOME}/locales" > /dev/null || die
chromium_remove_language_paks
popd > /dev/null || die

epatch "${FILESDIR}"/${PN}-1.11.917.43_p1-libffmpeg.patch

epatch_user
}

src_install() {
mv * "${D}" || die
dosym /${VIVALDI_HOME}/${PN} /usr/bin/${PN}

fperms 4711 /${VIVALDI_HOME}/${PN}-sandbox
}

0 comments on commit de3de7a

Please sign in to comment.