diff --git a/.dockerignore b/.dockerignore index 378eac25..79b7dcaa 100644 --- a/.dockerignore +++ b/.dockerignore @@ -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 diff --git a/Dockerfile b/Dockerfile index c45215c1..599baef9 100644 --- a/Dockerfile +++ b/Dockerfile @@ -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" ]