2efb5d37d2c57a987ed2fdefaa3289c5fa40ee13
[nit.git] / misc / docker / full / Dockerfile
1 # This is a full install of Nit on a debian base.
2 # Full because most dependencies are installed so that most tests can be run
3
4 FROM nitlang/nit:latest
5 MAINTAINER Jean Privat <jean@pryen.org>
6
7 # Dependencies for more libs and tests
8 RUN dpkg --add-architecture i386 \
9         && apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
10                 # Packages needed for lib/
11                 libcurl4-openssl-dev \
12                 libegl1-mesa-dev \
13                 libevent-dev \
14                 libgles1-mesa-dev \
15                 libgles2-mesa-dev \
16                 libgtk-3-dev \
17                 libncurses5-dev \
18                 libpq-dev \
19                 libsdl-image1.2-dev \
20                 libsdl-ttf2.0-dev \
21                 libsdl1.2-dev \
22                 libsdl2-dev \
23                 libsqlite3-dev \
24                 libx11-dev \
25                 libxdg-basedir-dev \
26                 postgresql \
27                 # Packages needed for contrib, platforms and FFI
28                 ant \
29                 clang \
30                 default-jdk \
31                 file \
32                 inkscape \
33                 libopenmpi-dev \
34                 unzip \
35                 # Android
36                 libc6:i386 \
37                 libstdc++6:i386 \
38                 zlib1g:i386 \
39                 # TODO neo4j emscripten test_glsl_validation
40         && rm -rf /var/lib/apt/lists/*
41
42 # Install android sdk/ndk
43 RUN mkdir -p /opt \
44         && cd /opt \
45         # Android SDK
46         && curl https://dl.google.com/android/android-sdk_r24.4.1-linux.tgz -o android-sdk-linux.tgz \
47         && tar xzf android-sdk-linux.tgz \
48         && rm android-sdk-linux.tgz \
49         && echo y | android-sdk-linux/tools/android update sdk -a --no-ui --filter \
50                 # Hardcode minimal known working things
51                 platform-tools,build-tools-22.0.1,android-22,android-10 \
52         # Android NDK
53         && curl http://dl.google.com/android/repository/android-ndk-r11c-linux-x86_64.zip -o android-ndk.zip \
54         && unzip -q android-ndk.zip \
55         && ln -s android-ndk-r11c android-ndk \
56         && rm android-ndk.zip \
57         && printf "PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_NDK\nexport PATH\n" >> "/etc/profile.d/android.sh"
58
59 # Setup environment variables
60 ENV ANDROID_HOME /opt/android-sdk-linux
61 ENV ANDROID_NDK /opt/android-ndk
62 ENV PATH $PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_NDK