Skip to content

Instantly share code, notes, and snippets.

@shadone
Created April 12, 2016 10:44
Show Gist options
  • Save shadone/322610b791d7919137d2ba55bdccaed1 to your computer and use it in GitHub Desktop.
Save shadone/322610b791d7919137d2ba55bdccaed1 to your computer and use it in GitHub Desktop.
FROM ubuntu:14.04
MAINTAINER Denis Dzyubenko <[email protected]>
ENV QUASSEL_POSTGRESQL_USERNAME quassel
ENV QUASSEL_POSTGRESQL_PASSWORD password
ENV QUASSEL_POSTGRESQL_HOSTNAME postgres
ENV QUASSEL_POSTGRESQL_PORT 5432
ENV QUASSEL_POSTGRESQL_DATABASE quassel
RUN groupadd -r quassel && useradd -r -g quassel quassel
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential \
ca-certificates \
curl \
cmake \
g++-4.7 \
libqt5network5 \
libqt5script5 \
libqt5sql5-psql \
qt5-default \
qt5-qmake \
qtscript5-dev \
qtbase5-dev-tools \
zlib1g-dev \
&& curl -o /usr/local/bin/gosu -SL 'https://github.com/tianon/gosu/releases/download/1.1/gosu' \
&& chmod +x /usr/local/bin/gosu
ADD patches /opt/quasselcore-patches
RUN mkdir -p /tmp/quassel-src \
&& cd /tmp/quassel-src \
&& curl -sSL http://quassel-irc.org/pub/quassel-0.11.0.tar.bz2 | tar --strip-components=1 -jx \
&& cd /tmp/quassel-src \
&& for i in /opt/quasselcore-patches/*; do patch -p1 < $i; done \
&& mkdir /tmp/quassel-src/build \
&& cd /tmp/quassel-src/build \
&& cmake \
-DWANT_CORE=ON \
-DWANT_QTCLIENT=OFF \
-DWANT_MONO=OFF \
-DUSE_QT5=ON \
-DWITH_KDE=OFF \
-DWITH_OXYGEN=OFF \
-DCMAKE_INSTALL_PREFIX=/opt/quasselcore \
-DCMAKE_BUILD_TYPE=Release \
.. \
&& make \
&& make install
RUN apt-get purge -y --auto-remove \
build-essential \
cmake \
g++-4.7 \
qtbase5-dev-tools \
qtscript5-dev \
zlib1g-dev \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
RUN mkdir -p /var/lib/quassel \
&& chown -R quassel:quassel /var/lib/quassel
COPY ./docker-entrypoint.sh /
ENTRYPOINT ["/docker-entrypoint.sh"]
EXPOSE 4242
CMD ["quasselcore"]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment