From: Fabian Groffen Date: Mon, 27 Aug 2012 06:43:45 +0000 (+0200) Subject: Merge remote-tracking branch 'overlays-gentoo-org/master' into prefix X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=a7eefaa55f54e73995e5e0b893b285f905177a40;p=portage.git Merge remote-tracking branch 'overlays-gentoo-org/master' into prefix Conflicts: bin/dispatch-conf bin/ebuild-helpers/doins bin/ebuild-helpers/newbin bin/ebuild-helpers/newconfd bin/ebuild-helpers/newdoc bin/ebuild-helpers/newenvd bin/ebuild-helpers/newexe bin/ebuild-helpers/newinitd bin/ebuild-helpers/newins bin/ebuild-helpers/newlib.a bin/ebuild-helpers/newlib.so bin/ebuild-helpers/newman bin/ebuild-helpers/newsbin bin/emerge-webrsync bin/isolated-functions.sh bin/phase-helpers.sh --- a7eefaa55f54e73995e5e0b893b285f905177a40 diff --cc bin/dispatch-conf index de8d85db7,35979dbb2..d67187348 --- a/bin/dispatch-conf +++ b/bin/dispatch-conf @@@ -1,5 -1,5 +1,5 @@@ -#!/usr/bin/python -O +#!@PREFIX_PORTAGE_PYTHON@ -O - # Copyright 1999-2011 Gentoo Foundation + # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # diff --cc bin/ebuild-helpers/doins index b9c95ed0f,fd7793404..ca6b0bae4 --- a/bin/ebuild-helpers/doins +++ b/bin/ebuild-helpers/doins @@@ -1,8 -1,8 +1,8 @@@ -#!/bin/bash +#!@PORTAGE_BASH@ - # Copyright 1999-2011 Gentoo Foundation + # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -source "${PORTAGE_BIN_PATH:-/usr/lib/portage/bin}"/isolated-functions.sh +source "${PORTAGE_BIN_PATH:-@PORTAGE_BASE@/bin}"/isolated-functions.sh if [[ ${0##*/} == dodoc ]] ; then if [ $# -eq 0 ] ; then @@@ -38,18 -38,9 +38,18 @@@ if [[ ${INSDESTTREE#${ED}} != "${INSDES helpers_die "${0##*/} used with \${D} or \${ED}" exit 1 fi +# PREFIX LOCAL: check for usage with EPREFIX +if [[ ${INSDESTTREE#${EPREFIX}} != "${INSDESTTREE}" ]]; then + vecho "-------------------------------------------------------" 1>&2 + vecho "You should not use \${EPREFIX} with helpers." 1>&2 + vecho " --> ${INSDESTTREE}" 1>&2 + vecho "-------------------------------------------------------" 1>&2 + exit 1 +fi +# END PREFIX LOCAL case "$EAPI" in - 0|1|2|3|3_pre2) + 0|1|2|3) PRESERVE_SYMLINKS=n ;; *) diff --cc bin/ebuild-helpers/newins index 45c3e1871,2dc041d15..e9bf34b0c --- a/bin/ebuild-helpers/newins +++ b/bin/ebuild-helpers/newins @@@ -1,16 -1,13 +1,14 @@@ +#!@PORTAGE_BASH@ - # Copyright 1999-2011 Gentoo Foundation + #!/bin/bash + # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -source "${PORTAGE_BIN_PATH:-/usr/lib/portage/bin}"/isolated-functions.sh +source "${PORTAGE_BIN_PATH:-@PORTAGE_BASE@/bin}"/isolated-functions.sh - if [[ -z ${T} ]] || [[ -z ${2} ]] ; then - helpers_die "${0##*/}: Need two arguments, old file and new file" - exit 1 - fi + helper=${0##*/} - if [ ! -e "$1" ] ; then - helpers_die "!!! ${0##*/}: $1 does not exist" + if [[ -z ${T} ]] || [[ -z ${2} ]] ; then + helpers_die "${helper}: Need two arguments, old file and new file" exit 1 fi diff --cc bin/emerge-webrsync index 581dc5490,a962ab548..cdcf716de --- a/bin/emerge-webrsync +++ b/bin/emerge-webrsync @@@ -1,5 -1,5 +1,6 @@@ +#!@PORTAGE_BASH@ - # Copyright 1999-2011 Gentoo Foundation + #!/bin/bash + # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # Author: Karl Trygve Kalleberg # Rewritten from the old, Perl-based emerge-webrsync script @@@ -39,19 -39,14 +40,20 @@@ els eecho "could not find 'portageq'; aborting" exit 1 fi - eval $("${portageq}" envvar -v FEATURES FETCHCOMMAND GENTOO_MIRRORS \ - PORTAGE_BIN_PATH PORTAGE_GPG_DIR \ - PORTAGE_NICENESS PORTAGE_RSYNC_EXTRA_OPTS PORTAGE_TMPDIR PORTDIR \ - SYNC http_proxy ftp_proxy \ - EPREFIX PORTAGE_USER PORTAGE_GROUP) - DISTDIR="${PORTAGE_TMPDIR}/emerge-webrsync" + eval $("${portageq}" envvar -v DISTDIR EPREFIX FEATURES \ + FETCHCOMMAND GENTOO_MIRRORS \ + PORTAGE_BIN_PATH PORTAGE_CONFIGROOT PORTAGE_GPG_DIR \ + PORTAGE_NICENESS PORTAGE_RSYNC_EXTRA_OPTS \ + PORTAGE_RSYNC_OPTS PORTAGE_TMPDIR PORTDIR \ - SYNC USERLAND http_proxy ftp_proxy) ++ SYNC USERLAND http_proxy ftp_proxy \ ++ PORTAGE_USER PORTAGE_GROUP) export http_proxy ftp_proxy +# PREFIX LOCAL: use Prefix servers, just because we want this and infra - # just can't support us yet - GENTOO_MIRRORS="http://gentoo-mirror1.prefix.freens.org http://gentoo-mirror2.prefix.freens.org" ++# can't support us yet ++GENTOO_MIRRORS="http://gentoo-mirror1.prefix.freens.org" +# END PREFIX LOCAL + # If PORTAGE_NICENESS is overriden via the env then it will # still pass through the portageq call and override properly. if [ -n "${PORTAGE_NICENESS}" ]; then @@@ -191,11 -191,21 +198,23 @@@ sync_local() vecho "Syncing local tree ..." - local ownership="portage:portage" ++ # PREFIX LOCAL: use PORTAGE_USER and PORTAGE_GROUP ++ local ownership="${PORTAGE_USER:-portage}:${PORTAGE_GROUP:-portage}" ++ # END PREFIX LOCAL + if has usersync ${FEATURES} ; then + case "${USERLAND}" in + BSD) + ownership=$(stat -f '%Su:%Sg' "${PORTDIR}") + ;; + *) + ownership=$(stat -c '%U:%G' "${PORTDIR}") + ;; + esac + fi + if type -P tarsync > /dev/null ; then - # PREFIX LOCAL: use PORTAGE_USER and PORTAGE_GROUP - local chown_opts="-o ${PORTAGE_USER:-portage} -g ${PORTAGE_GROUP:-portage}" - chown ${PORTAGE_USER:-portage}:${PORTAGE_GROUP:-portage} portage > /dev/null 2>&1 || chown_opts="" - # END PREFIX LOCAL + local chown_opts="-o ${ownership%:*} -g ${ownership#*:}" + chown ${ownership} "${PORTDIR}" > /dev/null 2>&1 || chown_opts="" if ! tarsync $(vvecho -v) -s 1 ${chown_opts} \ -e /distfiles -e /packages -e /local "${file}" "${PORTDIR}"; then eecho "tarsync failed; tarball is corrupt? (${file})" diff --cc bin/isolated-functions.sh index 3beb14acc,d33c0b61e..79801e556 --- a/bin/isolated-functions.sh +++ b/bin/isolated-functions.sh @@@ -1,5 -1,5 +1,5 @@@ -#!/bin/bash +#!@PORTAGE_BASH@ - # Copyright 1999-2011 Gentoo Foundation + # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # We need this next line for "die" and "assert". It expands diff --cc bin/phase-helpers.sh index beca5ade2,a00475cfb..10a7b3e58 --- a/bin/phase-helpers.sh +++ b/bin/phase-helpers.sh @@@ -1,5 -1,5 +1,5 @@@ -#!/bin/bash +#!@PREFIX_PORTAGE_BASH@ - # Copyright 1999-2011 Gentoo Foundation + # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 export DESTTREE=/usr diff --cc pym/portage/package/ebuild/fetch.py index 63c792ab2,260bf10bb..7f76bb259 --- a/pym/portage/package/ebuild/fetch.py +++ b/pym/portage/package/ebuild/fetch.py @@@ -26,10 -26,9 +26,10 @@@ portage.proxy.lazyimport.lazyimport(glo from portage import OrderedDict, os, selinux, shutil, _encodings, \ _shell_quote, _unicode_encode from portage.checksum import (hashfunc_map, perform_md5, verify_all, - _filter_unaccelarated_hashes) + _filter_unaccelarated_hashes, _hash_filter, _apply_hash_filter) from portage.const import BASH_BINARY, CUSTOM_MIRRORS_FILE, \ GLOBAL_CONFIG_PATH +from portage.const import rootgid from portage.data import portage_gid, portage_uid, secpass, userpriv_groups from portage.exception import FileNotFound, OperationNotPermitted, \ PortageException, TryAgain