2019-09-06 06:02:18 +04:00
#!/bin/sh
set -e
2019-06-08 23:03:53 +04:00
# This script installs opam for the user. It should NOT be included in any makefiles/etc.
2019-06-08 23:13:06 +04:00
if [ -n "`which opam`" ]
2019-06-08 23:03:53 +04:00
then
if [ -n "`opam --version | grep -P " 2\. .\. ."`" ]
then
echo "Opam 2.x seems to already exist, exiting..."
exit 1
2019-06-09 01:19:07 +04:00
else
read -p "This script will upgrade opam to the 2.x series, are you okay with that? (y/n)" choice1
case " $choice1 " in
y| Y ) : ; ;
n| N ) exit ; ;
esac
2019-06-08 23:03:53 +04:00
fi
fi
2019-06-08 09:01:23 +04:00
sudo apt-get install -y make \
m4 \
gcc \
patch \
bubblewrap \
rsync \
curl \
2019-06-08 23:03:53 +04:00
2019-06-08 09:01:23 +04:00
if [ -n "`uname -a | grep -i ubuntu`" ]
then
sudo add-apt-repository -y ppa:avsm/ppa
sudo apt-get update
2019-06-08 23:03:53 +04:00
sudo apt-get install opam
2019-06-08 09:01:23 +04:00
else
# I'm going to assume here that we're on x86_64, 32-bit users should be basically
# extinct at this point right?
curl -L https://github.com/ocaml/opam/releases/download/2.0.4/opam-2.0.4-x86_64-linux \
2019-06-08 23:03:53 +04:00
--output opam_temp_version_2_0_4.bin
2019-06-09 02:19:47 +04:00
if [ "`openssl sha256 -r opam_temp_version_2_0_4.bin`" = "373e34f92f282273d482537f8103caad0d17b6f2699ff504bed77f474cb0c951 *opam_temp_version_2_0_4.bin" ]
2019-06-08 09:01:23 +04:00
then
2019-06-08 23:03:53 +04:00
# Stay paranoid, in case other checks fail don't want to overrwrite
# user's opam on accident
chmod +x opam_temp_version_2_0_4.bin # Set execute so we can get version
if [ -e /usr/local/bin/opam ]
then
opam_old_v = ` /usr/local/bin/opam --version`
opam_new_v = ` opam_temp_version_2_0_4.bin --version`
read -p " This will overrwrite the opam you have in /usr/local/bin (version $opam_old_v ) with version $opam_new_v , do you actually want to do that? Type yes. (yes/n) " choice2
else
choice2 = "yes"
fi
if [ $choice2 = "yes" ]
then
sudo mv opam_temp_version_2_0_4.bin /usr/local/bin/opam
else
rm opam_temp_version_2_0_4.bin
exit
2019-06-08 23:13:06 +04:00
fi
2019-06-08 09:01:23 +04:00
else
echo "opam file hash doesn't match what was recorded at time of signature verification!"
echo "(If you actually get this message, you should probably file an issue)"
2019-06-08 23:03:53 +04:00
echo "https://gitlab.com/ligolang/ligo/issues"
2019-06-08 09:01:23 +04:00
exit 1
fi
fi
2019-09-30 02:25:02 +04:00
opam init -a --bare --disable-sandboxing