Skip to content

Instantly share code, notes, and snippets.

@tani
Last active November 15, 2019 01:29
Show Gist options
  • Save tani/418f2147db82c1b8f2a88413c17fb898 to your computer and use it in GitHub Desktop.
Save tani/418f2147db82c1b8f2a88413c17fb898 to your computer and use it in GitHub Desktop.
#!/bin/bash -e
sudo yum install -y epel-release \
&& sudo yum groupinstall -y 'Development Tools' \
&& sudo yum install -y zeromq-devel ncurses-devel gmp-devel sqlite-devel zlib-devel bsdtar cmake
eval $(echo 'export PATH=$HOME/.local/bin:$PATH' | tee -a $HOME/.bashrc)
mkdir -p $HOME/.local/bin $HOME/.local/share/jupyter/kernels
eval $(echo 'export PATH=$HOME/.miniconda/bin:$PATH' | tee -a $HOME/.bashrc)
curl -fsSL -o miniconda.sh https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh \
&& bash miniconda.sh -b -p $HOME/.miniconda \
&& rm miniconda.sh \
&& echo 'source $HOME/.miniconda/etc/profile.d/conda.sh' >> $HOME/.bashrc \
&& echo 'conda activate base' >> $HOME/.bashrc \
&& source $HOME/.miniconda/etc/profile.d/conda.sh \
&& conda activate base \
&& conda install -y -c conda-forge mamba jupyter jupyterlab jupyter_console
curl -fsSL https://github.com/commercialhaskell/stack/releases/download/v2.1.3/stack-2.1.3-linux-x86_64-static.tar.gz | bsdtar -xf - -O */stack > $HOME/.local/bin/stack \
&& chmod +x $HOME/.local/bin/stack \
&& git clone --depth=1 git://github.com/gibiansky/IHaskell \
&& cd IHaskell \
&& sed -i 's/=.*$//' requirements.txt \
&& pip install -r requirements.txt \
&& sed -i 's%- ./ihaskell-display/%#- ./ihaskell-display/%' stack.yaml \
&& stack install --fast \
&& ihaskell install --stack \
&& cd $HOME \
&& rm -rf $OLDPWD
curl -fsSL -o $HOME/.local/bin/opam https://github.com/ocaml/opam/releases/download/2.0.5/opam-2.0.5-x86_64-linux \
&& chmod +x $HOME/.local/bin/opam \
&& opam init -y --disable-sandboxing \
&& echo 'eval $(opam env)' >> $HOME/.bashrc \
&& eval $(opam env)
opam install -y --unlock-base jupyter \
&& cp -r $(opam config var share)/jupyter $HOME/.local/share/jupyter/kernels/ocaml
opam install -y --unlock-base coq \
&& pip install coq-jupyter \
&& python -m coq_jupyter.install
eval $(echo 'export PATH=$HOME/.go/bin:$PATH' | tee -a $HOME/.bashrc)
mkdir -p .go \
&& curl -fsSL https://dl.google.com/go/go1.13.4.linux-amd64.tar.gz | tar --strip-components 1 -C $HOME/.go -zxf - \
&& go get -u github.com/gopherdata/gophernotes \
&& cp -r $HOME/go/src/github.com/gopherdata/gophernotes/kernel $HOME/.local/share/jupyter/kernels/go
eval $(echo 'export PATH=$HOME/.racket/bin:$PATH' | tee -a $HOME/.bashrc)
curl -fsSLo racket.sh https://mirror.racket-lang.org/installers/7.4/racket-7.4-x86_64-linux-cs.sh \
&& bash racket.sh --unix-style --dest $HOME/.racket --create-dir \
&& rm racket.sh \
&& raco pkg install --auto --batch --skip-installed iracket \
&& raco iracket install
eval $(echo 'export PATH=$HOME/.cargo/bin:$PATH' | tee -a $HOME/.bashrc)
curl -fsSL https://sh.rustup.rs | bash -s -- -y \
&& cargo install evcxr_jupyter --no-default-features \
&& evcxr_jupyter --install
mamba install -y -c conda-forge root sage xeus-cling ecl julia==1.0.0 nodejs mono openjdk imagemagick
cd $(mktemp -d) \
&& curl -fsSLO https://beta.quicklisp.org/quicklisp.lisp \
&& ecl -load quicklisp.lisp -eval '(quicklisp-quickstart:install)' -q \
&& echo '(load (merge-pathnames "quicklisp/setup.lisp" (user-homedir-pathname)))' >> $HOME/.eclrc \
&& sbcl -eval '(ql:quickload :common-lisp-jupyter)' -eval '(cl-jupyter:install)' -q \
&& cd $HOME \
&& rm -rf $OLDPWD
npm install -g ijavascript \
&& ijsinstall
julia -e 'using Pkg; Pkg.add("IJulia")'
cd $(mktemp -d) \
&& curl -fsSL https://github.com/SpencerPark/IJava/releases/download/v1.3.0/ijava-1.3.0.zip | bsdtar -xf - \
&& python3 install.py --user \
&& cd $HOME \
&& rm -rf $OLDPWD
cd $(mktemp -d) \
&& curl -fsSLo $HOME/.local/bin/coursier https://git.io/coursier-cli \
&& chmod +x $HOME/.local/bin/coursier \
&& coursier bootstrap --standalone \
-r jitpack \
-i user -I user:sh.almond:scala-kernel-api_2.13.1:0.8.2 \
sh.almond:scala-kernel_2.13.1:0.8.2 \
-o $HOME/.local/share/almond \
&& almond --install \
&& cd $HOME \
&& rm -rf $OLDPWD
cd $(mktemp -d) \
&& curl -fsSLo $HOME/.local/bin/lein https://raw.githubusercontent.com/technomancy/leiningen/stable/bin/lein \
&& chmod +x $HOME/.local/bin/lein \
&& curl -fsSL https://github.com/clojupyter/clojupyter/archive/master.tar.gz | bsdtar --strip-components 1 -xf - \
&& make install \
&& cd $HOME \
&& rm -rf $OLDPWD
mkdir $HOME/.ifsharp \
&& curl -fsSL https://github.com/fsprojects/IfSharp/releases/download/v3.0.1/IfSharp.v3.0.1.zip | bsdtar -C $HOME/.ifsharp -xf - \
&& mono $HOME/.ifsharp/ifsharp.exe --install
#!/bin/bash
set -e
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
sudo sed -i 's%http://[^ ]*%mirror://mirrors.ubuntu.com/mirrors.txt%g' /etc/apt/sources.list
sudo echo 'deb https://download.mono-project.com/repo/ubuntu stable-bionic main' > /etc/apt/sources.list.d/mono-official-stable.list
sudo apt-get update
sudo apt-get install -y build-essential libzmq3-dev libncurses-dev libgmp-dev libsqlite3-dev zlib1g-dev bsdtar cmake m4 unzip pkg-config mono-complete default-jdk-headless imagemagick
eval $(echo 'export PATH=$HOME/.local/bin:$PATH' | tee -a $HOME/.bashrc)
mkdir -p $HOME/.local/bin $HOME/.local/share/jupyter/kernels
eval $(echo 'export PATH=$HOME/.miniconda/bin:$PATH' | tee -a $HOME/.bashrc)
curl -fsSL -o miniconda.sh https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash miniconda.sh -b -p $HOME/.miniconda
rm miniconda.sh
echo 'source $HOME/.miniconda/etc/profile.d/conda.sh' >> $HOME/.bashrc
echo 'conda activate base' >> $HOME/.bashrc
source $HOME/.miniconda/etc/profile.d/conda.sh
conda activate base
conda install -y -c conda-forge mamba jupyter jupyterlab jupyter_console
curl -fsSL https://github.com/commercialhaskell/stack/releases/download/v2.1.3/stack-2.1.3-linux-x86_64-static.tar.gz | bsdtar -xf - -O */stack > $HOME/.local/bin/stack
chmod +x $HOME/.local/bin/stack
git clone --depth=1 git://github.com/gibiansky/IHaskell
cd IHaskell
sed -i 's/=.*$//' requirements.txt
pip install -r requirements.txt
sed -i 's%- ./ihaskell-display/%#- ./ihaskell-display/%' stack.yaml
stack install --fast
ihaskell install --stack
cd $HOME
rm -rf $OLDPWD
curl -fsSL -o $HOME/.local/bin/opam https://github.com/ocaml/opam/releases/download/2.0.5/opam-2.0.5-x86_64-linux
chmod +x $HOME/.local/bin/opam
opam init -y --disable-sandboxing --compiler=4.08.1
echo 'eval $(opam env)' >> $HOME/.bashrc
eval $(opam env)
opam install -y --unlock-base jupyter
jupyter kernelspec install --user --name ocaml $(opam config var share)/jupyter
opam install -y --unlock-base coq
pip install coq-jupyter
python -m coq_jupyter.install
eval $(echo 'export PATH=$HOME/.go/bin:$PATH' | tee -a $HOME/.bashrc)
mkdir -p $HOME/.go
curl -fsSL https://dl.google.com/go/go1.13.4.linux-amd64.tar.gz | tar --strip-components 1 -C $HOME/.go -zxf -
go get -u github.com/gopherdata/gophernotes
cp -r $HOME/go/src/github.com/gopherdata/gophernotes/kernel $HOME/.local/share/jupyter/kernels/go
eval $(echo 'export PATH=$HOME/.racket/bin:$PATH' | tee -a $HOME/.bashrc)
curl -fsSLo racket.sh https://mirror.racket-lang.org/installers/7.4/racket-7.4-x86_64-linux-cs.sh
bash racket.sh --unix-style --dest $HOME/.racket --create-dir
rm racket.sh
raco pkg install --auto --batch --skip-installed iracket
raco iracket install
eval $(echo 'export PATH=$HOME/.cargo/bin:$PATH' | tee -a $HOME/.bashrc)
curl -fsSL https://sh.rustup.rs | bash -s -- -y
cargo install evcxr_jupyter --no-default-features
evcxr_jupyter --install
eval $(echo 'export PATH=$HOME/.sbcl/bin:$PATH SBCL_HOME=$HOME/.sbcl/lib/sbcl' | tee -a $HOME/.bashrc)
cd $(mktemp -d)
curl -fsSL http://prdownloads.sourceforge.net/sbcl/sbcl-1.4.0-x86-64-linux-binary.tar.bz2 | bsdtar --strip-components 1 -xf -
INSTALL_ROOT=$HOME/.sbcl bash install.sh
curl -fsSLO https://beta.quicklisp.org/quicklisp.lisp
sbcl --load quicklisp.lisp --eval '(quicklisp-quickstart:install)' --quit
echo '(load (merge-pathnames "quicklisp/setup.lisp" (user-homedir-pathname)))' >> $HOME/.sbclrc
sbcl --eval '(ql:quickload :common-lisp-jupyter)' --eval '(cl-jupyter:install)' --quit
cd $HOME
rm -rf $OLDPWD
eval $(echo 'export PATH=$HOME/.julia/bin:$PATH' | tee -a $HOME/.bashrc)
mkdir $HOME/.julia
curl -fsSL https://julialang-s3.julialang.org/bin/linux/x64/1.2/julia-1.2.0-linux-x86_64.tar.gz | bsdtar --strip-components 1 -C $HOME/.julia -xf -
julia -e 'using Pkg; Pkg.add("IJulia")'
eval $(echo 'export PATH=$HOME/.node/bin:$PATH' | tee -a $HOME.bashrc)
mkdir $HOME/.node
curl -fsSL https://nodejs.org/dist/v12.13.0/node-v12.13.0-linux-x64.tar.xz | bsdtar --strip-components 1 -C $HOME/.node -xf -
npm install -g ijavascript
ijsinstall
cd $(mktemp -d)
curl -fsSL https://github.com/SpencerPark/IJava/releases/download/v1.3.0/ijava-1.3.0.zip | bsdtar -xf -
python3 install.py --user
cd $HOME
rm -rf $OLDPWD
cd $(mktemp -d)
curl -fsSLo $HOME/.local/bin/coursier https://git.io/coursier-cli
chmod +x $HOME/.local/bin/coursier
coursier bootstrap --standalone -r jitpack -i user -I user:sh.almond:scala-kernel-api_2.13.1:0.8.2 sh.almond:scala-kernel_2.13.1:0.8.2 -o $HOME/.local/bin/almond
almond --install
cd $HOME
rm -rf $OLDPWD
cd $(mktemp -d)
curl -fsSLo $HOME/.local/bin/lein https://raw.githubusercontent.com/technomancy/leiningen/stable/bin/lein
chmod +x $HOME/.local/bin/lein
curl -fsSL https://github.com/clojupyter/clojupyter/archive/master.tar.gz | bsdtar --strip-components 1 -xf -
make install
cd $HOME
rm -rf $OLDPWD
mkdir $HOME/.ifsharp
curl -fsSL https://github.com/fsprojects/IfSharp/releases/download/v3.0.1/IfSharp.v3.0.1.zip | bsdtar -C $HOME/.ifsharp -xf -
mono $HOME/.ifsharp/ifsharp.exe --install
mamba install -y -c conda-forge root sage xeus-cling
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment