diff --git a/plugins/python-build/bin/pyenv-install b/plugins/python-build/bin/pyenv-install index 26799b84..cf0413d6 100755 --- a/plugins/python-build/bin/pyenv-install +++ b/plugins/python-build/bin/pyenv-install @@ -1,4 +1,21 @@ #!/usr/bin/env bash +# +# Summary: Install a Python version using the python-build plugin +# +# Usage: pyenv install [-f|--force] [-k|--keep] [-v|--verbose] +# pyenv install [-f|--force] [-k|--keep] [-v|--verbose] +# pyenv install -l|--list +# +# -l/--list List all available versions +# -f/--force Install even if the version appears to be installed already +# -k/--keep Keep source tree in $PYENV_BUILD_ROOT after installation +# (defaults to $PYENV_ROOT/sources) +# -v/--verbose Verbose mode: print compilation status to stdout +# +# For detailed information on installing Python versions with +# python-build, including a list of environment variables for adjusting +# compilation, see: https://github.com/yyuu/pyenv#readme +# set -e [ -n "$PYENV_DEBUG" ] && set -x @@ -15,20 +32,12 @@ fi eval "$(python-build --lib)" usage() { - { echo "usage: pyenv install [-k|--keep] [-v|--verbose] VERSION" - echo " pyenv install [-k|--keep] [-v|--verbose] /path/to/definition" - echo " pyenv install -l|--list" - echo - echo " -l/--list List all available versions" - echo " -k/--keep Keep source tree in \$PYENV_BUILD_ROOT after installation" - echo " (defaults to ${PYENV_ROOT}/sources)" - echo " -v/--verbose Verbose mode: print compilation status to stdout" - echo - } >&2 - + # We can remove the sed fallback once pyenv 0.4.0 is widely available. + pyenv-help install 2>/dev/null || sed -ne '/^#/!q;s/.//;s/.//;1,4d;p' < "$0" [ -z "$1" ] || exit "$1" } +unset FORCE unset KEEP unset VERBOSE @@ -43,6 +52,9 @@ for option in "${OPTIONS[@]}"; do python-build --definitions | sed 's/^/ /' exit ;; + "f" | "force" ) + FORCE=true + ;; "k" | "keep" ) [ -n "${PYENV_BUILD_ROOT}" ] || PYENV_BUILD_ROOT="${PYENV_ROOT}/sources" ;; @@ -58,21 +70,82 @@ for option in "${OPTIONS[@]}"; do esac done +unset VERSION_NAME + +# The first argument contains the definition to install. If the +# argument is missing, try to install whatever local app-specific +# version is specified by pyenv. Show usage instructions if a local +# version is not specified. DEFINITION="${ARGUMENTS[0]}" +[ -n "$DEFINITION" ] || DEFINITION="$(pyenv local 2>/dev/null || true)" [ -n "$DEFINITION" ] || usage 1 + + +# Define `before_install` and `after_install` functions that allow +# plugin hooks to register a string of code for execution before or +# after the installation process. +declare -a before_hooks after_hooks + +before_install() { + local hook="$1" + before_hooks["${#before_hooks[@]}"]="$hook" +} + +after_install() { + local hook="$1" + after_hooks["${#after_hooks[@]}"]="$hook" +} + +# Load plugin hooks. for script in $(pyenv-hooks install); do source "$script" done -VERSION_NAME="${DEFINITION##*/}" + +# Set VERSION_NAME from $DEFINITION, if it is not already set. Then +# compute the installation prefix. +[ -n "$VERSION_NAME" ] || VERSION_NAME="${DEFINITION##*/}" PREFIX="${PYENV_ROOT}/versions/${VERSION_NAME}" -# If PYENV_BUILD_ROOT is set, then always pass keep options to python-build +# If the installation prefix exists, prompt for confirmation unless +# the --force option was specified. +if [ -z "$FORCE" ] && [ -d "${PREFIX}/bin" ]; then + echo "pyenv: $PREFIX already exists" >&2 + read -p "continue with installation? (y/N) " + + case "$REPLY" in + y* | Y* ) ;; + * ) exit 1 ;; + esac +fi + +# If PYENV_BUILD_ROOT is set, always pass keep options to python-build if [ -n "${PYENV_BUILD_ROOT}" ]; then export PYTHON_BUILD_BUILD_PATH="${PYENV_BUILD_ROOT}/${VERSION_NAME}" KEEP="-k" fi -python-build $KEEP $VERBOSE "$DEFINITION" "$PREFIX" -pyenv rehash +# Set PYTHON_BUILD_CACHE_PATH to $PYENV_ROOT/cache, if the directory +# exists and the variable is not already set. +if [ -z "${PYTHON_BUILD_CACHE_PATH}" ] && [ -d "${PYENV_ROOT}/cache" ]; then + export PYTHON_BUILD_CACHE_PATH="${PYENV_ROOT}/cache" +fi + + +# Execute `before_install` hooks. +for hook in "${before_hooks[@]}"; do eval "$hook"; done + + +# Invoke `python-build` and record the exit status in $STATUS. Run +# `pyenv rehash` after a successful installation. +STATUS=0 +python-build $KEEP $VERBOSE "$DEFINITION" "$PREFIX" || STATUS="$?" + +# Execute `after_install` hooks. +for hook in "${after_hooks[@]}"; do eval "$hook"; done + +# Run `pyenv-rehash` after a successful installation. +[ "$STATUS" != "0" ] || pyenv rehash + +exit "$STATUS" diff --git a/plugins/python-build/bin/pyenv-uninstall b/plugins/python-build/bin/pyenv-uninstall index c152a304..fdf4061c 100755 --- a/plugins/python-build/bin/pyenv-uninstall +++ b/plugins/python-build/bin/pyenv-uninstall @@ -1,4 +1,15 @@ #!/usr/bin/env bash +# +# Summary: Uninstall a specific Python version +# +# Usage: pyenv uninstall [-f|--force] +# +# -f Attempt to remove the specified version without prompting +# for confirmation. If the version does not exist, do not +# display an error message. +# +# See `pyenv versions` for a complete list of installed versions. +# set -e # Provide pyenv completions @@ -11,7 +22,7 @@ if [ -z "$PYENV_ROOT" ]; then fi unset FORCE -if [ "$1" = "-f" ]; then +if [ "$1" = "-f" ] || [ "$1" = "--force" ]; then FORCE=true shift fi @@ -19,15 +30,9 @@ fi DEFINITION="$1" case "$DEFINITION" in "" | -* ) - { echo "usage: pyenv uninstall [-f] VERSION" - echo - echo " -f Attempt to remove the specified version without prompting" - echo " for confirmation. If the version does not exist, do not" - echo " display an error message." - echo - echo "Installed versions:" - pyenv versions --bare | sed 's/^/ /' - echo + # We can remove the sed fallback once pyenv 0.4.0 is widely available. + { pyenv-help uninstall 2>/dev/null || + sed -ne '/^#/!q;s/.\{1,2\}//;1,4d;p' < "$0" } >&2 exit 1 ;; diff --git a/plugins/python-build/bin/python-build b/plugins/python-build/bin/python-build index 93e09cfe..35af6df2 100755 --- a/plugins/python-build/bin/python-build +++ b/plugins/python-build/bin/python-build @@ -112,7 +112,9 @@ install_package_using() { make_package "$package_name" $* popd >&4 - echo "Installed ${package_name} to ${PREFIX_PATH}" >&2 + { echo "Installed ${package_name} to ${PREFIX_PATH}" + echo + } >&2 } make_package() { @@ -127,27 +129,139 @@ make_package() { popd >&4 } -fetch_url() { +compute_md5() { + if type md5 >/dev/null; then + md5 -q + elif type openssl &>/dev/null; then + local output="$(openssl md5)" + echo "${output##* }" + elif type md5sum &>/dev/null; then + local output="$(md5sum -b)" + echo "${output% *}" + else + return 1 + fi +} + +verify_checksum() { + # If there's no MD5 support, return success + [ -n "$HAS_MD5_SUPPORT" ] || return 0 + + # If the specified filename doesn't exist, return success + local filename="$1" + [ -e "$filename" ] || return 0 + + # If there's no expected checksum, return success + local expected_checksum="$2" + [ -n "$expected_checksum" ] || return 0 + + # If the computed checksum is empty, return failure + local computed_checksum="$(compute_md5 < "$filename")" + [ -n "$computed_checksum" ] || return 1 + + if [ "$expected_checksum" != "$computed_checksum" ]; then + { echo + echo "checksum mismatch: ${filename} (file is corrupt)" + echo "expected $expected_checksum, got $computed_checksum" + echo + } >&4 + return 1 + fi +} + +http() { + local method="$1" + local url="$2" + [ -n "$url" ] || return 1 + if type curl &>/dev/null; then - curl -L "$@" + "http_${method}_curl" "$url" elif type wget &>/dev/null; then - wget -O- "$@" + "http_${method}_wget" "$url" else echo "error: please install \`curl\` or \`wget\` and try again" >&2 exit 1 fi } +http_head_curl() { + curl -sILf "$1" >&4 2>&1 +} + +http_get_curl() { + curl -sSLf "$1" +} + +http_head_wget() { + wget -q --spider "$1" >&4 2>&1 +} + +http_get_wget() { + wget -nv -O- "$1" +} + fetch_tarball() { local package_name="$1" local package_url="$2" + local mirror_url + local checksum - echo "Downloading ${package_url}..." >&2 - { fetch_url "$package_url" > "${package_name}.tar" - tar xvf "${package_name}.tar" + if [ "$package_url" != "${package_url/\#}" ]; then + checksum="${package_url#*#}" + package_url="${package_url%%#*}" + + if [ -n "$PYTHON_BUILD_MIRROR_URL" ]; then + mirror_url="${PYTHON_BUILD_MIRROR_URL}/$checksum" + fi + fi + + local package_filename="${package_name}.tar" # later tar can read compression algorithm from file + symlink_tarball_from_cache "$package_filename" "$checksum" || { + echo "Downloading ${package_filename}..." >&2 + { http head "$mirror_url" && + download_tarball "$mirror_url" "$package_filename" "$checksum" + } || + download_tarball "$package_url" "$package_filename" "$checksum" + } + + { tar xvf "$package_filename" + rm -f "$package_filename" } >&4 2>&1 } +symlink_tarball_from_cache() { + [ -n "$PYTHON_BUILD_CACHE_PATH" ] || return 1 + + local package_filename="$1" + local cached_package_filename="${PYTHON_BUILD_CACHE_PATH}/$package_filename" + local checksum="$2" + + [ -e "$cached_package_filename" ] || return 1 + verify_checksum "$cached_package_filename" "$checksum" >&4 2>&1 || return 1 + ln -s "$cached_package_filename" "$package_filename" >&4 2>&1 || return 1 +} + +download_tarball() { + local package_url="$1" + [ -n "$package_url" ] || return 1 + + local package_filename="$2" + local checksum="$3" + + echo "-> $package_url" >&2 + + { http get "$package_url" > "$package_filename" + verify_checksum "$package_filename" "$checksum" + } >&4 2>&1 || return 1 + + if [ -n "$PYTHON_BUILD_CACHE_PATH" ]; then + local cached_package_filename="${PYTHON_BUILD_CACHE_PATH}/$package_filename" + { mv "$package_filename" "$cached_package_filename" + ln -s "$cached_package_filename" "$package_filename" + } >&4 2>&1 || return 1 + fi +} + fetch_git() { local package_name="$1" local git_url="$2" @@ -163,6 +277,21 @@ fetch_git() { fi } +fetch_svn() { + local package_name="$1" + local svn_url="$2" + local svn_rev="$3" + + echo "Checking out ${svn_url}..." >&2 + + if type svn &>/dev/null; then + svn co -r "$svn_rev" "$svn_url" "${package_name}" >&4 2>&1 + else + echo "error: please install \`svn\` and try again" >&2 + exit 1 + fi +} + fetch_jar() { local package_name="$1" local package_url="$2" @@ -186,7 +315,7 @@ build_package() { echo "Installing ${package_name}..." >&2 for command in $commands; do - "build_package_${command}" "${package_name}" + "build_package_${command}" done if [ ! -f "$PYTHON_BIN" ]; then @@ -252,10 +381,6 @@ build_package_copy() { cp -R . "$PREFIX_PATH" } -bild_package_noop() { - echo "Nothing to do." -} - before_install_package() { local stub=1 } @@ -266,7 +391,7 @@ after_install_package() { fix_directory_permissions() { # Ensure installed directories are not world-writable to avoid Bundler warnings - find "$PREFIX_PATH" -type d -exec chmod go-w {} \; + find "$PREFIX_PATH" -type d \( -perm -020 -o -perm -002 \) -exec chmod go-w {} \; } require_gcc() { @@ -480,6 +605,33 @@ else TMP="${TMPDIR%/}" fi +if [ -z "$MAKE" ]; then + MAKE="make" +fi + +if [ -n "$PYTHON_BUILD_CACHE_PATH" ] && [ -d "$PYTHON_BUILD_CACHE_PATH" ]; then + PYTHON_BUILD_CACHE_PATH="${PYTHON_BUILD_CACHE_PATH%/}" +else + unset PYTHON_BUILD_CACHE_PATH +fi + +if [ -z "$PYTHON_BUILD_MIRROR_URL" ]; then + PYTHON_BUILD_MIRROR_URL="" # FIXME: setup mirror site +else + PYTHON_BUILD_MIRROR_URL="${PYTHON_BUILD_MIRROR_URL%/}" +fi + +if [ -n "$PYTHON_BUILD_SKIP_MIRROR" ]; then + unset PYTHON_BUILD_MIRROR_URL +fi + +if echo test | compute_md5 >/dev/null; then + HAS_MD5_SUPPORT=1 +else + unset HAS_MD5_SUPPORT + unset PYTHON_BUILD_MIRROR_URL +fi + SEED="$(date "+%Y%m%d%H%M%S").$$" LOG_PATH="${TMP}/python-build.${SEED}.log" PYTHON_BIN="${PREFIX_PATH}/bin/python" @@ -500,8 +652,8 @@ fi export LDFLAGS="-L'${PREFIX_PATH}/lib' ${LDFLAGS}" export CPPFLAGS="-I'${PREFIX_PATH}/include' ${CPPFLAGS}" -unset PYTHONOPT -unset PYTHONLIB +unset PYTHONHOME +unset PYTHONPATH trap build_failed ERR mkdir -p "$BUILD_PATH" diff --git a/plugins/python-build/share/python-build/2.5 b/plugins/python-build/share/python-build/2.5 index 9e080cc4..3ada3970 100644 --- a/plugins/python-build/share/python-build/2.5 +++ b/plugins/python-build/share/python-build/2.5 @@ -8,6 +8,6 @@ linux*) ;; esac -install_package "Python-2.5" "http://www.python.org/ftp/python/2.5/Python-2.5.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-2.5" "http://www.python.org/ftp/python/2.5/Python-2.5.tgz#bc1b74f90a472a6c0a85481aaeb43f95" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/2.5.1 b/plugins/python-build/share/python-build/2.5.1 index 24846b86..ae1cbaf3 100644 --- a/plugins/python-build/share/python-build/2.5.1 +++ b/plugins/python-build/share/python-build/2.5.1 @@ -8,6 +8,6 @@ linux*) ;; esac -install_package "Python-2.5.1" "http://www.python.org/ftp/python/2.5.1/Python-2.5.1.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-2.5.1" "http://www.python.org/ftp/python/2.5.1/Python-2.5.1.tgz#cca695828df8adc3e69b637af07522e1" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/2.5.2 b/plugins/python-build/share/python-build/2.5.2 index 6030f4c7..4cf0b07f 100644 --- a/plugins/python-build/share/python-build/2.5.2 +++ b/plugins/python-build/share/python-build/2.5.2 @@ -8,6 +8,6 @@ linux*) ;; esac -install_package "Python-2.5.2" "http://www.python.org/ftp/python/2.5.2/Python-2.5.2.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-2.5.2" "http://www.python.org/ftp/python/2.5.2/Python-2.5.2.tgz#3f7ca8aa86c6bd275426d63b46e07992" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/2.5.3 b/plugins/python-build/share/python-build/2.5.3 index 465c001a..73f432ac 100644 --- a/plugins/python-build/share/python-build/2.5.3 +++ b/plugins/python-build/share/python-build/2.5.3 @@ -8,6 +8,6 @@ linux*) ;; esac -install_package "Python-2.5.3" "http://www.python.org/ftp/python/2.5.3/Python-2.5.3.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-2.5.3" "http://www.python.org/ftp/python/2.5.3/Python-2.5.3.tgz#a971f8928d6beb31ae0de56f7034d6a2" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/2.5.4 b/plugins/python-build/share/python-build/2.5.4 index f347d41f..760a85da 100644 --- a/plugins/python-build/share/python-build/2.5.4 +++ b/plugins/python-build/share/python-build/2.5.4 @@ -8,6 +8,6 @@ linux*) ;; esac -install_package "Python-2.5.4" "http://www.python.org/ftp/python/2.5.4/Python-2.5.4.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-2.5.4" "http://www.python.org/ftp/python/2.5.4/Python-2.5.4.tgz#ad47b23778f64edadaaa8b5534986eed" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/2.5.5 b/plugins/python-build/share/python-build/2.5.5 index 6f46d381..1d427a41 100644 --- a/plugins/python-build/share/python-build/2.5.5 +++ b/plugins/python-build/share/python-build/2.5.5 @@ -8,6 +8,6 @@ linux*) ;; esac -install_package "Python-2.5.5" "http://www.python.org/ftp/python/2.5.5/Python-2.5.5.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-2.5.5" "http://www.python.org/ftp/python/2.5.5/Python-2.5.5.tgz#abc02139ca38f4258e8e372f7da05c88" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/2.5.6 b/plugins/python-build/share/python-build/2.5.6 index 59eafc2c..0f96a33d 100644 --- a/plugins/python-build/share/python-build/2.5.6 +++ b/plugins/python-build/share/python-build/2.5.6 @@ -8,6 +8,6 @@ linux*) ;; esac -install_package "Python-2.5.6" "http://www.python.org/ftp/python/2.5.6/Python-2.5.6.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-2.5.6" "http://www.python.org/ftp/python/2.5.6/Python-2.5.6.tgz#d1d9c83928561addf11d00b22a18ca50" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/2.6.6 b/plugins/python-build/share/python-build/2.6.6 index 1d2d1c0e..20ecf971 100644 --- a/plugins/python-build/share/python-build/2.6.6 +++ b/plugins/python-build/share/python-build/2.6.6 @@ -8,6 +8,6 @@ before_install_package() { esac } -install_package "Python-2.6.6" "http://www.python.org/ftp/python/2.6.6/Python-2.6.6.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-2.6.6" "http://www.python.org/ftp/python/2.6.6/Python-2.6.6.tgz#b2f209df270a33315e62c1ffac1937f0" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/2.6.7 b/plugins/python-build/share/python-build/2.6.7 index ea7631e0..271d9d08 100644 --- a/plugins/python-build/share/python-build/2.6.7 +++ b/plugins/python-build/share/python-build/2.6.7 @@ -8,6 +8,6 @@ before_install_package() { esac } -install_package "Python-2.6.7" "http://www.python.org/ftp/python/2.6.7/Python-2.6.7.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-2.6.7" "http://www.python.org/ftp/python/2.6.7/Python-2.6.7.tgz#af474f85a3af69ea50438a2a48039d7d" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/2.6.8 b/plugins/python-build/share/python-build/2.6.8 index 30569354..d811f1bb 100644 --- a/plugins/python-build/share/python-build/2.6.8 +++ b/plugins/python-build/share/python-build/2.6.8 @@ -8,6 +8,6 @@ before_install_package() { esac } -install_package "Python-2.6.8" "http://www.python.org/ftp/python/2.6.8/Python-2.6.8.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-2.6.8" "http://www.python.org/ftp/python/2.6.8/Python-2.6.8.tgz#f6c1781f5d73ab7dfa5181f43ea065f6" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/2.7 b/plugins/python-build/share/python-build/2.7 index 0d0be1cc..391aaa64 100644 --- a/plugins/python-build/share/python-build/2.7 +++ b/plugins/python-build/share/python-build/2.7 @@ -8,6 +8,6 @@ before_install_package() { esac } -install_package "Python-2.7" "http://www.python.org/ftp/python/2.7/Python-2.7.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-2.7" "http://www.python.org/ftp/python/2.7/Python-2.7.tgz#35f56b092ecf39a6bd59d64f142aae0f" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/2.7.1 b/plugins/python-build/share/python-build/2.7.1 index 869172b3..ad0a21e0 100644 --- a/plugins/python-build/share/python-build/2.7.1 +++ b/plugins/python-build/share/python-build/2.7.1 @@ -8,6 +8,6 @@ before_install_package() { esac } -install_package "Python-2.7.1" "http://www.python.org/ftp/python/2.7.1/Python-2.7.1.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-2.7.1" "http://www.python.org/ftp/python/2.7.1/Python-2.7.1.tgz#15ed56733655e3fab785e49a7278d2fb" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/2.7.2 b/plugins/python-build/share/python-build/2.7.2 index 9039ecb8..7d40c62c 100644 --- a/plugins/python-build/share/python-build/2.7.2 +++ b/plugins/python-build/share/python-build/2.7.2 @@ -1,3 +1,3 @@ -install_package "Python-2.7.2" "http://www.python.org/ftp/python/2.7.2/Python-2.7.2.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-2.7.2" "http://www.python.org/ftp/python/2.7.2/Python-2.7.2.tgz#0ddfe265f1b3d0a8c2459f5bf66894c7" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/2.7.3 b/plugins/python-build/share/python-build/2.7.3 index 4b6a309d..1a84dc06 100644 --- a/plugins/python-build/share/python-build/2.7.3 +++ b/plugins/python-build/share/python-build/2.7.3 @@ -1,3 +1,3 @@ -install_package "Python-2.7.3" "http://www.python.org/ftp/python/2.7.3/Python-2.7.3.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-2.7.3" "http://www.python.org/ftp/python/2.7.3/Python-2.7.3.tgz#2cf641732ac23b18d139be077bd906cd" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/3.0.1 b/plugins/python-build/share/python-build/3.0.1 index 5fac796f..c93b6794 100644 --- a/plugins/python-build/share/python-build/3.0.1 +++ b/plugins/python-build/share/python-build/3.0.1 @@ -8,6 +8,6 @@ before_install_package() { esac } -install_package "Python-3.0.1" "http://www.python.org/ftp/python/3.0.1/Python-3.0.1.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-3.0.1" "http://www.python.org/ftp/python/3.0.1/Python-3.0.1.tgz#220b73f0a1a20c4b1cdf9f9db4cd52fe" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/3.1.3 b/plugins/python-build/share/python-build/3.1.3 index f15b743c..a4030771 100644 --- a/plugins/python-build/share/python-build/3.1.3 +++ b/plugins/python-build/share/python-build/3.1.3 @@ -8,6 +8,6 @@ before_install_package() { esac } -install_package "Python-3.1.3" "http://www.python.org/ftp/python/3.1.3/Python-3.1.3.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-3.1.3" "http://www.python.org/ftp/python/3.1.3/Python-3.1.3.tgz#d797fa6abe82c21227e328f05a535424" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/3.1.4 b/plugins/python-build/share/python-build/3.1.4 index 5e164a4f..c2b38284 100644 --- a/plugins/python-build/share/python-build/3.1.4 +++ b/plugins/python-build/share/python-build/3.1.4 @@ -1,3 +1,3 @@ -install_package "Python-3.1.4" "http://www.python.org/ftp/python/3.1.4/Python-3.1.4.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-3.1.4" "http://www.python.org/ftp/python/3.1.4/Python-3.1.4.tgz#fa9f8efdc63944c8393870282e8b5c35" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/3.1.5 b/plugins/python-build/share/python-build/3.1.5 index 25782401..92c0e3cd 100644 --- a/plugins/python-build/share/python-build/3.1.5 +++ b/plugins/python-build/share/python-build/3.1.5 @@ -1,3 +1,3 @@ -install_package "Python-3.1.5" "http://www.python.org/ftp/python/3.1.5/Python-3.1.5.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-3.1.5" "http://www.python.org/ftp/python/3.1.5/Python-3.1.5.tgz#02196d3fc7bc76bdda68aa36b0dd16ab" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/3.2 b/plugins/python-build/share/python-build/3.2 index 9ea7fa13..fe579f43 100644 --- a/plugins/python-build/share/python-build/3.2 +++ b/plugins/python-build/share/python-build/3.2 @@ -8,6 +8,6 @@ before_install_package() { esac } -install_package "Python-3.2" "http://www.python.org/ftp/python/3.2/Python-3.2.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-3.2" "http://www.python.org/ftp/python/3.2/Python-3.2.tgz#5efe838a7878b170f6728d7e5d7517af" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/3.2.1 b/plugins/python-build/share/python-build/3.2.1 index 04560f25..62ac1a80 100644 --- a/plugins/python-build/share/python-build/3.2.1 +++ b/plugins/python-build/share/python-build/3.2.1 @@ -1,3 +1,3 @@ -install_package "Python-3.2.1" "http://www.python.org/ftp/python/3.2.1/Python-3.2.1.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-3.2.1" "http://www.python.org/ftp/python/3.2.1/Python-3.2.1.tgz#6c2aa3481cadb7bdf74e625fffc352b2" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/3.2.2 b/plugins/python-build/share/python-build/3.2.2 index bb005268..0654ab21 100644 --- a/plugins/python-build/share/python-build/3.2.2 +++ b/plugins/python-build/share/python-build/3.2.2 @@ -1,3 +1,3 @@ -install_package "Python-3.2.2" "http://www.python.org/ftp/python/3.2.2/Python-3.2.2.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-3.2.2" "http://www.python.org/ftp/python/3.2.2/Python-3.2.2.tgz#3c63a6d97333f4da35976b6a0755eb67" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/3.2.3 b/plugins/python-build/share/python-build/3.2.3 index 251ec2c4..112b7534 100644 --- a/plugins/python-build/share/python-build/3.2.3 +++ b/plugins/python-build/share/python-build/3.2.3 @@ -1,3 +1,3 @@ -install_package "Python-3.2.3" "http://www.python.org/ftp/python/3.2.3/Python-3.2.3.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-3.2.3" "http://www.python.org/ftp/python/3.2.3/Python-3.2.3.tgz#dcf3a738e7028f1deb41b180bf0e2cbc" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/3.3.0 b/plugins/python-build/share/python-build/3.3.0 index 0c08da43..6700245f 100644 --- a/plugins/python-build/share/python-build/3.3.0 +++ b/plugins/python-build/share/python-build/3.3.0 @@ -1,3 +1,3 @@ -install_package "Python-3.3.0" "http://python.org/ftp/python/3.3.0/Python-3.3.0.tgz" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "Python-3.3.0" "http://python.org/ftp/python/3.3.0/Python-3.3.0.tgz#198a64f7a04d1d5e95ce2782d5fd8254" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/jython-2.5.0 b/plugins/python-build/share/python-build/jython-2.5.0 index 04c055aa..2fa9f0e3 100644 --- a/plugins/python-build/share/python-build/jython-2.5.0 +++ b/plugins/python-build/share/python-build/jython-2.5.0 @@ -1,4 +1,4 @@ require_java -install_jar "Jython-2.5.0" "https://downloads.sourceforge.net/project/jython/jython/2.5.0/jython_installer-2.5.0.jar" jython -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_jar "Jython-2.5.0" "https://downloads.sourceforge.net/project/jython/jython/2.5.0/jython_installer-2.5.0.jar#f98b83fce9669feec69d0a17ee515a20" jython +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/jython-2.5.1 b/plugins/python-build/share/python-build/jython-2.5.1 index 65b48b71..c8930b23 100644 --- a/plugins/python-build/share/python-build/jython-2.5.1 +++ b/plugins/python-build/share/python-build/jython-2.5.1 @@ -1,4 +1,4 @@ require_java -install_jar "Jython-2.5.1" "https://downloads.sourceforge.net/project/jython/jython/2.5.1/jython_installer-2.5.1.jar" jython -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_jar "Jython-2.5.1" "https://downloads.sourceforge.net/project/jython/jython/2.5.1/jython_installer-2.5.1.jar#2ee978eff4306b23753b3fe9d7af5b37" jython +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/jython-2.5.2 b/plugins/python-build/share/python-build/jython-2.5.2 index 403cb67a..10ce4132 100644 --- a/plugins/python-build/share/python-build/jython-2.5.2 +++ b/plugins/python-build/share/python-build/jython-2.5.2 @@ -1,4 +1,4 @@ require_java -install_jar "Jython-2.5.2" "https://downloads.sourceforge.net/project/jython/jython/2.5.2/jython_installer-2.5.2.jar" jython -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_jar "Jython-2.5.2" "https://downloads.sourceforge.net/project/jython/jython/2.5.2/jython_installer-2.5.2.jar#7c7d9abd8985df480edeacd27ed9dcd5" jython +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/jython-2.5.3 b/plugins/python-build/share/python-build/jython-2.5.3 index e20274ae..1113778d 100644 --- a/plugins/python-build/share/python-build/jython-2.5.3 +++ b/plugins/python-build/share/python-build/jython-2.5.3 @@ -1,4 +1,4 @@ require_java -install_jar "Jython-2.5.3" "http://search.maven.org/remotecontent?filepath=org/python/jython-installer/2.5.3/jython-installer-2.5.3.jar" jython -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_jar "Jython-2.5.3" "http://search.maven.org/remotecontent?filepath=org/python/jython-installer/2.5.3/jython-installer-2.5.3.jar#41633b4557483d6d4237ee79ffcebe7b" jython +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/pypy-1.8 b/plugins/python-build/share/python-build/pypy-1.8 index bf902081..8d4a5d09 100644 --- a/plugins/python-build/share/python-build/pypy-1.8 +++ b/plugins/python-build/share/python-build/pypy-1.8 @@ -1,24 +1,24 @@ case "$OSTYPE" in darwin*) - PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-1.8-osx64.tar.bz2" + PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-1.8-osx64.tar.bz2#1c293253e8e4df411c3dd59dff82a663" ;; linux*) case $(uname -m) in i386|i486|i586|i686) - PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-1.8-linux.tar.bz2" + PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-1.8-linux.tar.bz2#c4a1d11e0283a390d9e9b801a4633b9f" ;; x86_64) - PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-1.8-linux64.tar.bz2" + PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-1.8-linux64.tar.bz2#3b81363ccbc042dfdda2fabbf419e788" ;; esac ;; cygwin*|mingw*) - PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-1.8-win32.zip" + PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-1.8-win32.zip#1af8ee722721e9f5fd06b61af530ecb3" ;; esac if [ -n "$PYPY_URL" ]; then install_package "pypy-1.8" "$PYPY_URL" pypy - install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python - install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python + install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python + install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python fi diff --git a/plugins/python-build/share/python-build/pypy-1.9 b/plugins/python-build/share/python-build/pypy-1.9 index 5ade1407..27064586 100644 --- a/plugins/python-build/share/python-build/pypy-1.9 +++ b/plugins/python-build/share/python-build/pypy-1.9 @@ -1,24 +1,24 @@ case "$OSTYPE" in darwin*) - PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-1.9-osx64.tar.bz2" + PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-1.9-osx64.tar.bz2#aad9c4b7b827583e37fe8ae0f7cfe0ff" ;; linux*) case $(uname -m) in i386|i486|i586|i686) - PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-1.9-linux.tar.bz2" + PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-1.9-linux.tar.bz2#1a08c88642434fc2e0e4256d351f48db" ;; x86_64) - PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-1.9-linux64.tar.bz2" + PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-1.9-linux64.tar.bz2#201d2cce2557e40c784473b471ee1b6b" ;; esac ;; cygwin*|mingw*) - PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-1.9-win32.zip" + PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-1.9-win32.zip#e7655066baed3c7bbbca7df617817dd5" ;; esac if [ -n "$PYPY_URL" ]; then install_package "pypy-1.9" "$PYPY_URL" pypy - install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python - install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python + install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python + install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python fi diff --git a/plugins/python-build/share/python-build/pypy-2.0-beta1 b/plugins/python-build/share/python-build/pypy-2.0-beta1 index db0ef7b5..2780e287 100644 --- a/plugins/python-build/share/python-build/pypy-2.0-beta1 +++ b/plugins/python-build/share/python-build/pypy-2.0-beta1 @@ -1,23 +1,23 @@ case "$OSTYPE" in darwin*) - PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-2.0-beta1-osx64.tar.bz2" + PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-2.0-beta1-osx64.tar.bz2#2802a06cd19ac86930b63afdd837c32f" ;; linux*) case $(uname -m) in armel) - PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-2.0-beta1-linux-armel.tar.bz2" + PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-2.0-beta1-linux-armel.tar.bz2#a1505520c063c591b218e5cd3436b111" ;; i386|i486|i586|i686) - PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-2.0-beta1-linux.tar.bz2" + PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-2.0-beta1-linux.tar.bz2#5aa2e4eee1c3dab86e5cec237776ced3" ;; x86_64) LDD_VERSION=$(ldd --version | head -1) case "${LDD_VERSION#ldd \(*\) }" in 2.15) - PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-2.0-beta1-linux64-libc2.15.tar.bz2" + PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-2.0-beta1-linux64-libc2.15.tar.bz2#0fde559a7b1a3b98245d6a5ea7f8ebb2" ;; 2.13) - PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-2.0-beta1-linux64-libc2.13.tar.bz2" + PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-2.0-beta1-linux64-libc2.13.tar.bz2#68d8668299cd5adf4f302eaf882c5b33" ;; *) echo "pypy-2.0-beta1 requires libc version 2.13 or 2.15." 1>&2 @@ -28,12 +28,12 @@ linux*) esac ;; cygwin*|mingw*) - PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-2.0-beta1-win32.zip" + PYPY_URL="https://bitbucket.org/pypy/pypy/downloads/pypy-2.0-beta1-win32.zip#e46e1c20da6a2d15e34a6ef9afca311f" ;; esac if [ -n "$PYPY_URL" ]; then install_package "pypy-2.0-beta1" "$PYPY_URL" pypy - install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python - install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python + install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python + install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python fi diff --git a/plugins/python-build/share/python-build/stackless-2.7.2 b/plugins/python-build/share/python-build/stackless-2.7.2 index 409a6d79..f707a7c7 100644 --- a/plugins/python-build/share/python-build/stackless-2.7.2 +++ b/plugins/python-build/share/python-build/stackless-2.7.2 @@ -1,3 +1,3 @@ -install_package "stackless-272-export" "http://www.stackless.com/binaries/stackless-272-export.tar.bz2" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "stackless-272-export" "http://www.stackless.com/binaries/stackless-272-export.tar.bz2#79a718db998f2cdd95478d2cb54d56f2" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python diff --git a/plugins/python-build/share/python-build/stackless-3.2.2 b/plugins/python-build/share/python-build/stackless-3.2.2 index 3d73131f..d67599ca 100644 --- a/plugins/python-build/share/python-build/stackless-3.2.2 +++ b/plugins/python-build/share/python-build/stackless-3.2.2 @@ -1,3 +1,3 @@ -install_package "stackless-322-export" "http://www.stackless.com/binaries/stackless-322-export.tar.bz2" -install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz" python -install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz" python +install_package "stackless-322-export" "http://www.stackless.com/binaries/stackless-322-export.tar.bz2#3a3edcfb4240bdcc580cec2baea60af4" +install_package "distribute-0.6.34" "http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz#4576ab843a6db5100fb22a72deadf56d" python +install_package "pip-1.2.1" "http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python