Merge branch 'master' into bjh21-unterminated-strings
[jackhill/mal.git] / basic / Dockerfile
1 FROM ubuntu:wily
2 MAINTAINER Joel Martin <github@martintribe.org>
3
4 ##########################################################
5 # General requirements for testing or common across many
6 # implementations
7 ##########################################################
8
9 RUN apt-get -y update
10
11 # Required for running tests
12 RUN apt-get -y install make python
13
14 # Some typical implementation and test requirements
15 RUN apt-get -y install curl libreadline-dev libedit-dev
16
17 RUN mkdir -p /mal
18 WORKDIR /mal
19
20 ##########################################################
21 # Specific implementation requirements
22 ##########################################################
23
24 # cbmbasic
25 RUN apt-get install -y gcc unzip patch
26 RUN cd /tmp && \
27 curl -L https://github.com/kanaka/cbmbasic/archive/master.zip -o cbmbasic.zip && \
28 unzip cbmbasic.zip && \
29 cd cbmbasic-master && \
30 make && \
31 cp cbmbasic /usr/bin/cbmbasic && \
32 cd .. && \
33 rm -r cbmbasic*
34
35 RUN apt-get install -y g++ mesa-common-dev libglu1-mesa-dev libasound2-dev wget
36 RUN cd /tmp && \
37 curl -L http://www.qb64.net/release/official/2017_02_09__02_14_38-1.1-20170120.51/linux/qb64-1.1-20170120.51-lnx.tar.gz | tar xzf - && \
38 cd qb64 && \
39 find . -name '*.sh' -exec sed -i "s/\r//g" {} \; && \
40 env EUID=1 ./setup_lnx.sh && \
41 mkdir -p /usr/share/qb64 && \
42 cp -a qb64 internal LICENSE programs source /usr/share/qb64/ && \
43 echo '#!/bin/sh\ncd /usr/share/qb64\n./qb64 "${@}"' > /usr/bin/qb64 && \
44 chmod +x /usr/bin/qb64
45
46