Skip to content

Commit

Permalink
FL-4620: update firefxo-developer-bin
Browse files Browse the repository at this point in the history
  • Loading branch information
Oleg Vinichenko committed Jan 11, 2018
1 parent 0c82a7d commit 505755c
Show file tree
Hide file tree
Showing 2 changed files with 176 additions and 0 deletions.
1 change: 1 addition & 0 deletions www-client/firefox-developer-bin/Manifest
@@ -1 +1,2 @@
DIST firefox-developer-bin_x86_64-54.0_alpha2.tar.bz2 66685836 SHA256 e80859b07e5529cedca2d1b0b4e411a1515ad090e4b7d3c530699de0c0c2063d SHA512 a89049d5aa5204871b2ad23cd14c6c10ce2818ee9393e0febf474496be81429f71dce1260c26bab260a1f09b82554999de9590b74765b24e4e466aa4b672a9f6 WHIRLPOOL 949c98d2da5a4a74e0d44ba3027f0a178d8c187d91986f9619b66d261f15cd74bb64e782d57df04de0341ea4a0c1a9caf9785e62a6fc9c514c34341a74439842
DIST firefox-developer-bin_x86_64-58.0_beta14.tar.bz2 61364671 SHA256 e4bdeec8d864e512a96b48521a9ba50554bb2c72db79fbf4dd2faeafb36f3027 SHA512 09e24bf4e42eee93875834a498ab54a3623fc83a117b37dba95e3f7f4dda0a6883ed396041531b4a906267cd6cc557b458bda437e6b221ac816e200de65846bc WHIRLPOOL 191559b8fb9ce3718c0edcd465cfe9cca55383e1dcaa982454bcfd39b5422d0be81fd2411bf983dd6e4999d93f90ec2987d2b97cd5605909ad08daeb51364faa
@@ -0,0 +1,175 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

EAPI="5"

# Can be updated using scripts/get_langs.sh from mozilla overlay
MOZ_LANGS=( en de )

# Convert the ebuild version to the upstream mozilla version, used by mozlinguas
MOZ_PV="${PV/_beta/b}" # Handle alpha for SRC_URI
MOZ_PN="${PN/-developer-bin}"
MOZ_P="${MOZ_PN}-${MOZ_PV}"

MOZ_HTTP_URI="https://download-installer.cdn.mozilla.net/pub/devedition/releases/${MOZ_PV}/linux-x86_64/en-US/"

inherit eutils multilib pax-utils fdo-mime gnome2-utils mozlinguas-v2 nsplugins

DESCRIPTION="Firefox Developer Edition"
SRC_URI="${MOZ_HTTP_URI%/}/${MOZ_P}.tar.bz2 -> ${PN}_x86_64-${PV}.tar.bz2"
HOMEPAGE="https://www.mozilla.org/firefox/developer/"
RESTRICT="strip mirror"

KEYWORDS="-* ~amd64"
SLOT="0"
LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
IUSE="selinux startup-notification"

DEPEND="app-arch/unzip"
RDEPEND="dev-libs/atk
>=sys-apps/dbus-0.60
>=dev-libs/dbus-glib-0.72
>=dev-libs/glib-2.26:2
>=media-libs/alsa-lib-1.0.16
media-libs/fontconfig
>=media-libs/freetype-2.4.10
>=x11-libs/cairo-1.10[X]
x11-libs/gdk-pixbuf
>=x11-libs/gtk+-2.18:2
>=x11-libs/gtk+-3.4.0:3
x11-libs/libX11
x11-libs/libXcomposite
x11-libs/libXdamage
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libXrender
x11-libs/libXt
>=x11-libs/pango-1.22.0
virtual/freedesktop-icon-theme
selinux? ( sec-policy/selinux-mozilla )
"

