#!/bin/sh PROGRAM=setup-apkrepos PREFIX= . $PREFIX/lib/libalpine.sh # TODO: change tail command to a random mirror instead of last one in MIRRORS.txt MIRROR=`wget -O - http://www.alpinelinux.org/alpine/MIRRORS.txt 2>&1 | grep http | awk -F 'ETA' '{print $NF}' | tail -n 1` # Retrieve version from alpine-release if available if [ -e /etc/alpine-release ]; then release=$(cut -f1 /etc/alpine-release) case "$release" in *_git*) repo="edge";; [0-9]*.[0-9]*.[0-9]*) # release in x.y.z format, cut last digit repo=v${release%.[0-9]*};; esac echo "$repo" else while true; do printf "Enter repository branch from list below [v2.2]: \n" # Retrieve list of versions available on mirror 2.0 and above wget "$MIRROR" > /dev/null 2>&1 availablerepos="" for version in `links ./index.html -dump | grep "v[2-9]" | awk -F '/' '{print $1}'`; do availablerepos="$availablerepos $version" done rm index.html availablerepos="$availablerepos edge" for i in `echo $availablerepos`; do printf "$i\n" done default_read repo "v2.2" if [ $repo ]; then break fi done fi echo "${MIRROR}${repo}/main" >> /etc/apk/repositories apk update