summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Johnson <robbat2@gentoo.org>2008-12-05 19:58:43 +0000
committerRobin Johnson <robbat2@gentoo.org>2008-12-05 19:58:43 +0000
commitfa0792305239661c27245869af7ffb3ef7cb23eb (patch)
tree9348a5c99c9410250c69840c87bd0061134be9c0 /python-updater
parentWrite ChangeLog. (diff)
downloadpython-updater-fa0792305239661c27245869af7ffb3ef7cb23eb.tar.gz
python-updater-fa0792305239661c27245869af7ffb3ef7cb23eb.tar.bz2
python-updater-fa0792305239661c27245869af7ffb3ef7cb23eb.zip
Bug #249891 - Add support for just calling another binary with the identical syntax to the package manager. Infra-requested feature, commit acked by hawking@gentoo.org.
Diffstat (limited to 'python-updater')
-rwxr-xr-xpython-updater12
1 files changed, 11 insertions, 1 deletions
diff --git a/python-updater b/python-updater
index 99e6cbd..ae6557d 100755
--- a/python-updater
+++ b/python-updater
@@ -39,6 +39,7 @@ PORTAGE_PYTHON="/usr/bin/python"
SUPPORTED_PMS="portage pkgcore paludis"
PMS_COMMAND=( "emerge" "pmerge" "paludis" )
PMS_OPTIONS=( "-vD1" "-Do" "-i1" )
+CUSTOM_PMS_COMMAND=""
# Checks
CHECK_ECLASS=0
@@ -86,6 +87,9 @@ done)
-c CMD, --command CMD
Pipe found packages to command CMD instead of invoking package
manager. Only for debug and script use.
+ --package-manager-command CMD
+ Call CMD instead of the default command for the specified
+ package manager.
-eCHECK --enable-CHECK
Enable CHECK where CHECK can be one of:
* eclass (Disabled by default)
@@ -220,6 +224,10 @@ while [[ -n "$1" ]]; do
PMS_INDEX=$((${PMS_INDEX} + 1))
done
;;
+ --package-manager-command)
+ shift
+ CUSTOM_PMS_COMMAND="$1"
+ ;;
-c|--command)
shift
PIPE_COMMAND="$1"
@@ -429,7 +437,9 @@ fi
# (Pretend to) remerge packages
if [[ -n "${PKGS_TO_REMERGE}" ]]; then
- cmd="${PMS_COMMAND[${PMS_INDEX}]} ${PMS_OPTIONS[${PMS_INDEX}]} ${PKGS_TO_REMERGE}"
+ pmscmd="${CUSTOM_PMS_COMMAND}"
+ [ -z "${pmscmd}" ] && pmscmd="${PMS_COMMAND[${PMS_INDEX}]}"
+ cmd="${pmscmd} ${PMS_OPTIONS[${PMS_INDEX}]} ${PKGS_TO_REMERGE}"
einfo ${cmd}
${cmd}
else