initial ebuild
authorBart Verwilst <verwilst@gentoo.org>
Sun, 3 Nov 2002 16:00:24 +0000 (16:00 +0000)
committerBart Verwilst <verwilst@gentoo.org>
Sun, 3 Nov 2002 16:00:24 +0000 (16:00 +0000)
media-video/realone/files/digest-realone-1 [new file with mode: 0644]
media-video/realone/files/realone [new file with mode: 0644]
media-video/realone/files/realone.desktop [new file with mode: 0644]
media-video/realone/realone-1.ebuild [new file with mode: 0644]

diff --git a/media-video/realone/files/digest-realone-1 b/media-video/realone/files/digest-realone-1
new file mode 100644 (file)
index 0000000..4469baf
--- /dev/null
@@ -0,0 +1,2 @@
+MD5 b2fd9f4148edfd8e2a714dd57634ae1b rv9_libc6_i386_cs2.tgz 814305
+MD5 ad228dff04c10cc9f8dc5585c4b94cad r1p1_linux22_libc6_i386_a1.bin 6256996
diff --git a/media-video/realone/files/realone b/media-video/realone/files/realone
new file mode 100644 (file)
index 0000000..56c58a5
--- /dev/null
@@ -0,0 +1,45 @@
+#!/bin/sh
+#
+# /opt/bin/realone -- Wrapper for RealOne player
+
+PLAY_URI=${1}
+FAKE_URI=""
+RP="/opt/RealPlayer9"
+RN="realnetworks"
+
+# Workaround for filename-with-spaces bug 
+if [ "${PLAY_URI}" ]; then
+       for i in `basename "${PLAY_URI}"`
+       do
+               FAKE_URI=${FAKE_URI}${i}
+       done
+       if ! [[ ${FAKE_URI} == `basename "${PLAY_URI}"` ]]; then
+               if [[ `dirname "${PLAY_URI}"` == . ]]; then
+                       ln -s "${PWD}/`basename "${PLAY_URI}"`" \
+                               /tmp/${USER}.${FAKE_URI}
+               else 
+                       ln -s "${PLAY_URI}" /tmp/${USER}.${FAKE_URI} 
+               fi
+               chmod 600 /tmp/${USER}.${FAKE_URI}
+               PLAY_URI="/tmp/${USER}.${FAKE_URI}"
+       fi
+fi
+
+# If needed create dir, copy files
+if ! [ -d ${HOME}/.${RN} ]; then
+       mkdir ${HOME}/.${RN}
+fi
+for i in `ls ${RP}/${RN}`
+do
+       if ! [ -r ${HOME}/.${RN}/${i} ]; then
+               cp ${RP}/${RN}/${i} ${HOME}/.${RN}/
+       fi
+done
+
+# Run
+${RP}/realplay ${PLAY_URI}
+
+# Cleanup
+if [ -f /tmp/${USER}.${FAKE_URI} ]; then
+       rm /tmp/${USER}.${FAKE_URI}
+fi
diff --git a/media-video/realone/files/realone.desktop b/media-video/realone/files/realone.desktop
new file mode 100644 (file)
index 0000000..db83999
--- /dev/null
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Encoding=UTF-8
+Exec=realone %U
+Icon=realplayer
+GenericName=Video Player
+Name=RealOne Player
+Type=Application
+Terminal=0
+MimeType=application/smil;audio/vnd.rn-realaudio;audio/x-pn-realaudio;image/vnd.rn-realflash;text/vnd.rn-realtext;video/vnd.rn-realvideo
+
diff --git a/media-video/realone/realone-1.ebuild b/media-video/realone/realone-1.ebuild
new file mode 100644 (file)
index 0000000..424e782
--- /dev/null
@@ -0,0 +1,143 @@
+# Copyright 1999-2002 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header:
+
+inherit virtualx
+
+DESCRIPTION="RealOne player is a streaming media player, AKA RealPlayer9"
+HOMEPAGE="http://realforum.real.com/cgi-bin/unixplayer/wwwthreads.pl"
+INSTALL_BINARY="r1p1_linux22_libc6_i386_a1.bin"
+RV9_PATCH="rv9_libc6_i386_cs2.tgz"
+SRC_URI="http://docs.real.com/docs/playerpatch/unix/${RV9_PATCH}
+        http://195.141.101.151/direct/${INSTALL_BINARY}"
+
+SLOT="0"
+KEYWORDS="~x86 -ppc -sparc -sparc64"
+LICENSE="realone" # The LICENSE file in /opt/RealPlayer9
+
+DEPEND="virtual/x11"
+RDEPEND=""
+RESTRICT="nostrip"
+
+S=${WORKDIR}
+
+INS="/opt/RealPlayer9"
+RN="${INS}/realnetworks"
+REAL="${INS}/Real"
+APPLNK="share/applnk/Multimedia"
+
+# Some small files the player needs
+CONFIG_Gemini="pluginfilepath=${REAL}/RCAPlugins\n"
+CONFIG_RealMediaSDK="skinsdirectory=${INS}/Skins\nusersdkdatapath=\${HOME}\n\
+externalresourcesdirectory=${REAL}/Plugins/ExtResources\n"
+CONFIG_RealShared="dt_plugins=${REAL}/Plugins/\ndt_codecs=${REAL}/Codecs/\n\
+dt_update_ob=${REAL}/Update_OB/\ndt_common=${REAL}/Common/\ndt_encsdk=${REAL}\
+/Tools/\ndt_objbrokr=${REAL}/Common/\ndt_rcaplugins=${REAL}/RCAPlugins/\n"
+CONFIG_RealPlayer="mainapp=${INS}/realplay\n\
+clientlicensekey=00000000000090000114000000007FF7FF00\n"
+# License key appears to be identical with every download (do verify)
+
+src_unpack() {
+       tar xfz ${DISTDIR}/${RV9_PATCH}
+       cp ${DISTDIR}/${INSTALL_BINARY} .
+       chmod 755 ${INSTALL_BINARY}
+}
+
+src_install() {
+       echo
+       einfo "This ebuild installs RealOne player with RV9 system-wide."
+       einfo "Starting GUI installer in an Xvfb session. Hang on..."
+       echo
+
+       # Virtualmake
+       export maketype="./${INSTALL_BINARY}"
+       virtualmake < /dev/null >& /dev/null &
+       while ! [ -r rnsetup/realplaydoc.xpm ]
+       do 
+               sleep 1
+       done
+       killall ${INSTALL_BINARY}
+
+       # Install main files
+       cd rnsetup
+       insinto ${INS} ; exeinto ${INS}
+       doins LICENSE README audiosig.rm firstrun.* libXm.so.2 *.xpm
+       doexe GEMAPP/gemini realplay realplay_
+       insinto ${INS}/Help ; doins HELP/*
+       insinto ${INS}/Help/pics ; doins HELPIMGS/*
+       insinto ${REAL}/Codecs ; doins RACODECS/* RVCODECS/*
+       insinto ${REAL}/Common/
+       doins AppMasterDB DTMasterDB rmacore.so.6.0 \
+               GEMSETUP/objbrokr.so.0.1 MAINUI/pnrscmgr.so.6.0
+       touch ${D}/${REAL}/Common/DTAdditionsDB
+       touch ${D}/${REAL}/Common/DTLocalDB
+       insinto ${REAL}/Plugins/ExtResources ; doins coreres60.xrs
+       insinto ${REAL}/Plugins
+       doins AUDP/audplin.so.6.0 FLASH/* GEMSETUP/imgrplin.so.6.0 \
+               GEMSETUP/smplfsys.so.6.0 GEMSETUP/xmlparse.so.6.1 \
+               GEMSETUP/zipfsys.so.6.0 H261/h261rndr.so.6.0 \
+               H263/h263rend.so.6.0 MP3/* MP3PL/mp3mfpln.so.6.0 \
+               MULTICST/ppffplin.so.6.0 PLINS/* RTPLINS/* pnxres.so.6.0 \
+               rarender.so.6.0 rvrend.so.6.0 VIDP/vidplin.so.6.0 VSRCPLIN/*
+       insinto ${REAL}/RCAPlugins
+       doins EMBED/chinembed.so.6.0 EMBED/chui.so.9.0 \
+               GEMAPPPLN/gemproduct.so.0.1 GEMSETUP/gemactors.so.0.1 \
+               GEMSETUP/gemctrls.so.0.1 GEMSETUP/gemctrls2.so.0.1 \
+               GEMSETUP/gemxcomps.so.0.1 GEMSETUP/uisystem.so.0.1 \
+               MAINUI/chfs.so.6.0 RCAPLYBK/*
+       insinto ${REAL}/Update_OB
+       doins GEMSETUP/faust.so.7.0 GEMSETUP/setuplib.so.7.0 UPDATE/*
+       insinto ${REAL}/Update_OB/UI ; doins UI/* FAUST/ath.vs
+
+       # NS plugin is a nogo; http://plugindoc.mozdev.org/linux.html#RealOne
+       # The files are left in /opt/RealPlayer9/WBPlugin for now
+       insinto ${INS}/WBPlugin
+       doins EMBED/nppl3260.xpt EMBED/nprealplayer.so.6.0 EMBED/raclass.zip
+
+       # RV9 update
+       insinto ${REAL}/Plugins ; doins ../rv9/plugins/rvrend.so.6.0
+       insinto ${REAL}/Codecs ; doins ../rv9/codecs/*
+
+       # Config files that are needed by the player
+       echo -e ${CONFIG_Gemini} > Gemini_0_1
+       echo -e ${CONFIG_RealMediaSDK} > RealMediaSDK_6_0
+       echo -e ${CONFIG_RealPlayer} > RealPlayer_9_0 
+       echo -e ${CONFIG_RealShared} > RealShared_0_0
+       insinto ${RN}   
+       doins Gemini_0_1 RealMediaSDK_6_0 RealPlayer_9_0 RealShared_0_0
+
+       # KDE desktop entry
+       if [ ${KDEDIR} ]; then
+               insinto ${KDEDIR}/${APPLNK}
+               doins ${FILESDIR}/realone.desktop
+       fi
+
+       # Wrapper script
+       exeinto /opt/bin
+       doexe ${FILESDIR}/realone
+}
+
+pkg_postinst() {
+       einfo "The RealOne player has been installed into ${INS}."
+       einfo "You can start it by running the wrapper script 'realone'."
+       einfo "Netscape plugin was not installed because it is defunct."
+       if [ ${KDEDIR} ]; then
+               einfo "A KDE desktop entry for RealOne has been installed."
+       fi
+       echo
+       einfo "You must agree to the EULA in ${INS}/LICENSE or unmerge."
+       echo
+}
+
+# BUGS likely introduced by this ebuild:
+# User bookmarks are not saved, because user can't write to ${INS}
+# Player freezes when Version button in the About window is pressed
+
+# BUGS not caused by this ebuild:
+# Some menu items are not functional
+# Auto update doesn't work and probably won't any time soon
+# Netscape plugin is broken and proper file naming unclear
+
+# BUG fixed by this ebuild:
+# Player can't handle filenames containing spaces. Fixed in wrapper.
+# Thanks to Sridhar Dhanapalan who discovered this bug.