Gentoo Archives: gentoo-commits

From: Jeroen Roovers <jer@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: www-client/vivaldi/, www-client/vivaldi/files/
Date: Mon, 11 Sep 2017 18:37:11
Message-Id: 1505155024.de3de7a9aaa840612b292dd8c70ef5f6b2102eb1.jer@gentoo
1 commit: de3de7a9aaa840612b292dd8c70ef5f6b2102eb1
2 Author: Jeroen Roovers <jer <AT> gentoo <DOT> org>
3 AuthorDate: Mon Sep 11 18:34:10 2017 +0000
4 Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org>
5 CommitDate: Mon Sep 11 18:37:04 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=de3de7a9
7
8 www-client/vivaldi: Add support for external libffmpeg (bug #580990).
9
10 Package-Manager: Portage-2.3.8, Repoman-2.3.3
11
12 .../files/vivaldi-1.11.917.43_p1-libffmpeg.patch | 27 +++++
13 .../vivaldi/vivaldi-1.11.917.43_p1-r1.ebuild | 114 +++++++++++++++++++++
14 2 files changed, 141 insertions(+)
15
16 diff --git a/www-client/vivaldi/files/vivaldi-1.11.917.43_p1-libffmpeg.patch b/www-client/vivaldi/files/vivaldi-1.11.917.43_p1-libffmpeg.patch
17 new file mode 100644
18 index 00000000000..a0861913d33
19 --- /dev/null
20 +++ b/www-client/vivaldi/files/vivaldi-1.11.917.43_p1-libffmpeg.patch
21 @@ -0,0 +1,27 @@
22 +--- a/opt/vivaldi/vivaldi
23 ++++ b/opt/vivaldi/vivaldi
24 +@@ -32,14 +32,14 @@
25 + # Chromium's FFMpeg version N-82746-g6bb7ea7 is the oldest known working version
26 + # chromium/third_party/ffmpeg/chromium/config/Chromium/linux/x64/libavutil/ffversion.h
27 + if [ -r "$1" ]; then
28 +- if [ `grep -aom1 'FFmpeg version N-[0-9]\+-' "$1" | cut -f2 -d-` -ge "82746" ]; then
29 ++# if [ `grep -aom1 'FFmpeg version N-[0-9]\+-' "$1" | cut -f2 -d-` -ge "82746" ]; then
30 + if [[ -n "$LD_PRELOAD" ]]; then
31 + export LD_PRELOAD="$LD_PRELOAD:$1"
32 + else
33 + export LD_PRELOAD="$1"
34 + fi
35 + export VIVALDI_FFMPEG_FOUND=YES
36 +- fi
37 ++# fi
38 + fi
39 + fi
40 + fi
41 +@@ -54,6 +54,7 @@
42 + # Check for libs in order that they are most likely to appear.
43 + # Where possible, use other files/directories to confirm it's the correct variant.
44 + VIVALDI_FFMPEG_FOUND=NO
45 ++checkffmpeg "/usr/lib64/chromium/libffmpeg.so"
46 + checkffmpeg "/usr/lib/$DEBARCH/oxide-qt/libffmpeg.so" '/usr/share/doc/oxideqt-codecs-extra'
47 + checkffmpeg '/usr/lib/chromium-browser/libffmpeg.so' '/usr/share/doc/chromium-codecs-ffmpeg-extra'
48 +
49
50 diff --git a/www-client/vivaldi/vivaldi-1.11.917.43_p1-r1.ebuild b/www-client/vivaldi/vivaldi-1.11.917.43_p1-r1.ebuild
51 new file mode 100644
52 index 00000000000..31012c00e4f
53 --- /dev/null
54 +++ b/www-client/vivaldi/vivaldi-1.11.917.43_p1-r1.ebuild
55 @@ -0,0 +1,114 @@
56 +# Copyright 1999-2017 Gentoo Foundation
57 +# Distributed under the terms of the GNU General Public License v2
58 +
59 +EAPI=5
60 +CHROMIUM_LANGS="
61 + am ar bg bn ca cs da de el en-GB en-US es es-419 et fa fi fil fr gu he hi
62 + 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
63 + sw ta te th tr uk vi zh-CN zh-TW
64 +"
65 +inherit chromium-2 eutils multilib unpacker toolchain-funcs
66 +
67 +#VIVALDI_BRANCH="snapshot"
68 +
69 +VIVALDI_PN="${PN}-${VIVALDI_BRANCH:-stable}"
70 +VIVALDI_BIN="${PN}${VIVALDI_BRANCH/snapshot/-snapshot}"
71 +VIVALDI_HOME="opt/${VIVALDI_BIN}"
72 +DESCRIPTION="A new browser for our friends"
73 +HOMEPAGE="http://vivaldi.com/"
74 +VIVALDI_BASE_URI="https://downloads.vivaldi.com/${VIVALDI_BRANCH:-stable}/${VIVALDI_PN}_${PV/_p/-}_"
75 +SRC_URI="
76 + amd64? ( ${VIVALDI_BASE_URI}amd64.deb -> ${P}-amd64.deb )
77 + x86? ( ${VIVALDI_BASE_URI}i386.deb -> ${P}-i386.deb )
78 +"
79 +
80 +LICENSE="Vivaldi"
81 +SLOT="0"
82 +KEYWORDS="-* ~amd64 ~x86"
83 +RESTRICT="bindist mirror"
84 +
85 +DEPEND="
86 + virtual/libiconv
87 +"
88 +RDEPEND="
89 + dev-libs/expat
90 + dev-libs/glib:2
91 + dev-libs/nspr
92 + dev-libs/nss
93 + >=dev-libs/openssl-1.0.1:0
94 + gnome-base/gconf:2
95 + media-libs/alsa-lib
96 + media-libs/fontconfig
97 + media-libs/freetype
98 + net-misc/curl
99 + net-print/cups
100 + sys-apps/dbus
101 + sys-libs/libcap
102 + x11-libs/cairo
103 + x11-libs/gdk-pixbuf
104 + x11-libs/gtk+:2
105 + x11-libs/libX11
106 + x11-libs/libXScrnSaver
107 + x11-libs/libXcomposite
108 + x11-libs/libXcursor
109 + x11-libs/libXdamage
110 + x11-libs/libXext
111 + x11-libs/libXfixes
112 + x11-libs/libXi
113 + x11-libs/libXrandr
114 + x11-libs/libXrender
115 + x11-libs/libXtst
116 + x11-libs/pango[X]
117 +"
118 +QA_PREBUILT="*"
119 +S=${WORKDIR}
120 +
121 +src_unpack() {
122 + unpack_deb ${A}
123 +}
124 +
125 +src_prepare() {
126 + iconv -c -t UTF-8 usr/share/applications/${VIVALDI_PN}.desktop > "${T}"/${VIVALDI_PN}.desktop || die
127 + mv "${T}"/${VIVALDI_PN}.desktop usr/share/applications/${VIVALDI_PN}.desktop || die
128 +
129 + sed -i \
130 + -e "s|${VIVALDI_BIN}|${PN}|g" \
131 + usr/share/applications/${VIVALDI_PN}.desktop \
132 + usr/share/xfce4/helpers/${VIVALDI_BIN}.desktop || die
133 +
134 + mv usr/share/doc/${VIVALDI_PN} usr/share/doc/${PF} || die
135 + chmod 0755 usr/share/doc/${PF} || die
136 +
137 + rm \
138 + _gpgbuilder \
139 + etc/cron.daily/${VIVALDI_BIN} \
140 + ${VIVALDI_HOME}/libwidevinecdm.so \
141 + || die
142 + rmdir \
143 + etc/cron.daily/ \
144 + etc/ \
145 + || die
146 +
147 + local c d
148 + for d in 16 22 24 32 48 64 128 256; do
149 + mkdir -p usr/share/icons/hicolor/${d}x${d}/apps || die
150 + cp \
151 + ${VIVALDI_HOME}/product_logo_${d}.png \
152 + usr/share/icons/hicolor/${d}x${d}/apps/vivaldi.png || die
153 + done
154 +
155 + pushd "${VIVALDI_HOME}/locales" > /dev/null || die
156 + chromium_remove_language_paks
157 + popd > /dev/null || die
158 +
159 + epatch "${FILESDIR}"/${PN}-1.11.917.43_p1-libffmpeg.patch
160 +
161 + epatch_user
162 +}
163 +
164 +src_install() {
165 + mv * "${D}" || die
166 + dosym /${VIVALDI_HOME}/${PN} /usr/bin/${PN}
167 +
168 + fperms 4711 /${VIVALDI_HOME}/${PN}-sandbox
169 +}