From 3a1a087487e2eeeb9f97e800d3faab1132a2fd51 Mon Sep 17 00:00:00 2001 From: Jim Ramsay Date: Wed, 20 Jun 2007 19:07:22 +0000 Subject: New release from upstread that has the official implementation of native feeds svn path=/trunk/overlay/; revision=9 --- rox-base/zeroinstall-injector/Manifest | 7 +- .../files/digest-zeroinstall-injector-0.27 | 3 - rox-base/zeroinstall-injector/files/global-0.27 | 5 - rox-base/zeroinstall-injector/files/global.cfg | 5 + .../zeroinstall-injector-0.27-local_feed.patch | 121 --------------------- .../zeroinstall-injector-0.27.ebuild | 65 ----------- .../zeroinstall-injector-0.29.ebuild | 68 ++++++++++++ 7 files changed, 76 insertions(+), 198 deletions(-) delete mode 100644 rox-base/zeroinstall-injector/files/digest-zeroinstall-injector-0.27 delete mode 100644 rox-base/zeroinstall-injector/files/global-0.27 create mode 100644 rox-base/zeroinstall-injector/files/global.cfg delete mode 100644 rox-base/zeroinstall-injector/files/zeroinstall-injector-0.27-local_feed.patch delete mode 100644 rox-base/zeroinstall-injector/zeroinstall-injector-0.27.ebuild create mode 100644 rox-base/zeroinstall-injector/zeroinstall-injector-0.29.ebuild diff --git a/rox-base/zeroinstall-injector/Manifest b/rox-base/zeroinstall-injector/Manifest index 8c1794c..ad12331 100644 --- a/rox-base/zeroinstall-injector/Manifest +++ b/rox-base/zeroinstall-injector/Manifest @@ -1,7 +1,6 @@ -AUX global-0.27 73 RMD160 b6fb0f8dfb500500d3b2719224dabf4c8160aed2 SHA1 a1e2a0d9b60ec2a02ad4bed98ee16ad7b9966132 SHA256 e081270dcfa04acf9da2e363c55be02c02b719ec2616b875a3f9118a5778423e +AUX global.cfg 73 RMD160 b6fb0f8dfb500500d3b2719224dabf4c8160aed2 SHA1 a1e2a0d9b60ec2a02ad4bed98ee16ad7b9966132 SHA256 e081270dcfa04acf9da2e363c55be02c02b719ec2616b875a3f9118a5778423e AUX gpgInfo/pubring.gpg 911 RMD160 c155ac32769a7588ce4cefdb0042e88e2210e70d SHA1 465084f9f17a060f46d749bc9604b767125bc636 SHA256 4006d375e1669ee5b5352794777f0e1e905c6aed0cf685822a952c7196ab2052 AUX gpgInfo/secring.gpg 0 RMD160 9c1185a5c5e9fc54612808977ee8f548b2258d31 SHA1 da39a3ee5e6b4b0d3255bfef95601890afd80709 SHA256 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 AUX gpgInfo/trustdb.gpg 1240 RMD160 d44385143431ac246b9f7aff85811cb673fc3be5 SHA1 de2e7f3e491087b9568d2d54e2e30fed053d81fb SHA256 4abab858a3b869c3ea0aadab45e99e2d0019fc4fe98a317177fbad7e4db7e94c -AUX zeroinstall-injector-0.27-local_feed.patch 4523 RMD160 0e4b4c4e558b66dff2e582c1fc002f7ff791c2bc SHA1 286b7588476a49b54b129bc409f3f52e0977c805 SHA256 f4f171da592e06a76024530c5217d8fd2ad1e2fa6158815779f8af31376032ea -DIST zeroinstall-injector-0.27.tar.gz.gpg 127113 RMD160 f93d87ae38c23eb73c7bc092d6a358932050ecf0 SHA1 b8f417d2174f17f1bfa3952bb319e112ba47af16 SHA256 9e2b532c61f1687f965bbbdd8f96c6aede6163fce2335b86b815b74f1d154761 -EBUILD zeroinstall-injector-0.27.ebuild 1816 RMD160 175d7d63360cd4c9fdf49f8ff0c1990aa20a2e40 SHA1 be73d39f438bc32903a8d272a5f439b9ab1dcf75 SHA256 e6270c20e31c308beceb12d554acd50a96647af3978520108e71abf53d8be478 +DIST zeroinstall-injector-0.29.tar.gz.gpg 135138 RMD160 76a6e3b6d9a1da481556395f1b9551a76a85be61 SHA1 dfe1f0868e475b23bbc1a3b0cdf8d1a93aeccb56 SHA256 37705c9b16a11a71f5a0b3d86a3236fbc809c80197d7c01b6d2343820694969c +EBUILD zeroinstall-injector-0.29.ebuild 1899 RMD160 957d5ef515156a907264b6ce746631aa689d89c3 SHA1 dc8221228c753540cd8abde26ce5b6ea2b333288 SHA256 dfa1aedb879a0da8df4ec054d599694f952ec09191907133505c4f96005f8256 diff --git a/rox-base/zeroinstall-injector/files/digest-zeroinstall-injector-0.27 b/rox-base/zeroinstall-injector/files/digest-zeroinstall-injector-0.27 deleted file mode 100644 index b3eee05..0000000 --- a/rox-base/zeroinstall-injector/files/digest-zeroinstall-injector-0.27 +++ /dev/null @@ -1,3 +0,0 @@ -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 deleted file mode 100644 index 8db0727..0000000 --- a/rox-base/zeroinstall-injector/files/global-0.27 +++ /dev/null @@ -1,5 +0,0 @@ -[global] -freshness = -1 -help_with_testing = False -network_use = minimal - diff --git a/rox-base/zeroinstall-injector/files/global.cfg b/rox-base/zeroinstall-injector/files/global.cfg new file mode 100644 index 0000000..8db0727 --- /dev/null +++ b/rox-base/zeroinstall-injector/files/global.cfg @@ -0,0 +1,5 @@ +[global] +freshness = -1 +help_with_testing = False +network_use = minimal + 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 deleted file mode 100644 index a7fa7dc..0000000 --- a/rox-base/zeroinstall-injector/files/zeroinstall-injector-0.27-local_feed.patch +++ /dev/null @@ -1,121 +0,0 @@ -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 ') - 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 deleted file mode 100644 index 1034962..0000000 --- a/rox-base/zeroinstall-injector/zeroinstall-injector-0.27.ebuild +++ /dev/null @@ -1,65 +0,0 @@ -# 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="~x86 ~amd64" -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" -} - diff --git a/rox-base/zeroinstall-injector/zeroinstall-injector-0.29.ebuild b/rox-base/zeroinstall-injector/zeroinstall-injector-0.29.ebuild new file mode 100644 index 0000000..e1b6912 --- /dev/null +++ b/rox-base/zeroinstall-injector/zeroinstall-injector-0.29.ebuild @@ -0,0 +1,68 @@ +# 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="~x86 ~amd64" +IUSE="" + +DEPEND="app-crypt/gnupg" +RDEPEND=">=dev-python/pygtk-2.0 + ${DEPEND}" + +# If we decide to do RESTRICT="fetch" instead of trying gpg, this is what we +# would uncomment: +#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" + local BASE_XDG_DATA="/usr/share/0install.net" + + insinto "${BASE_XDG_CONFIG}/injector" + newins "${FILESDIR}/global.cfg" global + + dodir "${BASE_XDG_DATA}/native_feeds" +} + -- cgit v1.2.3-65-gdbad