mirrorselect revision 244057
1220080Snwhitehorn#!/bin/sh 2220080Snwhitehorn#- 3220080Snwhitehorn# Copyright (c) 2011 Nathan Whitehorn 4220080Snwhitehorn# All rights reserved. 5220080Snwhitehorn# 6220080Snwhitehorn# Redistribution and use in source and binary forms, with or without 7220080Snwhitehorn# modification, are permitted provided that the following conditions 8220080Snwhitehorn# are met: 9220080Snwhitehorn# 1. Redistributions of source code must retain the above copyright 10220080Snwhitehorn# notice, this list of conditions and the following disclaimer. 11220080Snwhitehorn# 2. Redistributions in binary form must reproduce the above copyright 12220080Snwhitehorn# notice, this list of conditions and the following disclaimer in the 13220080Snwhitehorn# documentation and/or other materials provided with the distribution. 14220080Snwhitehorn# 15220080Snwhitehorn# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 16220080Snwhitehorn# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17220080Snwhitehorn# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 18220080Snwhitehorn# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 19220080Snwhitehorn# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20220080Snwhitehorn# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21220080Snwhitehorn# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22220080Snwhitehorn# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23220080Snwhitehorn# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24220080Snwhitehorn# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25220080Snwhitehorn# SUCH DAMAGE. 26220080Snwhitehorn# 27220080Snwhitehorn# $FreeBSD: head/usr.sbin/bsdinstall/scripts/mirrorselect 244057 2012-12-09 22:53:53Z gjb $ 28220080Snwhitehorn 29220080Snwhitehorn: ${DIALOG_OK=0} 30220080Snwhitehorn: ${DIALOG_CANCEL=1} 31220080Snwhitehorn: ${DIALOG_HELP=2} 32220080Snwhitehorn: ${DIALOG_EXTRA=3} 33220080Snwhitehorn: ${DIALOG_ITEM_HELP=4} 34220080Snwhitehorn: ${DIALOG_ESC=255} 35220080Snwhitehorn 36220080Snwhitehornexec 3>&1 37220080SnwhitehornMIRROR=`dialog --backtitle "FreeBSD Installer" \ 38220080Snwhitehorn --title "Mirror Selection" --extra-button --extra-label "Other" \ 39220080Snwhitehorn --menu "Please select the site closest to you or \"other\" if you'd like to specify a different choice. Also note that not every site listed here carries more than the base distribution kits. Only Primary sites are guaranteed to carry the full range of possible distributions. Select a site that's close!" \ 40220080Snwhitehorn 0 0 0 \ 41220080Snwhitehorn ftp://ftp.freebsd.org "Main Site"\ 42220080Snwhitehorn ftp://ftp.freebsd.org "IPv6 Main Site"\ 43220080Snwhitehorn ftp://ftp3.ie.freebsd.org "IPv6 Ireland"\ 44220080Snwhitehorn ftp://ftp.il.freebsd.org "IPv6 Israel"\ 45220080Snwhitehorn ftp://ftp2.jp.freebsd.org "IPv6 Japan"\ 46225467Sbrueffer ftp://ftp4.se.freebsd.org "IPv6 Sweden"\ 47220080Snwhitehorn ftp://ftp4.us.freebsd.org "IPv6 USA"\ 48220080Snwhitehorn ftp://ftp2.tr.freebsd.org "IPv6 Turkey"\ 49220080Snwhitehorn ftp://ftp1.freebsd.org "Primary"\ 50220080Snwhitehorn ftp://ftp2.freebsd.org "Primary #2"\ 51220080Snwhitehorn ftp://ftp3.freebsd.org "Primary #3"\ 52220080Snwhitehorn ftp://ftp4.freebsd.org "Primary #4"\ 53220080Snwhitehorn ftp://ftp5.freebsd.org "Primary #5"\ 54220080Snwhitehorn ftp://ftp6.freebsd.org "Primary #6"\ 55220080Snwhitehorn ftp://ftp7.freebsd.org "Primary #7"\ 56220080Snwhitehorn ftp://ftp8.freebsd.org "Primary #8"\ 57220080Snwhitehorn ftp://ftp9.freebsd.org "Primary #9"\ 58220080Snwhitehorn ftp://ftp10.freebsd.org "Primary #10"\ 59220080Snwhitehorn ftp://ftp11.freebsd.org "Primary #11"\ 60220080Snwhitehorn ftp://ftp12.freebsd.org "Primary #12"\ 61220080Snwhitehorn ftp://ftp13.freebsd.org "Primary #13"\ 62220080Snwhitehorn ftp://ftp14.freebsd.org "Primary #14"\ 63220080Snwhitehorn ftp://ftp.ar.freebsd.org "Argentina"\ 64220080Snwhitehorn ftp://ftp.au.freebsd.org "Australia"\ 65220080Snwhitehorn ftp://ftp2.au.freebsd.org "Australia #2"\ 66220080Snwhitehorn ftp://ftp3.au.freebsd.org "Australia #3"\ 67220080Snwhitehorn ftp://ftp.at.freebsd.org "Austria"\ 68220080Snwhitehorn ftp://ftp2.at.freebsd.org "Austria #2"\ 69220080Snwhitehorn ftp://ftp.br.freebsd.org "Brazil"\ 70220080Snwhitehorn ftp://ftp2.br.freebsd.org "Brazil #2"\ 71220080Snwhitehorn ftp://ftp3.br.freebsd.org "Brazil #3"\ 72220080Snwhitehorn ftp://ftp4.br.freebsd.org "Brazil #4"\ 73220080Snwhitehorn ftp://ftp5.br.freebsd.org "Brazil #5"\ 74220080Snwhitehorn ftp://ftp6.br.freebsd.org "Brazil #6"\ 75220080Snwhitehorn ftp://ftp7.br.freebsd.org "Brazil #7"\ 76220080Snwhitehorn ftp://ftp.ca.freebsd.org "Canada"\ 77220080Snwhitehorn ftp://ftp.cn.freebsd.org "China"\ 78220080Snwhitehorn ftp://ftp2.cn.freebsd.org "China #2"\ 79220080Snwhitehorn ftp://ftp.hr.freebsd.org "Croatia"\ 80220080Snwhitehorn ftp://ftp.cz.freebsd.org "Czech Republic"\ 81220080Snwhitehorn ftp://ftp.dk.freebsd.org "Denmark"\ 82220080Snwhitehorn ftp://ftp2.dk.freebsd.org "Denmark #2"\ 83220080Snwhitehorn ftp://ftp.ee.freebsd.org "Estonia"\ 84220080Snwhitehorn ftp://ftp.fi.freebsd.org "Finland"\ 85220080Snwhitehorn ftp://ftp.fr.freebsd.org "France"\ 86224656Sroberto ftp://ftp2.fr.freebsd.org "IPv6 France #2"\ 87220080Snwhitehorn ftp://ftp3.fr.freebsd.org "France #3"\ 88235228Sroberto ftp://ftp4.fr.freebsd.org "IPv6 France #4"\ 89220080Snwhitehorn ftp://ftp5.fr.freebsd.org "France #5"\ 90220080Snwhitehorn ftp://ftp6.fr.freebsd.org "France #6"\ 91224656Sroberto ftp://ftp8.fr.freebsd.org "IPv6 France #8"\ 92220080Snwhitehorn ftp://ftp.de.freebsd.org "Germany"\ 93220080Snwhitehorn ftp://ftp2.de.freebsd.org "Germany #2"\ 94220080Snwhitehorn ftp://ftp3.de.freebsd.org "Germany #3"\ 95220080Snwhitehorn ftp://ftp4.de.freebsd.org "Germany #4"\ 96220080Snwhitehorn ftp://ftp5.de.freebsd.org "Germany #5"\ 97220080Snwhitehorn ftp://ftp6.de.freebsd.org "Germany #6"\ 98220080Snwhitehorn ftp://ftp7.de.freebsd.org "Germany #7"\ 99220080Snwhitehorn ftp://ftp8.de.freebsd.org "Germany #8"\ 100220080Snwhitehorn ftp://ftp.gr.freebsd.org "Greece"\ 101220080Snwhitehorn ftp://ftp2.gr.freebsd.org "Greece #2"\ 102220080Snwhitehorn ftp://ftp.hu.freebsd.org "Hungary"\ 103220080Snwhitehorn ftp://ftp.is.freebsd.org "Iceland"\ 104220080Snwhitehorn ftp://ftp.ie.freebsd.org "Ireland"\ 105220080Snwhitehorn ftp://ftp2.ie.freebsd.org "Ireland #2"\ 106220080Snwhitehorn ftp://ftp3.ie.freebsd.org "Ireland #3"\ 107220080Snwhitehorn ftp://ftp.il.freebsd.org "Israel"\ 108220080Snwhitehorn ftp://ftp.it.freebsd.org "Italy"\ 109220080Snwhitehorn ftp://ftp.jp.freebsd.org "Japan"\ 110220080Snwhitehorn ftp://ftp2.jp.freebsd.org "Japan #2"\ 111220080Snwhitehorn ftp://ftp3.jp.freebsd.org "Japan #3"\ 112220080Snwhitehorn ftp://ftp4.jp.freebsd.org "Japan #4"\ 113220080Snwhitehorn ftp://ftp5.jp.freebsd.org "Japan #5"\ 114220080Snwhitehorn ftp://ftp6.jp.freebsd.org "Japan #6"\ 115220080Snwhitehorn ftp://ftp7.jp.freebsd.org "Japan #7"\ 116220080Snwhitehorn ftp://ftp8.jp.freebsd.org "Japan #8"\ 117220080Snwhitehorn ftp://ftp9.jp.freebsd.org "Japan #9"\ 118220080Snwhitehorn ftp://ftp.kr.freebsd.org "Korea"\ 119220080Snwhitehorn ftp://ftp2.kr.freebsd.org "Korea #2"\ 120220080Snwhitehorn ftp://ftp.lt.freebsd.org "Lithuania"\ 121220080Snwhitehorn ftp://ftp.nl.freebsd.org "Netherlands"\ 122220080Snwhitehorn ftp://ftp2.nl.freebsd.org "Netherlands #2"\ 123220080Snwhitehorn ftp://ftp.no.freebsd.org "Norway"\ 124220080Snwhitehorn ftp://ftp3.no.freebsd.org "Norway #3"\ 125220080Snwhitehorn ftp://ftp.pl.freebsd.org "Poland"\ 126220080Snwhitehorn ftp://ftp2.pl.freebsd.org "Poland #2"\ 127220080Snwhitehorn ftp://ftp5.pl.freebsd.org "Poland #5"\ 128220080Snwhitehorn ftp://ftp.pt.freebsd.org "Portugal"\ 129220080Snwhitehorn ftp://ftp2.pt.freebsd.org "Portugal #2"\ 130220080Snwhitehorn ftp://ftp4.pt.freebsd.org "Portugal #4"\ 131220080Snwhitehorn ftp://ftp.ro.freebsd.org "Romania"\ 132220080Snwhitehorn ftp://ftp.ru.freebsd.org "Russia"\ 133220080Snwhitehorn ftp://ftp2.ru.freebsd.org "Russia #2"\ 134220080Snwhitehorn ftp://ftp3.ru.freebsd.org "Russia #3"\ 135220080Snwhitehorn ftp://ftp4.ru.freebsd.org "Russia #4"\ 136220080Snwhitehorn ftp://ftp.sg.freebsd.org "Singapore"\ 137220080Snwhitehorn ftp://ftp.sk.freebsd.org "Slovak Republic"\ 138220080Snwhitehorn ftp://ftp.si.freebsd.org "Slovenia"\ 139220080Snwhitehorn ftp://ftp2.si.freebsd.org "Slovenia #2"\ 140220080Snwhitehorn ftp://ftp.za.freebsd.org "South Africa"\ 141220080Snwhitehorn ftp://ftp2.za.freebsd.org "South Africa #2"\ 142220080Snwhitehorn ftp://ftp3.za.freebsd.org "South Africa #3"\ 143220080Snwhitehorn ftp://ftp4.za.freebsd.org "South Africa #4"\ 144220080Snwhitehorn ftp://ftp.es.freebsd.org "Spain"\ 145220080Snwhitehorn ftp://ftp2.es.freebsd.org "Spain #2"\ 146220080Snwhitehorn ftp://ftp3.es.freebsd.org "Spain #3"\ 147220080Snwhitehorn ftp://ftp.se.freebsd.org "Sweden"\ 148220080Snwhitehorn ftp://ftp2.se.freebsd.org "Sweden #2"\ 149220080Snwhitehorn ftp://ftp3.se.freebsd.org "Sweden #3"\ 150220080Snwhitehorn ftp://ftp4.se.freebsd.org "Sweden #4"\ 151220080Snwhitehorn ftp://ftp5.se.freebsd.org "Sweden #5"\ 152243832Sjoel ftp://ftp6.se.freebsd.org "Sweden #6"\ 153220080Snwhitehorn ftp://ftp.ch.freebsd.org "Switzerland"\ 154220080Snwhitehorn ftp://ftp2.ch.freebsd.org "Switzerland #2"\ 155220080Snwhitehorn ftp://ftp.tw.freebsd.org "Taiwan"\ 156220080Snwhitehorn ftp://ftp2.tw.freebsd.org "Taiwan #2"\ 157220080Snwhitehorn ftp://ftp3.tw.freebsd.org "Taiwan #3"\ 158220080Snwhitehorn ftp://ftp4.tw.freebsd.org "Taiwan #4"\ 159220080Snwhitehorn ftp://ftp6.tw.freebsd.org "Taiwan #6"\ 160220080Snwhitehorn ftp://ftp11.tw.freebsd.org "Taiwan #11"\ 161220080Snwhitehorn ftp://ftp.tr.freebsd.org "Turkey"\ 162220080Snwhitehorn ftp://ftp2.tr.freebsd.org "Turkey #2"\ 163220080Snwhitehorn ftp://ftp.uk.freebsd.org "UK"\ 164220080Snwhitehorn ftp://ftp2.uk.freebsd.org "UK #2"\ 165220080Snwhitehorn ftp://ftp3.uk.freebsd.org "UK #3"\ 166220080Snwhitehorn ftp://ftp4.uk.freebsd.org "UK #4"\ 167220080Snwhitehorn ftp://ftp5.uk.freebsd.org "UK #5"\ 168220080Snwhitehorn ftp://ftp6.uk.freebsd.org "UK #6"\ 169220080Snwhitehorn ftp://ftp.ua.freebsd.org "Ukraine"\ 170220080Snwhitehorn ftp://ftp2.ua.freebsd.org "Ukraine #2"\ 171220080Snwhitehorn ftp://ftp5.ua.freebsd.org "Ukraine #5"\ 172220080Snwhitehorn ftp://ftp6.ua.freebsd.org "Ukraine #6"\ 173220080Snwhitehorn ftp://ftp7.ua.freebsd.org "Ukraine #7"\ 174220080Snwhitehorn ftp://ftp8.ua.freebsd.org "Ukraine #8"\ 175220080Snwhitehorn ftp://ftp1.us.freebsd.org "USA #1"\ 176220080Snwhitehorn ftp://ftp2.us.freebsd.org "USA #2"\ 177220080Snwhitehorn ftp://ftp3.us.freebsd.org "USA #3"\ 178220080Snwhitehorn ftp://ftp4.us.freebsd.org "USA #4"\ 179220080Snwhitehorn ftp://ftp5.us.freebsd.org "USA #5"\ 180220080Snwhitehorn ftp://ftp6.us.freebsd.org "USA #6"\ 181220080Snwhitehorn ftp://ftp7.us.freebsd.org "USA #7"\ 182220080Snwhitehorn ftp://ftp8.us.freebsd.org "USA #8"\ 183220080Snwhitehorn ftp://ftp9.us.freebsd.org "USA #9"\ 184220080Snwhitehorn ftp://ftp10.us.freebsd.org "USA #10"\ 185220080Snwhitehorn ftp://ftp11.us.freebsd.org "USA #11"\ 186220080Snwhitehorn ftp://ftp12.us.freebsd.org "USA #12"\ 187220080Snwhitehorn ftp://ftp13.us.freebsd.org "USA #13"\ 188220080Snwhitehorn ftp://ftp14.us.freebsd.org "USA #14"\ 189220080Snwhitehorn ftp://ftp15.us.freebsd.org "USA #15"\ 190220080Snwhitehorn 2>&1 1>&3` 191220080SnwhitehornMIRROR_BUTTON=$? 192220080Snwhitehornexec 3>&- 193220080Snwhitehorn 194244057Sgjb_UNAME_R=`uname -r` 195220080Snwhitehorn 196244057Sgjbcase ${_UNAME_R} in 197244057Sgjb *-CURRENT|*-STABLE|*-PRERELEASE|*-RC*) 198244057Sgjb RELDIR="snapshots" 199244057Sgjb ;; 200244057Sgjb *) 201244057Sgjb RELDIR="releases" 202244057Sgjb ;; 203244057Sgjbesac 204244057Sgjb 205244057SgjbBSDINSTALL_DISTSITE="$MIRROR/pub/FreeBSD/${RELDIR}/`uname -m`/`uname -p`/${_UNAME_R}" 206244057Sgjb 207220080Snwhitehorncase $MIRROR_BUTTON in 208220080Snwhitehorn$DIALOG_CANCEL) 209220080Snwhitehorn exit 1 210220080Snwhitehorn ;; 211220080Snwhitehorn$DIALOG_OK) 212220080Snwhitehorn ;; 213220080Snwhitehorn$DIALOG_EXTRA) 214220080Snwhitehorn exec 3>&1 215220080Snwhitehorn BSDINSTALL_DISTSITE=`dialog --backtitle "FreeBSD Installer" \ 216220080Snwhitehorn --title "Mirror Selection" \ 217220080Snwhitehorn --inputbox "Please enter the URL to an alternate FreeBSD mirror:" \ 218220080Snwhitehorn 0 0 "$BSDINSTALL_DISTSITE" 2>&1 1>&3` 219220080Snwhitehorn MIRROR_BUTTON=$? 220220080Snwhitehorn exec 3>&- 221220080Snwhitehorn test $MIRROR_BUTTON -eq 0 || exec $0 $@ 222220080Snwhitehorn ;; 223220080Snwhitehornesac 224220080Snwhitehorn 225220080Snwhitehornexport BSDINSTALL_DISTSITE 226220080Snwhitehornecho $BSDINSTALL_DISTSITE >&2 227