QA_PREBUILT="
opt/${PN}/*.so
opt/${PN}/${MOZ_PN}
opt/${PN}/${PN}
opt/${PN}/crashreporter
opt/${PN}/webapprt-stub
opt/${PN}/plugin-container
opt/${PN}/mozilla-xremote-client
opt/${PN}/updater
"

S="${WORKDIR}/${MOZ_PN}"

src_unpack() {
unpack ${A}

# Unpack language packs
mozlinguas_src_unpack
}

src_install() {
declare MOZILLA_FIVE_HOME=/opt/${PN}

local size sizes icon_path icon name
sizes="16 32 48"
icon_path="${S}/browser/chrome/icons/default"
icon="${PN}"
name="Mozilla Firefox Developer Edition"

# Install icons and .desktop for menu entry
for size in ${sizes}; do
insinto "/usr/share/icons/hicolor/${size}x${size}/apps"
newins "${icon_path}/default${size}.png" "${icon}.png" || die
done
# The 128x128 icon has a different name
insinto /usr/share/icons/hicolor/128x128/apps
newins "${icon_path}/../../../icons/mozicon128.png" "${icon}.png" || die
# Install a 48x48 icon into /usr/share/pixmaps for legacy DEs
newicon "${S}"/browser/chrome/icons/default/default48.png ${PN}.png
domenu "${FILESDIR}"/${PN}.desktop
sed -i -e "s:@NAME@:${name}:" -e "s:@ICON@:${icon}:" \
"${ED}usr/share/applications/${PN}.desktop" || die

# Add StartupNotify=true bug 237317
if use startup-notification; then
echo "StartupNotify=true" >> "${ED}"usr/share/applications/${PN}.desktop
fi

# Install firefox in /opt
dodir ${MOZILLA_FIVE_HOME%/*}
mv "${S}" "${ED}"${MOZILLA_FIVE_HOME} || die

# Fix prefs that make no sense for a system-wide install
insinto ${MOZILLA_FIVE_HOME}/defaults/pref/
doins "${FILESDIR}"/local-settings.js
# Copy preferences file so we can do a simple rename.
cp "${FILESDIR}"/all-gentoo-1.js \
"${ED}"${MOZILLA_FIVE_HOME}/all-gentoo.js || die

# Install language packs
mozlinguas_src_install

local LANG=${linguas%% *}
if [[ -n ${LANG} && ${LANG} != "en" ]]; then
elog "Setting default locale to ${LANG}"
echo "pref(\"general.useragent.locale\", \"${LANG}\");" \
>> "${ED}${MOZILLA_FIVE_HOME}"/defaults/pref/${PN}-prefs.js || \
die "sed failed to change locale"
fi

# Create /usr/bin/firefox-bin
dodir /usr/bin/
cat <<-EOF >"${ED}"usr/bin/${PN}
#!/bin/sh
unset LD_PRELOAD
LD_LIBRARY_PATH="/opt/firefox-developer-bin/"
GTK_PATH=/usr/lib/gtk-2.0/
exec /opt/${PN}/${MOZ_PN} "\$@"
EOF
fperms 0755 /usr/bin/${PN}

# revdep-rebuild entry
insinto /etc/revdep-rebuild
echo "SEARCH_DIRS_MASK=${MOZILLA_FIVE_HOME}" >> ${T}/10${PN}
doins "${T}"/10${PN} || die

# Plugins dir
share_plugins_dir

# Required in order to use plugins and even run firefox on hardened.
pax-mark mr "${ED}"${MOZILLA_FIVE_HOME}/{firefox,firefox-bin,plugin-container}
}

pkg_preinst() {
gnome2_icon_savelist
}

pkg_postinst() {
if ! has_version 'gnome-base/gconf' || ! has_version 'gnome-base/orbit' \
|| ! has_version 'net-misc/curl'; then
einfo
einfo "For using the crashreporter, you need gnome-base/gconf,"
einfo "gnome-base/orbit and net-misc/curl emerged."
einfo
fi
einfo "For HTML5 video you need media-video/ffmpeg installed."

# Drop requirement of curl not built with nss as it's not necessary anymore
#if has_version 'net-misc/curl[nss]'; then
# einfo
# einfo "Crashreporter won't be able to send reports"
# einfo "if you have curl emerged with the nss USE-flag"
# einfo
#fi

# Update mimedb for the new .desktop file
fdo-mime_desktop_database_update
gnome2_icon_cache_update
}

pkg_postrm() {
gnome2_icon_cache_update
}

0 comments on commit 505755c

Please sign in to comment.