1
0
mirror of https://github.com/Llewellynvdm/conky.git synced 2025-01-11 10:38:12 +00:00

Refactor Dockerfile.

This commit is contained in:
Brenden Matthews 2019-02-21 08:59:29 -05:00
parent 14e3b80c45
commit 25acfe51cc
2 changed files with 130 additions and 94 deletions

View File

@ -1 +1,28 @@
build
Dockerfile
.dockerignore
.DS_Store
*~
.*.swp
Doxyfile
patches/
doc/conky.1
README
build*/
doc/*.html
Makefile
CMakeCache.txt
CMakeFiles
data/convertconf.h
data/defconfig.h
lua/libcairo-orig.c
lua/libcairo.c
lua/libimlib2.c
*.so
*.a
/config.h
# Ignore vscode stuff
.vscode
*.code-workspace

View File

@ -1,106 +1,115 @@
FROM ubuntu:bionic AS base
FROM ubuntu:bionic AS builder
RUN apt-get update \
&& DEBIAN_FRONTEND=noninteractive \
apt-get install -qy --no-install-recommends \
cmake \
git \
g++ \
libimlib2-dev \
libxext-dev \
libxft-dev \
libxdamage-dev \
libxinerama-dev \
libmysqlclient-dev \
libical-dev \
libircclient-dev \
libcairo2-dev \
libmicrohttpd-dev \
ncurses-dev \
liblua5.3-dev \
librsvg2-dev \
libaudclient-dev \
libxmmsclient-dev \
libpulse-dev \
libcurl4-gnutls-dev \
audacious-dev \
libsystemd-dev \
libxml2-dev \
libxnvctrl-dev \
libiw-dev
FROM base
cmake \
git \
g++ \
audacious-dev \
libaudclient-dev \
libcairo2-dev \
libcurl4-openssl-dev \
libical-dev \
libimlib2-dev \
libircclient-dev \
libiw-dev \
liblua5.3-dev \
libmicrohttpd-dev \
libmysqlclient-dev \
libpulse-dev \
librsvg2-dev \
libsystemd-dev \
libxdamage-dev \
libxext-dev \
libxft-dev \
libxinerama-dev \
libxml2-dev \
libxmmsclient-dev \
libxnvctrl-dev \
ncurses-dev
COPY . /conky
WORKDIR /conky/build
ARG X11=yes
RUN sh -c 'if [ "$X11" = "yes" ] ; then \
cmake \
-DBUILD_MYSQL=ON \
-DBUILD_LUA_CAIRO=ON \
-DBUILD_LUA_IMLIB2=ON \
-DBUILD_LUA_RSVG=ON \
-DBUILD_LUA_CAIRO=ON \
-DBUILD_AUDACIOUS=ON \
-DBUILD_XMMS2=ON \
-DBUILD_ICAL=ON \
-DBUILD_IRC=ON \
-DBUILD_HTTP=ON \
-DBUILD_ICONV=ON \
-DBUILD_PULSEAUDIO=ON \
-DBUILD_JOURNAL=ON \
-DBUILD_RSS=ON \
-DBUILD_NVIDIA=ON \
-DBUILD_WLAN=ON \
../ \
cmake \
-DCMAKE_INSTALL_PREFIX=/opt/conky \
-DBUILD_AUDACIOUS=ON \
-DBUILD_HTTP=ON \
-DBUILD_ICAL=ON \
-DBUILD_ICONV=ON \
-DBUILD_IRC=ON \
-DBUILD_JOURNAL=ON \
-DBUILD_LUA_CAIRO=ON \
-DBUILD_LUA_CAIRO=ON \
-DBUILD_LUA_IMLIB2=ON \
-DBUILD_LUA_RSVG=ON \
-DBUILD_MYSQL=ON \
-DBUILD_NVIDIA=ON \
-DBUILD_PULSEAUDIO=ON \
-DBUILD_RSS=ON \
-DBUILD_WLAN=ON \
-DBUILD_XMMS2=ON \
../ \
; else \
cmake \
-DBUILD_X11=OFF \
-DBUILD_MYSQL=ON \
-DBUILD_LUA_CAIRO=ON \
-DBUILD_LUA_IMLIB2=ON \
-DBUILD_LUA_RSVG=ON \
-DBUILD_LUA_CAIRO=ON \
-DBUILD_AUDACIOUS=ON \
-DBUILD_XMMS2=ON \
-DBUILD_ICAL=ON \
-DBUILD_IRC=ON \
-DBUILD_HTTP=ON \
-DBUILD_ICONV=ON \
-DBUILD_PULSEAUDIO=ON \
-DBUILD_JOURNAL=ON \
-DBUILD_RSS=ON \
-DBUILD_WLAN=ON \
../ \
cmake \
-DCMAKE_INSTALL_PREFIX=/opt/conky \
-DBUILD_AUDACIOUS=ON \
-DBUILD_HTTP=ON \
-DBUILD_ICAL=ON \
-DBUILD_ICONV=ON \
-DBUILD_IRC=ON \
-DBUILD_JOURNAL=ON \
-DBUILD_LUA_CAIRO=ON \
-DBUILD_LUA_CAIRO=ON \
-DBUILD_LUA_IMLIB2=ON \
-DBUILD_LUA_RSVG=ON \
-DBUILD_MYSQL=ON \
-DBUILD_PULSEAUDIO=ON \
-DBUILD_RSS=ON \
-DBUILD_WLAN=ON \
-DBUILD_X11=OFF \
-DBUILD_XMMS2=ON \
../ \
; fi' \
&& make -j5 all \
&& make -j5 install \
&& apt-get remove -y \
cmake \
git \
g++ \
libimlib2-dev \
libxext-dev \
libxft-dev \
libxdamage-dev \
libxinerama-dev \
libmysqlclient-dev \
libical-dev \
libircclient-dev \
libcairo2-dev \
libmicrohttpd-dev \
ncurses-dev \
liblua5.3-dev \
librsvg2-dev \
audacious-dev \
libaudclient-dev \
libxmmsclient-dev \
libpulse-dev \
libcurl4-gnutls-dev \
libsystemd-dev \
libxml2-dev \
libxnvctrl-dev \
&& rm -rf /var/lib/apt/lists/* \
&& rm -rf /conky
&& make -j5 install
CMD conky
FROM ubuntu:bionic
RUN apt-get update \
&& DEBIAN_FRONTEND=noninteractive \
apt-get install -qy --no-install-recommends \
libaudclient2 \
libcairo2 \
libcurl4 \
libical3 \
libimlib2 \
libircclient1 \
libiw30 \
liblua5.3-0 \
libmicrohttpd12 \
libmysqlclient20 \
libncurses5 \
libpulse0 \
librsvg2-2 \
libsystemd0 \
libxcb-xfixes0 \
libxdamage1 \
libxext6 \
libxfixes3 \
libxft2 \
libxinerama1 \
libxml2 \
libxmmsclient6 \
libxnvctrl0 \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
COPY --from=builder /opt/conky /opt/conky
ENV PATH="/opt/conky/bin:${PATH}"
ENV LD_LIBRARY_PATH="/opt/conky/lib:${LD_LIBRARY_PATH}"
ENTRYPOINT [ "/opt/conky/bin/conky" ]