diff options
Diffstat (limited to 'www-client/opera/opera-9.21.641.ebuild')
-rw-r--r-- | www-client/opera/opera-9.21.641.ebuild | 171 |
1 files changed, 171 insertions, 0 deletions
diff --git a/www-client/opera/opera-9.21.641.ebuild b/www-client/opera/opera-9.21.641.ebuild new file mode 100644 index 000000000000..b3011e53f1be --- /dev/null +++ b/www-client/opera/opera-9.21.641.ebuild @@ -0,0 +1,171 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/www-client/opera/opera-9.21.641.ebuild,v 1.1 2007/05/14 03:23:27 jer Exp $ + +inherit eutils gnome2 + +DESCRIPTION="Opera web browser" +HOMEPAGE="http://www.opera.com/" + +SLOT="0" +LICENSE="OPERA-9.0" +KEYWORDS="~amd64 ~ppc ~sparc ~x86 ~x86-fbsd" + +IUSE="qt-static spell gnome" +RESTRICT="strip mirror" + +OPERALNG="en" +OPERASUFF="641" +OPERAVER="9.21-20070510" + +OPERA_URI="http://snapshot.opera.com/unix/Weekly-${OPERASUFF}/" +# http://snapshot.opera.com/unix/Weekly-641/intel-linux/opera-9.21-20070510.1-static-qt.i386-en-641.tar.bz2 +# http://snapshot.opera.com/unix/Weekly-641/intel-linux/opera-9.21-20070510.6-shared-qt.i386-en-641.tar.bz2 +SRC_URI=" + x86? ( qt-static? ( + ${OPERA_URI}intel-linux/${PN}-${OPERAVER}.1-static-qt.i386-${OPERALNG}-${OPERASUFF}.tar.bz2 ) ) + x86? ( !qt-static? ( ${OPERA_URI}intel-linux/${PN}-${OPERAVER}.6-shared-qt.i386-${OPERALNG}-${OPERASUFF}.tar.bz2 ) ) + amd64? ( qt-static? ( ${OPERA_URI}intel-linux/${PN}-${OPERAVER}.1-static-qt.i386-${OPERALNG}-${OPERASUFF}.tar.bz2 ) ) + amd64? ( !qt-static? ( ${OPERA_URI}intel-linux/${PN}-${OPERAVER}.6-shared-qt.i386-${OPERALNG}-${OPERASUFF}.tar.bz2 ) ) + sparc? ( ${OPERA_URI}sparc-linux/${PN}-${OPERAVER}.1-static-qt.sparc-${OPERALNG}-${OPERASUFF}.tar.bz2 ) + ppc? ( ${OPERA_URI}ppc-linux/${PN}-${OPERAVER}.1-static-qt.ppc-${OPERALNG}-${OPERASUFF}.tar.bz2 ) + x86-fbsd? ( !qt-static? ( ${OPERA_URI}intel-freebsd/${PN}-${OPERAVER}.4-shared-qt.i386.freebsd-${OPERALNG}-${OPERASUFF}.tar.bz2 ) ) + x86-fbsd? ( qt-static? ( ${OPERA_URI}/intel-freebsd/${PN}-${OPERAVER}.1-static-qt.i386.freebsd-${OPERALNG}-${OPERASUFF}.tar.bz2 ) )" + +DEPEND=">=sys-apps/sed-4 + amd64? ( sys-apps/setarch )" + +RDEPEND="|| ( ( x11-libs/libXrandr + x11-libs/libXp + x11-libs/libXmu + x11-libs/libXi + x11-libs/libXft + x11-libs/libXext + x11-libs/libXcursor + x11-libs/libX11 + x11-libs/libSM + x11-libs/libICE + ) + virtual/x11 + ) + >=media-libs/fontconfig-2.1.94-r1 + amd64? ( qt-static? ( app-emulation/emul-linux-x86-xlibs ) + !qt-static? ( app-emulation/emul-linux-x86-qtlibs ) ) + !amd64? ( media-libs/libexif + spell? ( app-text/aspell ) + x86? ( !qt-static? ( =x11-libs/qt-3* ) ) + media-libs/jpeg )" + +S=${WORKDIR}/${A/.tar.bz2/} + +src_unpack() { + unpack ${A} + cd ${S} + + epatch "${FILESDIR}/${PN}-9.21-install.patch" + + sed -i -e "s:config_dir=\"/etc\":config_dir=\"${D}/etc/\":g" \ + -e "s:/usr/share/applnk:${D}/usr/share/applnk:g" \ + -e "s:/usr/share/pixmaps:${D}/usr/share/pixmaps:g" \ + -e "s:/usr/share/icons:${D}/usr/share/icons:g" \ + -e "s:/etc/X11:${D}/etc/X11:g" \ + -e "s:/usr/share/gnome:${D}/usr/share/gnome:g" \ + -e "s:/opt/gnome/share:${D}/opt/gnome/share:g" \ + -e 's:#\(OPERA_FORCE_JAVA_ENABLED=\):\1:' \ + -e 's:#\(export LD_PRELOAD OPERA_FORCE_JAVA_ENABLED\):\1:' \ + -e 's:read str_answer:return 0:' \ + -e "s:/opt/kde:${D}/usr/kde:" \ + -e "s:\(str_localdirplugin=\).*$:\1/opt/opera/lib/opera/plugins:" \ + install.sh || die "sed failed" +} + +src_compile() { + true +} + +src_install() { + # Prepare installation directories for Opera's installer script. + dodir /etc + + # Opera's native installer. + if [ ${ARCH} = "amd64" ]; then + linux32 ./install.sh --prefix="${D}"/opt/opera || die + else + ./install.sh --prefix="${D}"/opt/opera || die + fi + + # java workaround + sed -i -e 's:LD_PRELOAD="${OPERA_JAVA_DIR}/libawt.so":LD_PRELOAD="$LD_PRELOAD"\:"${OPERA_JAVA_DIR}/libawt.so":' ${D}/opt/opera/bin/opera + + dosed /opt/opera/bin/opera + dosed /opt/opera/share/opera/java/opera.policy + + # Install the icons + insinto /usr/share/pixmaps + doins images/opera.xpm + for res in 16x16 22x22 32x32 48x48 ; do + insinto /usr/share/icons/hicolor/${res}/apps/ + newins images/opera_${res}.png opera.png + done + + # Install the menu entry + insinto /usr/share/applications + doins ${FILESDIR}/opera.desktop + + # Install a symlink /usr/bin/opera + dodir /usr/bin + dosym /opt/opera/bin/opera /usr/bin/opera + + # fix plugin path + echo "Plugin Path=/opt/opera/lib/opera/plugins" >> ${D}/etc/opera6rc + + # enable spellcheck + if use spell; then + if use qt-static; then + DIR=$OPERAVER.1 + else + use sparc && DIR=$OPERAVER.2 || DIR=$OPERAVER.5 + fi + echo "Spell Check Engine=/opt/opera/lib/opera/${DIR}/spellcheck.so" >> ${D}/opt/opera/share/opera/ini/spellcheck.ini + fi + + dodir /etc/revdep-rebuild + echo 'SEARCH_DIRS_MASK="/opt/opera/lib/opera/plugins"' > ${D}/etc/revdep-rebuild/90opera + + # Change libz.so.3 to libz.so.1 for gentoo/freebsd + if [ ${ARCH} = "x86-fbsd" ]; then + scanelf -qR -N libz.so.3 -F "#N" "${D}"/opt/${PN}/ | \ + while read i; do + if [[ $(strings "$i" | fgrep -c libz.so.3) -ne 1 ]]; + then + export SANITY_CHECK_LIBZ_FAILED=1 + break + fi + sed -i -e 's/libz\.so\.3/libz.so.1/g' "$i" + done + [[ "$SANITY_CHECK_LIBZ_FAILED" = "1" ]] && die "failed to change libz.so.3 to libz.so.1" + fi + + # symlink to libflash-player.so: + dosym /opt/netscape/plugins/libflashplayer.so \ + /opt/opera/lib/opera/plugins/libflashplayer.so +} + +pkg_postinst() { + use gnome && gnome2_pkg_postinst + + elog "For localized language files take a look at:" + elog "http://www.opera.com/download/languagefiles/index.dml?platform=linux" + elog + elog "To change the spellcheck language edit /opt/opera/share/opera/ini/spellcheck.ini" + elog "and emerge app-dicts/aspell-language." + elog + elog "If you would like to watch videos on websites like YouTube, you will" + elog "need to edit \$HOME/.opera/pluginpath.ini and set:" + elog " /opt/netscape/plugins=2" +} + + +pkg_postrm() { + use gnome && gnome2_pkg_postrm +} |