|
| 1 | +#!/bin/bash -e |
| 2 | + |
| 3 | +SBCL="sbcl --noinform --no-userinit --no-sysinit --non-interactive" |
| 4 | +QUICKLISP="$SBCL --load $HOME/quicklisp/setup.lisp" |
| 5 | + |
| 6 | +# Non-debian packages bundled up from hornbeam |
| 7 | +cd "$HOME" |
| 8 | +wget https://www.quicklisp.org/quicklisp-controller/packages.tar |
| 9 | +tar xvf packages.tar |
| 10 | +su root -c 'dpkg -i packages/*.deb' |
| 11 | + |
| 12 | + |
| 13 | +# Quicklisp setup |
| 14 | +wget https://beta.quicklisp.org/quicklisp.lisp |
| 15 | +$SBCL --load quicklisp.lisp \ |
| 16 | + --eval '(quicklisp-quickstart:install)' |
| 17 | + |
| 18 | +# Quicklisp-controller setup |
| 19 | +su root -c 'apt-get -y install git' |
| 20 | +cd quicklisp/local-projects/ |
| 21 | +git clone https://github.com/quicklisp/quicklisp-controller.git |
| 22 | +cd quicklisp-controller/debian-setup |
| 23 | +su root -c 'apt-get -y install `cat debian-8-packages.txt`' |
| 24 | + |
| 25 | + |
| 26 | +# Other required git repos |
| 27 | +cd "$HOME"/quicklisp/local-projects/ |
| 28 | + |
| 29 | +git clone https://github.com/quicklisp/project-info.git |
| 30 | +git clone https://github.com/xach/commando.git |
| 31 | +git clone https://github.com/xach/githappy.git |
| 32 | + |
| 33 | +cd "$HOME" |
| 34 | + |
| 35 | +git clone https://github.com/quicklisp/quicklisp-projects.git |
| 36 | + |
| 37 | + |
| 38 | +# Initial setup |
| 39 | +$QUICKLISP \ |
| 40 | + --eval '(ql-util:without-prompting (ql:add-to-init-file))' \ |
| 41 | + --eval '(ql:quickload "quicklisp-controller")' \ |
| 42 | + --eval '(quicklisp-controller:setup-directories "~/quicklisp-projects/")' |
| 43 | + |
| 44 | + |
| 45 | +# Emacs setup |
| 46 | +$QUICKLISP --eval '(ql:quickload "quicklisp-slime-helper")' |
| 47 | + |
| 48 | +echo '(load (expand-file-name "~/quicklisp/slime-helper.el"))' >> "$HOME"/.emacs |
| 49 | +echo '(setq inferior-lisp-program "sbcl")' >> "$HOME/".emacs |
| 50 | + |
| 51 | +echo "Ready for slime" |
| 52 | + |
| 53 | + |
| 54 | + |
0 commit comments