44#
55
66source " ${BASH_SOURCE%/* } " /piUtils.sh
7- pharoLatest=" 130+vm"
87
98find_os_id () {
109 # Find our distribution or OS
@@ -56,14 +55,6 @@ apt_install () {
5655 sudo apt-get install libc6:i386 libssl1.0.0:i386 libfreetype6:i386
5756}
5857
59- # For ElementaryOS
60- # This function is currently not used
61- ppa_install () {
62- add-apt-repository ppa:pharo/stable
63- apt-get update
64- apt-get install pharo-vm-desktop
65- }
66-
6758# For CentOS/RedHat
6859# This function is currently not used
6960yum_install () {
@@ -86,10 +77,10 @@ linstall_pharo () {
8677 case " $os " in
8778 " arm64" )
8879 zeroConfUrl=" http://files.pharo.org/vm/pharo-spur64-headless/Darwin-arm64/latest.zip"
89- download_pharo_m1_latest
80+ download_pharo_arm64
9081 ;;
9182 * )
92- download_pharo_latest
83+ download_pharo_x86_64
9384 ;;
9485 esac
9586}
@@ -100,16 +91,13 @@ install_pharo () {
10091 case " $os " in
10192 " arm64" )
10293 zeroConfUrl=" http://files.pharo.org/vm/pharo-spur64-headless/Darwin-arm64/latest.zip"
103- download_pharo_m1
94+ download_pharo_arm64 $1
10495 ;;
10596 " CentOS*" | " RedHat*" )
10697 yum_install
10798 ;;
108- " Ubuntu*" )
109- ppa_install
110- ;;
11199 * )
112- download_pharo
100+ download_pharo_x86_64 $1
113101 ;;
114102 esac
115103}
@@ -137,13 +125,7 @@ run_pharo () {
137125
138126# Install a stable image and run Pharo
139127irun_pharo () {
140- install_pharo
141- run_pharo
142- }
143-
144- # Install latest Pharo and run Pharo.image
145- lrun_pharo () {
146- linstall_pharo
128+ install_pharo $1
147129 run_pharo
148130}
149131
@@ -157,53 +139,36 @@ trun_pharo () {
157139
158140# Trash pharo-local (requires trash utility) and run Pharo.image
159141nrun_pharo () {
160- dirname=$( date +%Y-%m-%d-%S)
161- (mkdir -v " $dirname " && cd " $dirname " && irun_pharo) || pi_log " Cannot run Pharo Image"
142+ if [ ! $# -eq 0 ]; then
143+ pharoRequestedVersion=$1
144+ fi
145+ dirname=" pharo-$pharoRequestedVersion -$( date +%Y-%m-%d-%S) "
146+ (mkdir -v " $dirname " && cd " $dirname " && irun_pharo $1 ) || pi_log " Cannot run Pharo Image"
162147}
163148
164- # Install latest Pharo in a new timestamed directory and run Pharo.image
165- nlrun_pharo () {
166- dirname=$( date +%Y-%m-%d-%S)
167- (mkdir -v " $dirname " && cd " $dirname " && lrun_pharo) || pi_log " Cannot run Pharo Image"
168- }
169-
170- download_pharo () {
149+ download_pharo_x86_64 () {
171150 pi_log " Checking Pharo installation in the current directory...\n"
172151 if ! is_pharo_installed; then
152+ if [ ! $# -eq 0 ]; then
153+ pharoRequestedVersion=$1
154+ fi
155+ # Convert to Zeroconf version, i.e. Requesting 13 -> 130
156+ urlVersion=" ${pharoRequestedVersion} 0+vm"
173157 pi_log " Downloading Pharo...\n"
174- exec $dApp $dPharoParams $zeroConfUrl | bash
158+ exec $dApp $dPharoParams $zeroConfUrl / $urlVersion | bash
175159 fi
176160 [[ ! is_pharo_installed ]] && { pi_err " Could not download Pharo, exiting\n" ; exit 1; }
177161}
178162
179- download_pharo_latest () {
180- pi_log " Checking latest Pharo installation in the current directory...\n"
181- if ! is_pharo_installed; then
182- pi_log " Downloading latest Pharo...\n"
183- exec $dApp $dPharoParams $zeroConfUrl /$pharoLatest | bash
184- fi
185- [[ ! is_pharo_installed ]] && { pi_err " Could not download latest Pharo, exiting\n" ; exit 1; }
186- }
187-
188- download_pharo_m1 () {
163+ download_pharo_arm64 () {
189164 pi_log " Checking Pharo installation in the current directory...\n"
190165 if ! is_pharo_installed; then
166+ # Convert to Zeroconf version, i.e. Requesting 13 -> 130
167+ urlVersion=" ${pharoRequestedVersion} 0"
191168 pi_log " Downloading Pharo...\n"
192169 exec $dApp $zeroConfUrl
193170 unzip latest.zip
194- exec $dApp $dPharoParams get.pharo.org/64 | bash -
195- fi
196- [[ ! is_pharo_installed ]] && { pi_err " Could not download Pharo, exiting\n" ; exit 1; }
197- }
198-
199- # Latest version of Pharo for ZeroConf download
200- download_pharo_m1_latest () {
201- pi_log " Checking latest Pharo installation in the current directory...\n"
202- if ! is_pharo_installed; then
203- pi_log " Downloading latest Pharo...\n"
204- exec $dApp $zeroConfUrl
205- unzip latest.zip
206- exec $dApp $dPharoParams get.pharo.org/64/$pharoLatest | bash -
171+ exec $dApp $dPharoParams get.pharo.org/64/$urlVersion | bash -
207172 fi
208173 [[ ! is_pharo_installed ]] && { pi_err " Could not download latest Pharo, exiting\n" ; exit 1; }
209174}
0 commit comments