#!/bin/sh PREFIX=@PREFIX@ : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" usage() { cat <<-__EOF__ usage: setup-proxy [-hq] [PROXYURL] Setup http proxy options: -h Show this help -q Quiet mode If PROXYURL is not specified user will be prompted. __EOF__ exit $1 } while getopts "hp:q" opt; do case "$opt" in q) quiet=1;; h) usage 0;; p) ROOT=$OPTARG;; '?') usage "1" >&2;; esac done shift $(( $OPTIND - 1)) proxyurl="$1" PROFILE="$ROOT/etc/profile.d/proxy.sh" if [ -f "$PROFILE" ] ; then . $PROFILE fi suggest=${http_proxy:-none} while [ $# -eq 0 ]; do case "$proxyurl" in http://*|https://*) break;; none) proxyurl= ; break;; esac ask "HTTP/FTP proxy URL? (e.g. 'http://proxy:8080', or 'none')" $suggest proxyurl=$resp done if [ "$proxyurl" = "none" ]; then rm -f "$PROFILE" else mkdir -p "${PROFILE%/*}" cat >"$PROFILE" <<-__EOF__ # this file was generated with and might get overwritten by setup-proxy export http_proxy=$proxyurl export https_proxy=$proxyurl export ftp_proxy=$proxyurl export no_proxy=localhost __EOF__ # busybox wget does not handle http proxies well $MOCK apk add --quiet --no-progress wget fi if [ -z "$quiet" ] && [ "$proxyurl" != "none" ]; then echo -e "\nTo make changes active please do login again or source $PROFILE\nwith \". $PROFILE\"" fi