]> git.sur5r.net Git - i3/i3/blob - travis/travis-base-ubuntu.Dockerfile
a3dab4bacb3ce0b8fcc745893146798df0c7130e
[i3/i3] / travis / travis-base-ubuntu.Dockerfile
1 # vim:ft=Dockerfile
2 # Same as travis-base.Dockerfile, but without the test suite dependencies since
3 # we only build Debian packages on Ubuntu, we don’t run the tests.
4 FROM ubuntu:wily
5
6 RUN echo force-unsafe-io > /etc/dpkg/dpkg.cfg.d/docker-apt-speedup
7 # Paper over occasional network flakiness of some mirrors.
8 RUN echo 'APT::Acquire::Retries "5";' > /etc/apt/apt.conf.d/80retry
9
10 # NOTE: I tried exclusively using gce_debian_mirror.storage.googleapis.com
11 # instead of httpredir.debian.org, but the results (Fetched 123 MB in 36s (3357
12 # kB/s)) are not any better than httpredir.debian.org (Fetched 123 MB in 34s
13 # (3608 kB/s)). Hence, let’s stick with httpredir.debian.org (default) for now.
14
15 # Install mk-build-deps (for installing the i3 build dependencies),
16 # clang and clang-format-3.5 (for checking formatting and building with clang),
17 # lintian (for checking spelling errors),
18 # test suite dependencies (for running tests)
19 RUN apt-get update && \
20     DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
21     dpkg-dev devscripts git equivs \
22     clang clang-format-3.5 \
23     lintian && \
24     rm -rf /var/lib/apt/lists/*
25
26 # Install i3 build dependencies.
27 COPY debian/control /usr/src/i3-debian-packaging/control
28 RUN apt-get update && \
29     sed -i '/^\s*libxcb-xrm-dev/d' /usr/src/i3-debian-packaging/control && \
30     DEBIAN_FRONTEND=noninteractive mk-build-deps --install --remove --tool 'apt-get --no-install-recommends -y' /usr/src/i3-debian-packaging/control && \
31     rm -rf /var/lib/apt/lists/*
32
33 # Install xcb-util-xrm. This is a workaround until it is available in the
34 # distribution packages.
35 RUN apt-get update && \
36     DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends xutils-dev ca-certificates autoconf automake autotools-dev
37 RUN git clone --recursive https://github.com/Airblader/xcb-util-xrm.git && \
38     cd xcb-util-xrm && \
39     ./autogen.sh --prefix=/usr && \
40     make && \
41     make install && \
42     cd -