summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Ramsay <lack@gentoo.org>2007-06-07 19:35:32 +0000
committerJim Ramsay <lack@gentoo.org>2007-06-07 19:35:32 +0000
commit93c5d62ddcc86bae5b84cc38a1c5bfa08b56a2c0 (patch)
tree27e68f9bf9ee83d149af5eac68b7bbf7b28ac936 /rox-base
downloadrox-93c5d62ddcc86bae5b84cc38a1c5bfa08b56a2c0.tar.gz
rox-93c5d62ddcc86bae5b84cc38a1c5bfa08b56a2c0.tar.bz2
rox-93c5d62ddcc86bae5b84cc38a1c5bfa08b56a2c0.zip
Commiting initial overlay: multilib changes and preliminary zeroinstall support
svn path=/trunk/overlay/; revision=2
Diffstat (limited to 'rox-base')
-rw-r--r--rox-base/pager/pager-1.1-r2.ebuild25
-rw-r--r--rox-base/rox-clib/rox-clib-2.1.9-r1.ebuild60
-rw-r--r--rox-base/rox-clib/rox-clib-2.1.9-r2.ebuild62
-rw-r--r--rox-base/rox-lib/files/rox-lib-2.0.3-nosvg.patch18
-rw-r--r--rox-base/rox-lib/rox-lib-2.0.3-r3.ebuild36
-rw-r--r--rox-base/rox-lib/rox-lib-2.0.3-r4.ebuild38
-rw-r--r--rox-base/rox/files/rox-2.6-nostrip.patch20
-rw-r--r--rox-base/rox/rox-2.6-r1.ebuild126
-rw-r--r--rox-base/rox/rox-2.6-r2.ebuild129
-rw-r--r--rox-base/zeroinstall-injector/Manifest28
-rw-r--r--rox-base/zeroinstall-injector/files/digest-zeroinstall-injector-0.273
-rw-r--r--rox-base/zeroinstall-injector/files/global-0.275
-rw-r--r--rox-base/zeroinstall-injector/files/gpgInfo/pubring.gpgbin0 -> 911 bytes
-rw-r--r--rox-base/zeroinstall-injector/files/gpgInfo/secring.gpg0
-rw-r--r--rox-base/zeroinstall-injector/files/gpgInfo/trustdb.gpgbin0 -> 1240 bytes
-rw-r--r--rox-base/zeroinstall-injector/files/zeroinstall-injector-0.27-local_feed.patch121
-rw-r--r--rox-base/zeroinstall-injector/zeroinstall-injector-0.27.ebuild65
17 files changed, 736 insertions, 0 deletions
diff --git a/rox-base/pager/pager-1.1-r2.ebuild b/rox-base/pager/pager-1.1-r2.ebuild
new file mode 100644
index 0000000..04dec3a
--- /dev/null
+++ b/rox-base/pager/pager-1.1-r2.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/rox-base/pager/pager-1.1-r1.ebuild,v 1.2 2007/02/09 21:58:17 opfer Exp $
+
+ROX_CLIB_VER=2.1.7
+inherit rox eutils
+
+DESCRIPTION="Pager - A pager applet for ROX-Filer"
+HOMEPAGE="http://rox.sourceforge.net/"
+SRC_URI="mirror://sourceforge/rox/${P}.tar.bz2"
+LICENSE="GPL-2"
+
+SLOT="0"
+KEYWORDS=""
+IUSE=""
+
+RDEPEND=">=x11-libs/libwnck-2.4.0"
+
+DEPEND="${RDEPEND}
+ >=dev-util/pkgconfig-0.20"
+
+APPNAME=Pager
+APPNAME_COLLISION=True
+ZEROINSTALL_STRIP_REQUIRES=True
+
diff --git a/rox-base/rox-clib/rox-clib-2.1.9-r1.ebuild b/rox-base/rox-clib/rox-clib-2.1.9-r1.ebuild
new file mode 100644
index 0000000..b7ff00c
--- /dev/null
+++ b/rox-base/rox-clib/rox-clib-2.1.9-r1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/rox-base/rox-clib/rox-clib-2.1.9.ebuild,v 1.2 2007/02/09 22:02:10 opfer Exp $
+
+inherit multilib
+
+MY_PN="ROX-CLib"
+DESCRIPTION="A library for ROX applications written in C."
+HOMEPAGE="http://rox.sourceforge.net/"
+SRC_URI="http://www.kerofin.demon.co.uk/rox/${MY_PN}-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+RDEPEND=">=x11-libs/gtk+-2.0.1
+ >=dev-libs/libxml2-2.4.0"
+
+DEPEND="$RDEPEND
+ >=dev-util/pkgconfig-0.20"
+
+S=${WORKDIR}/ROX-CLib
+APPNAME=${MY_PN}
+
+src_compile() {
+ chmod 0755 AppRun
+
+ # Most rox self-compiles have a 'read' call to wait for the user to
+ # press return if the compile fails.
+ # Find and remove this:
+ sed -i.bak -e 's/\<read WAIT\>/#read/' AppRun
+
+ ./AppRun --compile || die "Could not make ROX-CLib. Sorry."
+
+ # Restore the original AppRun
+ mv AppRun.bak AppRun
+}
+
+src_install() {
+ local baselibdir="/usr/$(get_libdir)"
+ # clean up source instead of remove it!
+ ( cd src && make clean )
+
+ # remove silly .cvs files
+ find . -name '.cvs*' | xargs rm -f >/dev/null 2>&1
+ dodoc ${baselibdir}/${APPNAME}
+ dodir ${baselibdir}/${APPNAME}
+ cp -r . ${D}${baselibdir}/${APPNAME}
+ (
+ cd Help
+ dodoc Authors Changes ToDo COPYING README Versions
+ )
+
+ #finally link the html and latex dirs
+ #cd ${D}/usr/share/doc/${P}
+ #ln -s ${baselibdir}/${APPNAME}/Help/rox-clib.html rox-clib.html
+ #ln -s ${baselibdir}/${APPNAME}/Help/libdir.html libdir.html
+ #ln -s ${baselibdir}/${APPNAME}/Help/html html
+}
diff --git a/rox-base/rox-clib/rox-clib-2.1.9-r2.ebuild b/rox-base/rox-clib/rox-clib-2.1.9-r2.ebuild
new file mode 100644
index 0000000..a021159
--- /dev/null
+++ b/rox-base/rox-clib/rox-clib-2.1.9-r2.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/rox-base/rox-clib/rox-clib-2.1.9.ebuild,v 1.2 2007/02/09 22:02:10 opfer Exp $
+
+inherit multilib 0install
+
+MY_PN="ROX-CLib"
+DESCRIPTION="A library for ROX applications written in C."
+HOMEPAGE="http://rox.sourceforge.net/"
+SRC_URI="http://www.kerofin.demon.co.uk/rox/${MY_PN}-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS=""
+IUSE=""
+
+RDEPEND=">=x11-libs/gtk+-2.0.1
+ >=dev-libs/libxml2-2.4.0"
+
+DEPEND="$RDEPEND
+ >=dev-util/pkgconfig-0.20"
+
+S=${WORKDIR}/ROX-CLib
+APPNAME=${MY_PN}
+
+ZEROINSTALL_STRIP_REQUIRES=True
+
+src_compile() {
+ chmod 0755 AppRun
+
+ # Most rox self-compiles have a 'read' call to wait for the user to
+ # press return if the compile fails.
+ # Find and remove this:
+ sed -i.bak -e 's/\<read WAIT\>/#read/' AppRun
+
+ ./AppRun --compile || die "Could not make ROX-CLib. Sorry."
+
+ # Restore the original AppRun
+ mv AppRun.bak AppRun
+}
+
+src_install() {
+ local baselibdir="/usr/$(get_libdir)"
+ # clean up source instead of remove it!
+ ( cd src && make clean )
+ # remove silly .cvs files
+ find . -name '.cvs*' | xargs rm -f >/dev/null 2>&1
+ dodoc ${baselibdir}/${APPNAME}
+ dodir ${baselibdir}/${APPNAME}
+ cp -r . ${D}${baselibdir}/${APPNAME}
+ (
+ cd Help
+ dodoc Authors Changes ToDo COPYING README Versions
+ )
+ #finally link the html and latex dirs
+ #cd ${D}/usr/share/doc/${P}
+ #ln -s ${baselibdir}/${APPNAME}/Help/rox-clib.html rox-clib.html
+ #ln -s ${baselibdir}/${APPNAME}/Help/libdir.html libdir.html
+ #ln -s ${baselibdir}/${APPNAME}/Help/html html
+
+ 0install_local_feed ${APPNAME}.xml "${baselibdir}/${APPNAME}"
+}
diff --git a/rox-base/rox-lib/files/rox-lib-2.0.3-nosvg.patch b/rox-base/rox-lib/files/rox-lib-2.0.3-nosvg.patch
new file mode 100644
index 0000000..eff2aa3
--- /dev/null
+++ b/rox-base/rox-lib/files/rox-lib-2.0.3-nosvg.patch
@@ -0,0 +1,18 @@
+Index: ROX-Lib2/python/rox/__init__.py
+===================================================================
+--- ROX-Lib2/python/rox/__init__.py (revision 4953)
++++ ROX-Lib2/python/rox/__init__.py (working copy)
+@@ -197,8 +197,11 @@
+ try:
+ g.window_set_default_icon_list(g.gdk.pixbuf_new_from_file(_icon_path))
+ except:
+- # Older pygtk
+- _window_icon = g.gdk.pixbuf_new_from_file(_icon_path)
++ try:
++ # Older pygtk
++ _window_icon = g.gdk.pixbuf_new_from_file(_icon_path)
++ except:
++ pass
+ del _icon_path
+
+ class Window(g.Window):
diff --git a/rox-base/rox-lib/rox-lib-2.0.3-r3.ebuild b/rox-base/rox-lib/rox-lib-2.0.3-r3.ebuild
new file mode 100644
index 0000000..85b1a0d
--- /dev/null
+++ b/rox-base/rox-lib/rox-lib-2.0.3-r3.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/rox-base/rox-lib/rox-lib-2.0.3-r2.ebuild,v 1.1 2007/02/13 17:03:46 lack Exp $
+
+NEED_PYTHON="2.3"
+inherit python eutils multilib
+
+MY_PN="rox-lib2"
+DESCRIPTION="ROX-Lib2 - Shared code for ROX applications by Thomas Leonard"
+HOMEPAGE="http://rox.sourceforge.net/desktop/ROX-Lib"
+SRC_URI="mirror://sourceforge/rox/${MY_PN}-${PV}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+RDEPEND=">=rox-base/rox-2.2.0
+ >=dev-python/pygtk-2.8.2"
+
+S=${WORKDIR}/${MY_PN}-${PV}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}/${P}-nosvg.patch"
+}
+
+src_install() {
+ local baselibdir="/usr/$(get_libdir)"
+ dodir ${baselibdir}
+ cp -r ROX-Lib2/ ${D}${baselibdir}
+ python_mod_optimize ${D}${baselibdir}/ROX-Lib2/ >/dev/null 2>&1
+ dodir /usr/share/doc/
+ dosym ${baselibdir}/ROX-Lib2/Help /usr/share/doc/${P}
+}
diff --git a/rox-base/rox-lib/rox-lib-2.0.3-r4.ebuild b/rox-base/rox-lib/rox-lib-2.0.3-r4.ebuild
new file mode 100644
index 0000000..1e20348
--- /dev/null
+++ b/rox-base/rox-lib/rox-lib-2.0.3-r4.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/rox-base/rox-lib/rox-lib-2.0.3-r2.ebuild,v 1.1 2007/02/13 17:03:46 lack Exp $
+
+NEED_PYTHON="2.3"
+inherit python eutils 0install multilib
+
+MY_PN="rox-lib2"
+DESCRIPTION="ROX-Lib2 - Shared code for ROX applications by Thomas Leonard"
+HOMEPAGE="http://rox.sourceforge.net/desktop/ROX-Lib"
+SRC_URI="mirror://sourceforge/rox/${MY_PN}-${PV}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS=""
+IUSE=""
+
+RDEPEND=">=rox-base/rox-2.2.0
+ >=dev-python/pygtk-2.8.2"
+
+S=${WORKDIR}/${MY_PN}-${PV}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}/${P}-nosvg.patch"
+}
+
+src_install() {
+ local baselibdir="/usr/$(get_libdir)"
+ dodir ${baselibdir}
+ cp -r ROX-Lib2/ ${D}${baselibdir}
+ python_mod_optimize ${D}${baselibdir}/ROX-Lib2/ >/dev/null 2>&1
+ dodir /usr/share/doc/
+ dosym ${baselibdir}/ROX-Lib2/Help /usr/share/doc/${P}
+
+ 0install_local_feed ROX-Lib2/ROX-Lib2.xml ${baselibdir}/ROX-Lib2
+}
diff --git a/rox-base/rox/files/rox-2.6-nostrip.patch b/rox-base/rox/files/rox-2.6-nostrip.patch
new file mode 100644
index 0000000..2a63ce7
--- /dev/null
+++ b/rox-base/rox/files/rox-2.6-nostrip.patch
@@ -0,0 +1,20 @@
+Index: ROX-Filer/src/Makefile.in
+===================================================================
+--- ROX-Filer/src/Makefile.in (revision 4834)
++++ ROX-Filer/src/Makefile.in (working copy)
+@@ -51,10 +51,12 @@
+ ${PROG}: ${OBJECTS}
+ ${CC} -o "${PROG}" ${OBJECTS} ${LDFLAGS}
+ mv "${PROG}" "${PLATFORM_DIR}"
++
++${PROG}.dbg: ${PROG}
+ -(cd "${PLATFORM_DIR}" && \
+- objcopy --only-keep-debug ROX-Filer ROX-Filer.dbg && \
+- strip ROX-Filer && \
+- objcopy --add-gnu-debuglink=ROX-Filer.dbg ROX-Filer)
++ objcopy --only-keep-debug ${PROG} ${PROG}.dbg && \
++ strip ${PROG} && \
++ objcopy --add-gnu-debuglink=${PROG}.dbg ${PROG})
+
+ clean:
+ rm -f *.o Makefile.bak
diff --git a/rox-base/rox/rox-2.6-r1.ebuild b/rox-base/rox/rox-2.6-r1.ebuild
new file mode 100644
index 0000000..c8f6dea
--- /dev/null
+++ b/rox-base/rox/rox-2.6-r1.ebuild
@@ -0,0 +1,126 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/rox-base/rox/rox-2.6.ebuild,v 1.6 2007/04/23 05:46:06 opfer Exp $
+
+inherit eutils multilib
+
+MY_P="rox-filer-${PV}"
+S="${WORKDIR}/${MY_P}"
+
+DESCRIPTION="ROX is a desktop environment and filer based on RISC OS."
+HOMEPAGE="http://rox.sourceforge.net/"
+SRC_URI="mirror://sourceforge/rox/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ppc ~sparc ~x86"
+IUSE="svg"
+
+RDEPEND=">=x11-libs/gtk+-2.4
+ >=dev-libs/glib-2.2
+ >=dev-libs/libxml2-2.4.23
+ >=x11-misc/shared-mime-info-0.14
+ svg? ( gnome-base/librsvg )"
+
+DEPEND="${RDEPEND}
+ >=dev-util/pkgconfig-0.20"
+
+PDEPEND="rox-base/mime-editor"
+
+APPNAME="ROX-Filer"
+APPDIR="/usr/$(get_libdir)/rox"
+LIBDIR="/usr/$(get_libdir)/"
+WRAPPERNAME="rox"
+MIMEDIR="/usr/share/mime"
+MIMECONFDIR="/etc/xdg/rox.sourceforge.net"
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+ epatch "${FILESDIR}"/${P}-nostrip.patch
+}
+
+src_compile() {
+
+ cd ${APPNAME}
+
+ # Most rox self-compiles have a 'read' call to wait for the user to
+ # press return if the compile fails.
+ # Find and remove this:
+ sed -i.bak -e 's/\<read WAIT\>/#read/' AppRun
+
+ ./AppRun --compile || die "make failed"
+ (cd src; make clean) > /dev/null
+ # don't need these directories anymore
+ if [ -n "${KEEP_SRC}" ]; then
+ (cd src; make clean) > /dev/null
+ else
+ rm -rf src
+ fi
+ rm -fr build
+
+ # Restore the original AppRun
+ mv AppRun.bak AppRun
+}
+
+# new streamlined install
+
+src_install() {
+ doman rox.1
+
+ dodir ${APPDIR}
+ cp -r ${APPNAME}/ ${D}/${APPDIR}
+
+ # add documentation to be proper
+ ( cd ${APPNAME}/Help
+ dodoc Changes COPYING README README-es TODO
+ )
+
+ # install shell script
+ dodir /usr/bin
+
+ cat >"${D}/usr/bin/${WRAPPERNAME}" <<EOF
+#!/bin/sh
+if [[ "\${LIBDIRPATH}" ]]; then
+ export LIBDIRPATH="\${LIBDIRPATH}:${LIBDIR}"
+else
+ export LIBDIRPATH="${LIBDIR}"
+fi
+
+if [[ "\${APPDIRPATH}" ]]; then
+ export APPDIRPATH="\${APPDIRPATH}:${APPDIR}"
+else
+ export APPDIRPATH="${APPDIR}"
+fi
+exec "${APPDIR}/${APPNAME}/AppRun" "\$@"
+EOF
+
+ cat >"${D}/usr/bin/${WRAPPERNAME}uri" <<EOF
+#!/bin/sh
+exec "${APPDIR}/${APPNAME}/AppRun" -U "\$@"
+EOF
+
+ chmod 0755 ${D}/usr/bin/${WRAPPERNAME}
+ chmod 0755 ${D}/usr/bin/${WRAPPERNAME}uri
+
+ # install rox.xml
+ insinto ${MIMEDIR}/packages
+ doins rox.xml
+
+ # CHOICES system is gone. Now use XDG only
+ # these are shell scripts and must be +x.
+ exeinto ${MIMECONFDIR}/MIME-types
+ doexe Choices/MIME-types/*
+
+ insinto /usr/share/pixmaps
+ newins ${APPNAME}/.DirIcon ${APPNAME}.png
+
+ make_desktop_entry ${WRAPPERNAME} ${APPNAME} ${APPNAME}.png "System;Utility;Core;ROX"
+}
+
+pkg_postinst() {
+ update-mime-database ${MIMEDIR}
+ einfo "${APPNAME} has been installed in ${APPDIR}."
+ einfo "To run, you may type ${WRAPPERNAME} at a prompt (within a WM) or"
+ einfo "add it to an .xinit or other script during WM startup."
+}
diff --git a/rox-base/rox/rox-2.6-r2.ebuild b/rox-base/rox/rox-2.6-r2.ebuild
new file mode 100644
index 0000000..1f87163
--- /dev/null
+++ b/rox-base/rox/rox-2.6-r2.ebuild
@@ -0,0 +1,129 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/rox-base/rox/rox-2.6.ebuild,v 1.6 2007/04/23 05:46:06 opfer Exp $
+
+inherit eutils multilib 0install
+
+MY_P="rox-filer-${PV}"
+S="${WORKDIR}/${MY_P}"
+
+DESCRIPTION="ROX is a desktop environment and filer based on RISC OS."
+HOMEPAGE="http://rox.sourceforge.net/"
+SRC_URI="mirror://sourceforge/rox/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS=""
+IUSE="svg"
+
+RDEPEND=">=x11-libs/gtk+-2.4
+ >=dev-libs/glib-2.2
+ >=dev-libs/libxml2-2.4.23
+ >=x11-misc/shared-mime-info-0.14
+ svg? ( gnome-base/librsvg )
+ rox-base/zeroinstall-injector"
+
+DEPEND="${RDEPEND}
+ >=dev-util/pkgconfig-0.20"
+
+PDEPEND="rox-base/mime-editor"
+
+APPNAME="ROX-Filer"
+APPDIR="/usr/$(get_libdir)/rox"
+LIBDIR="/usr/$(get_libdir)/"
+WRAPPERNAME="rox"
+MIMEDIR="/usr/share/mime"
+MIMECONFDIR="/etc/xdg/rox.sourceforge.net"
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+ epatch "${FILESDIR}"/${P}-nostrip.patch
+}
+
+src_compile() {
+
+ cd ${APPNAME}
+
+ # Most rox self-compiles have a 'read' call to wait for the user to
+ # press return if the compile fails.
+ # Find and remove this:
+ sed -i.bak -e 's/\<read WAIT\>/#read/' AppRun
+
+ ./AppRun --compile || die "make failed"
+ (cd src; make clean) > /dev/null
+ # don't need these directories anymore
+ if [ -n "${KEEP_SRC}" ]; then
+ (cd src; make clean) > /dev/null
+ else
+ rm -rf src
+ fi
+ rm -fr build
+
+ # Restore the original AppRun
+ mv AppRun.bak AppRun
+}
+
+# new streamlined install
+
+src_install() {
+ doman rox.1
+
+ dodir ${APPDIR}
+ cp -r ${APPNAME}/ ${D}/${APPDIR}
+
+ # add documentation to be proper
+ ( cd ${APPNAME}/Help
+ dodoc Changes COPYING README README-es TODO
+ )
+
+ # install shell script
+ dodir /usr/bin
+
+ cat >"${D}/usr/bin/${WRAPPERNAME}" <<EOF
+#!/bin/sh
+if [[ "\${LIBDIRPATH}" ]]; then
+ export LIBDIRPATH="\${LIBDIRPATH}:${LIBDIR}"
+else
+ export LIBDIRPATH="${LIBDIR}"
+fi
+
+if [[ "\${APPDIRPATH}" ]]; then
+ export APPDIRPATH="\${APPDIRPATH}:${APPDIR}"
+else
+ export APPDIRPATH="${APPDIR}"
+fi
+exec "${APPDIR}/${APPNAME}/AppRun" "\$@"
+EOF
+
+ cat >"${D}/usr/bin/${WRAPPERNAME}uri" <<EOF
+#!/bin/sh
+exec "${APPDIR}/${APPNAME}/AppRun" -U "\$@"
+EOF
+
+ chmod 0755 ${D}/usr/bin/${WRAPPERNAME}
+ chmod 0755 ${D}/usr/bin/${WRAPPERNAME}uri
+
+ # install rox.xml
+ insinto ${MIMEDIR}/packages
+ doins rox.xml
+
+ # CHOICES system is gone. Now use XDG only
+ # these are shell scripts and must be +x.
+ exeinto ${MIMECONFDIR}/MIME-types
+ doexe Choices/MIME-types/*
+
+ insinto /usr/share/pixmaps
+ newins ${APPNAME}/.DirIcon ${APPNAME}.png
+
+ make_desktop_entry ${WRAPPERNAME} ${APPNAME} ${APPNAME}.png "System;Utility;Core;ROX"
+
+ 0install_local_feed "${APPNAME}.xml" "${APPDIR}/${APPNAME}"
+}
+
+pkg_postinst() {
+ update-mime-database ${MIMEDIR}
+ einfo "${APPNAME} has been installed in ${APPDIR}."
+ einfo "To run, you may type ${WRAPPERNAME} at a prompt (within a WM) or"
+ einfo "add it to an .xinit or other script during WM startup."
+}
diff --git a/rox-base/zeroinstall-injector/Manifest b/rox-base/zeroinstall-injector/Manifest
new file mode 100644
index 0000000..f0ee967
--- /dev/null
+++ b/rox-base/zeroinstall-injector/Manifest
@@ -0,0 +1,28 @@
+AUX global-0.27 73 RMD160 b6fb0f8dfb500500d3b2719224dabf4c8160aed2 SHA1 a1e2a0d9b60ec2a02ad4bed98ee16ad7b9966132 SHA256 e081270dcfa04acf9da2e363c55be02c02b719ec2616b875a3f9118a5778423e
+MD5 a6cb42c31e5b742d67f4abc5e23481ee files/global-0.27 73
+RMD160 b6fb0f8dfb500500d3b2719224dabf4c8160aed2 files/global-0.27 73
+SHA256 e081270dcfa04acf9da2e363c55be02c02b719ec2616b875a3f9118a5778423e files/global-0.27 73
+AUX gpgInfo/pubring.gpg 911 RMD160 c155ac32769a7588ce4cefdb0042e88e2210e70d SHA1 465084f9f17a060f46d749bc9604b767125bc636 SHA256 4006d375e1669ee5b5352794777f0e1e905c6aed0cf685822a952c7196ab2052
+MD5 5c5e7dd2f87fbcd4cbd2a4bb09d944af files/gpgInfo/pubring.gpg 911
+RMD160 c155ac32769a7588ce4cefdb0042e88e2210e70d files/gpgInfo/pubring.gpg 911
+SHA256 4006d375e1669ee5b5352794777f0e1e905c6aed0cf685822a952c7196ab2052 files/gpgInfo/pubring.gpg 911
+AUX gpgInfo/secring.gpg 0 RMD160 9c1185a5c5e9fc54612808977ee8f548b2258d31 SHA1 da39a3ee5e6b4b0d3255bfef95601890afd80709 SHA256 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
+MD5 d41d8cd98f00b204e9800998ecf8427e files/gpgInfo/secring.gpg 0
+RMD160 9c1185a5c5e9fc54612808977ee8f548b2258d31 files/gpgInfo/secring.gpg 0
+SHA256 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 files/gpgInfo/secring.gpg 0
+AUX gpgInfo/trustdb.gpg 1240 RMD160 d44385143431ac246b9f7aff85811cb673fc3be5 SHA1 de2e7f3e491087b9568d2d54e2e30fed053d81fb SHA256 4abab858a3b869c3ea0aadab45e99e2d0019fc4fe98a317177fbad7e4db7e94c
+MD5 6c68fc931a179f58525fcfdb56da019d files/gpgInfo/trustdb.gpg 1240
+RMD160 d44385143431ac246b9f7aff85811cb673fc3be5 files/gpgInfo/trustdb.gpg 1240
+SHA256 4abab858a3b869c3ea0aadab45e99e2d0019fc4fe98a317177fbad7e4db7e94c files/gpgInfo/trustdb.gpg 1240
+AUX zeroinstall-injector-0.27-local_feed.patch 4523 RMD160 0e4b4c4e558b66dff2e582c1fc002f7ff791c2bc SHA1 286b7588476a49b54b129bc409f3f52e0977c805 SHA256 f4f171da592e06a76024530c5217d8fd2ad1e2fa6158815779f8af31376032ea
+MD5 c007022076415ed52863823b69cf2cfe files/zeroinstall-injector-0.27-local_feed.patch 4523
+RMD160 0e4b4c4e558b66dff2e582c1fc002f7ff791c2bc files/zeroinstall-injector-0.27-local_feed.patch 4523
+SHA256 f4f171da592e06a76024530c5217d8fd2ad1e2fa6158815779f8af31376032ea files/zeroinstall-injector-0.27-local_feed.patch 4523
+DIST zeroinstall-injector-0.27.tar.gz.gpg 127113 RMD160 f93d87ae38c23eb73c7bc092d6a358932050ecf0 SHA1 b8f417d2174f17f1bfa3952bb319e112ba47af16 SHA256 9e2b532c61f1687f965bbbdd8f96c6aede6163fce2335b86b815b74f1d154761
+EBUILD zeroinstall-injector-0.27.ebuild 1805 RMD160 7512660da1082a745e171bfdddffaa0080b73648 SHA1 9f28e8fb3bb7eee0326b0462ab7a14ad83ae7b8f SHA256 57cbd574af4bc2c9d1f9db88d212a17a826052e1c1a34d3f65bb3b9c04af1a17
+MD5 db2725fdf5c3f2eb4c67d97bc3ea0d47 zeroinstall-injector-0.27.ebuild 1805
+RMD160 7512660da1082a745e171bfdddffaa0080b73648 zeroinstall-injector-0.27.ebuild 1805
+SHA256 57cbd574af4bc2c9d1f9db88d212a17a826052e1c1a34d3f65bb3b9c04af1a17 zeroinstall-injector-0.27.ebuild 1805
+MD5 b0fffbea1faf95e435aa67cba14972a4 files/digest-zeroinstall-injector-0.27 289
+RMD160 00e180c2a3c61bd3154702b47e9fa1e7632be1ef files/digest-zeroinstall-injector-0.27 289
+SHA256 5d32564926e8b07092190403b10bb6eacb63dc93726237ab0939107635456772 files/digest-zeroinstall-injector-0.27 289
diff --git a/rox-base/zeroinstall-injector/files/digest-zeroinstall-injector-0.27 b/rox-base/zeroinstall-injector/files/digest-zeroinstall-injector-0.27
new file mode 100644
index 0000000..b3eee05
--- /dev/null
+++ b/rox-base/zeroinstall-injector/files/digest-zeroinstall-injector-0.27
@@ -0,0 +1,3 @@
+MD5 124b5f5794c6950c53c11df9c538ac3c zeroinstall-injector-0.27.tar.gz.gpg 127113
+RMD160 f93d87ae38c23eb73c7bc092d6a358932050ecf0 zeroinstall-injector-0.27.tar.gz.gpg 127113
+SHA256 9e2b532c61f1687f965bbbdd8f96c6aede6163fce2335b86b815b74f1d154761 zeroinstall-injector-0.27.tar.gz.gpg 127113
diff --git a/rox-base/zeroinstall-injector/files/global-0.27 b/rox-base/zeroinstall-injector/files/global-0.27
new file mode 100644
index 0000000..8db0727
--- /dev/null
+++ b/rox-base/zeroinstall-injector/files/global-0.27
@@ -0,0 +1,5 @@
+[global]
+freshness = -1
+help_with_testing = False
+network_use = minimal
+
diff --git a/rox-base/zeroinstall-injector/files/gpgInfo/pubring.gpg b/rox-base/zeroinstall-injector/files/gpgInfo/pubring.gpg
new file mode 100644
index 0000000..e0de7b9
--- /dev/null
+++ b/rox-base/zeroinstall-injector/files/gpgInfo/pubring.gpg
Binary files differ
diff --git a/rox-base/zeroinstall-injector/files/gpgInfo/secring.gpg b/rox-base/zeroinstall-injector/files/gpgInfo/secring.gpg
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/rox-base/zeroinstall-injector/files/gpgInfo/secring.gpg
diff --git a/rox-base/zeroinstall-injector/files/gpgInfo/trustdb.gpg b/rox-base/zeroinstall-injector/files/gpgInfo/trustdb.gpg
new file mode 100644
index 0000000..642e546
--- /dev/null
+++ b/rox-base/zeroinstall-injector/files/gpgInfo/trustdb.gpg
Binary files differ
diff --git a/rox-base/zeroinstall-injector/files/zeroinstall-injector-0.27-local_feed.patch b/rox-base/zeroinstall-injector/files/zeroinstall-injector-0.27-local_feed.patch
new file mode 100644
index 0000000..a7fa7dc
--- /dev/null
+++ b/rox-base/zeroinstall-injector/files/zeroinstall-injector-0.27-local_feed.patch
@@ -0,0 +1,121 @@
+diff -ur zeroinstall-orig/0launch-gui/properties.py zeroinstall/0launch-gui/properties.py
+--- zeroinstall-orig/0launch-gui/properties.py 2007-04-08 04:50:32.000000000 -0600
++++ zeroinstall/0launch-gui/properties.py 2007-05-07 09:48:41.000000000 -0600
+@@ -263,7 +263,13 @@
+ model, miter = sel.get_selected()
+ if not miter: return # build in progress
+ iface = model[miter][Feeds.URI]
+- self.remove_feed_button.set_sensitive(iface != self.interface.uri)
++ # Only enable removing user_override feeds
++ enable_remove = False
++ for x in self.interface.feeds:
++ if x.uri == iface:
++ if x.user_override:
++ enable_remove = True
++ self.remove_feed_button.set_sensitive( enable_remove )
+ self.description.set_details(iface_cache.get_interface(iface))
+
+ def updated(self):
+diff -ur zeroinstall-orig/injector/model.py zeroinstall/injector/model.py
+--- zeroinstall-orig/injector/model.py 2007-04-06 13:22:30.000000000 -0600
++++ zeroinstall/injector/model.py 2007-05-07 09:48:41.000000000 -0600
+@@ -70,6 +70,7 @@
+ developer = Stability(10, 'developer', 'Work-in-progress - bugs likely')
+ testing = Stability(20, 'testing', 'Stability unknown - please test!')
+ stable = Stability(30, 'stable', 'Tested - no serious problems found')
++packaged = Stability(35, 'packaged', 'Supplied by the local package manager')
+ preferred = Stability(40, 'preferred', 'Best of all - must be set manually')
+
+ class Restriction(object):
+diff -ur zeroinstall-orig/injector/reader.py zeroinstall/injector/reader.py
+--- zeroinstall-orig/injector/reader.py 2007-04-07 02:47:20.000000000 -0600
++++ zeroinstall/injector/reader.py 2007-05-07 12:33:27.000000000 -0600
+@@ -41,7 +41,7 @@
+ before = parse_version(e.getAttribute('before'))))
+
+ def update_from_cache(interface):
+- """Read a cached interface and any user overrides.
++ """Read a cached interface and any local feeds or user overrides.
+ @param interface: the interface object to update
+ @type interface: L{model.Interface}
+ @return: True if cached version and user overrides loaded OK.
+@@ -61,7 +61,11 @@
+ debug("Loading cached information for %s from %s", interface, cached)
+ update(interface, cached)
+
+- update_user_overrides(interface)
++ if update_local_feeds(interface):
++ cached = True
++
++ if update_user_overrides(interface):
++ cached = True
+
+ # Special case: add our fall-back local copy of the injector as a feed
+ if interface.uri == injector_gui_uri:
+@@ -70,6 +74,49 @@
+
+ return bool(cached)
+
++def update_local_feeds(interface):
++ """Update an interface with system-supplied local feeds.
++ @param interface: the interface object to update
++ @type interface: L{model.Interface}
++ @return: True if a local feed was loaded.
++ @rtype: bool"""
++ debug( "update_local_feeds for %s" % escape(interface.uri) )
++ path = basedir.load_first_config(config_site, 'local_feeds',
++ escape(interface.uri))
++
++ if not path:
++ return False
++
++ debug( "Adding system-supplied local_feed from '%s'" % path )
++
++ # Ensure the local feed matches the specified interface
++ root = qdom.parse(file(path))
++ if root.getAttribute('uri') != interface.uri:
++ match = False
++ for item in root.childNodes:
++ if item.uri != XMLNS_IFACE: continue
++ if item.name == 'feed-for':
++ if interface.uri == item.getAttribute('interface'):
++ match = True
++ break
++ if not match:
++ raise InvalidInterface('Local feed does not match specified interface')
++
++ realpath = path
++ linkcount = 0
++ while os.path.islink(realpath):
++ # Add the "real" location, not the link
++ oldpath = realpath
++ realpath = os.readlink(oldpath)
++ if not realpath.startswith('/'):
++ realpath = os.path.join(os.path.dirname(oldpath), realpath)
++ linkcount += 1
++ if linkcount > 100:
++ raise InvalidInterface('Local feed symlink more than 100 levels deep, skipping')
++ interface.feeds.append(Feed(realpath, None, False))
++
++ return True
++
+ def update_user_overrides(interface):
+ """Update an interface with user-supplied information.
+ @param interface: the interface object to update
+@@ -77,7 +124,7 @@
+ user = basedir.load_first_config(config_site, config_prog,
+ 'user_overrides', escape(interface.uri))
+ if not user:
+- return
++ return False
+
+ root = qdom.parse(file(user))
+
+@@ -113,6 +160,7 @@
+ if not feed_src:
+ raise InvalidInterface('Missing "src" attribute in <feed>')
+ interface.feeds.append(Feed(feed_src, item.getAttribute('arch'), True))
++ return True
+
+ def check_readable(interface_uri, source):
+ """Test whether an interface file is valid.
diff --git a/rox-base/zeroinstall-injector/zeroinstall-injector-0.27.ebuild b/rox-base/zeroinstall-injector/zeroinstall-injector-0.27.ebuild
new file mode 100644
index 0000000..1018641
--- /dev/null
+++ b/rox-base/zeroinstall-injector/zeroinstall-injector-0.27.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit distutils
+
+DESCRIPTION="Zeroinstall Injector allows regular users to install software themselves"
+HOMEPAGE="http://0install.net/"
+SRC_URI="mirror://sourceforge/zero-install/${P}.tar.gz.gpg"
+
+LICENSE=""
+SLOT="0"
+KEYWORDS=""
+IUSE=""
+
+DEPEND="app-crypt/gnupg"
+RDEPEND=">=dev-python/pygtk-2.0
+ ${DEPEND}"
+
+# If we decide to do RESTRICT="fetch" instead of trying gpg
+#pkg_nofetch() {
+# einfo "Zeroinstall is distributed only in gpg-signed tarballs, which ebuilds"
+# einfo "cannot currently handle. You must:"
+# einfo " 1. Download the file ${P}.tar.gz.gpg from"
+# einfo " http://downloads.sourceforge.net/zero-install/zeroinstall-injector-0.27.tar.gz.gpg"
+# einfo " 2. Verify the signature:"
+# einfo " gpg ${P}.tar.gz.gpg"
+# einfo " It has the fingerprint 9242 9807 C985 3C07 44A6 8B9A AE07 8280 59A5 3CC1"
+# einfo " 3. Put the resulting ${P}.tar.gz in ${DISTDIR}."
+#}
+
+src_unpack() {
+ local GPGSRC=${P}.tar.gz.gpg
+ local GPGHOME="${WORKDIR}/.gnupg"
+ local TARSRC=${P}.tar.gz
+
+ # Un-gpg-sign the downloaded archive
+ cp "${DISTDIR}/${GPGSRC}" "${WORKDIR}"
+ cp -r "${FILESDIR}/gpgInfo" "${GPGHOME}"
+ chmod 700 "${GPGHOME}"
+ cd "${WORKDIR}"
+ gpg -q --homedir "${GPGHOME}" ${GPGSRC} || die "GPG validation failed"
+ [ -e ${TARSRC} ] || die "GPG unwrap failed"
+
+ # Unpack the unsigned archive
+ tar -xzf ${TARSRC} || die "Tar unpack failed"
+
+ # Patches
+ cd "${S}"
+ epatch "${FILESDIR}/${P}-local_feed.patch"
+}
+
+src_install() {
+ distutils_src_install
+
+ exeinto "/usr/bin/"
+ doexe "${FILESDIR}/0distutils"
+
+ local BASE_XDG_CONFIG="/etc/xdg/0install.net"
+
+ insinto "${BASE_XDG_CONFIG}/injector"
+ newins "${FILESDIR}/global-${PV}" global
+ dodir "${BASE_XDG_CONFIG}/local_feeds"
+}
+