Quickref 1.88 KB
Newer Older
1
2
3
4
### Quickref --- Docker file for Quickref

## Copyright (C) 2018 EPITA Research and Development Laboratory

5
## Author: Antoine Martin
6
## Maintainers: Antoine Martin and Didier Verna
Didier Verna's avatar
Didier Verna committed
7
## Contact: Quickref Maintainers <quickref-devel@common-lisp.net>
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

## This file is part of Quickref.

## Permission to use, copy, modify, and distribute this software for any
## purpose with or without fee is hereby granted, provided that the above
## copyright notice and this permission notice appear in all copies.

## THIS SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
## WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
## MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
## ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
## WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
## ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
## OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.


Antoine Martin's avatar
Antoine Martin committed
24
FROM quickref/buildenv
Antoine Martin's avatar
Antoine Martin committed
25

26
# Quickref User
27
28
29
30
RUN useradd -m -s /bin/bash quickref \
	&& chown -R quickref:quickref /home/quickref
WORKDIR /home/quickref
USER quickref
Antoine Martin's avatar
Antoine Martin committed
31

32
# Common Lisp Packages
Antoine Martin's avatar
Antoine Martin committed
33
RUN mkdir common-lisp \
34
35
  && cd common-lisp \
  && git clone --depth 1 https://github.com/didierverna/declt \
36
  && git clone --depth 1 https://gitlab.common-lisp.net/quickref/quickref \
37
38
  && git clone --depth 1 https://gitlab.common-lisp.net/asdf/asdf \
  && cd ..
Antoine Martin's avatar
Antoine Martin committed
39

40
# Quicklisp
Antoine Martin's avatar
Antoine Martin committed
41
42
RUN wget https://beta.quicklisp.org/quicklisp.lisp \
	&& /usr/local/bin/sbcl --non-interactive \
43
44
45
	  --load quicklisp.lisp \
	  --eval '(quicklisp-quickstart:install)' \
	  --eval '(ql-util:without-prompting (ql:add-to-init-file))' \
Antoine Martin's avatar
Antoine Martin committed
46
47
	&& rm -rf .cache/common-lisp quicklisp.lisp

48
# Entry Point
Antoine Martin's avatar
Antoine Martin committed
49
CMD /usr/local/bin/sbcl --non-interactive \
50
	--eval '(ql:quickload :fr.epita.lrde.quickref)' \
51
	--eval '(fr.epita.lrde.quickref:build)'
52
53

### Quickref ends here