From 47387880bb271e43cda61a78a7b5874d55ef7e69 Mon Sep 17 00:00:00 2001
From: Edric Milaret <edric.ladent-milaret@savoirfairelinux.com>
Date: Wed, 27 May 2015 11:06:56 -0400
Subject: [PATCH] build: add docker file

Refs #74016

Change-Id: Ic452911a842fc056c2890b04e22740f0abead09f
---
 docker/Dockerfile | 72 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 72 insertions(+)
 create mode 100644 docker/Dockerfile

diff --git a/docker/Dockerfile b/docker/Dockerfile
new file mode 100644
index 0000000..1c7fd0e
--- /dev/null
+++ b/docker/Dockerfile
@@ -0,0 +1,72 @@
+
+FROM nfnty/arch-mini
+
+#the ugliest hack on earth
+VOLUME /tmp
+
+#Update system and add archlinuxfr repo for yaourt
+RUN pacman -Syu --noconfirm
+RUN echo "[archlinuxfr]" >> /etc/pacman.conf
+RUN echo "SigLevel = Never" >> /etc/pacman.conf
+RUN echo "Server = http://repo.archlinux.fr/\$arch" >> /etc/pacman.conf
+RUN cat /etc/pacman.conf
+
+RUN pacman -Syu reflector rsync --noconfirm --needed
+RUN reflector --verbose --country 'Canada' -l 200 --sort rate --save /etc/pacman.d/mirrorlist
+RUN cat /etc/pacman.d/mirrorlist
+
+#ensure that base and base-devel are installed and up to date
+RUN pacman -Syu base base-devel --noconfirm --needed
+
+#install some needed package
+RUN pacman -Syu yaourt wget git yasm cmake --noconfirm --needed
+
+#add user
+RUN useradd joulupukki -m
+RUN echo "joulupukki ALL= NOPASSWD: ALL" >> /etc/sudoers
+
+USER joulupukki
+WORKDIR /home/joulupukki
+
+#init the key and add those used for aur packages we need
+RUN sudo pacman-key --init && sudo pacman-key --populate archlinux
+RUN gpg --keyserver hkp://keys.gnupg.net --recv-key D605848ED7E69871 9766E084FB0F43D8 4DE8FF2A63C7CC90 D9C4D26D0E604491 BB5869F064EA74AB
+
+#install cross compil tool
+RUN yaourt -S mingw-w64-toolchain mingw-w64-pkg-config --noconfirm --needed
+
+#downgrade mingw-gcc as ring-daemon is not yet compatible with v5
+RUN wget http://seblu.net/a/arm/2015/05/01/community/os/x86_64/mingw-w64-gcc-4.9.2-2-x86_64.pkg.tar.xz
+RUN sudo pacman -U mingw-w64-gcc-4.9.2-2-x86_64.pkg.tar.xz --noconfirm
+
+#set env to include perl package (pod2man needed for doc)
+ENV PATH=$PATH:/usr/bin/core_perl
+RUN env
+
+#install Qt deps
+RUN yaourt -S mingw-w64-harfbuzz --noconfirm --needed
+RUN yaourt -S mingw-w64-libdbus --noconfirm --needed
+RUN yaourt -S mingw-w64-libjpeg-turbo --noconfirm --needed
+RUN yaourt -S mingw-w64-libpng --noconfirm --needed
+RUN yaourt -S mingw-w64-openssl --noconfirm --needed
+RUN yaourt -S mingw-w64-pcre --noconfirm --needed
+RUN yaourt -S mingw-w64-sqlite --noconfirm --needed
+RUN yaourt -S mingw-w64-zlib --noconfirm --needed
+RUN yaourt -S mingw-w64-mariadb-connector-c --noconfirm --needed
+RUN yaourt -S mingw-w64-postgresql-libs --noconfirm --needed
+RUN yaourt -S mingw-w64-mariadb-connector-c --noconfirm --needed
+RUN yaourt -S mingw-w64-postgresql-libs --noconfirm --needed
+
+
+#install Qt
+RUN yaourt -S mingw-w64-qt5-base-opengl --noconfirm
+
+#install the Qt plugins used in the client
+RUN yaourt -S mingw-w64-qt5-svg --noconfirm
+RUN yaourt -S mingw-w64-qt5-imageformats --noconfirm
+
+#install the packager
+RUN yaourt -S nsis --noconfirm --needed
+
+#make sure pkg-config choose our custom path before any lib that may have been installed by Qt (e.g pcre)
+RUN sudo sed -i s/\$PKG_CONFIG_LIBDIR:\$PKG_CONFIG_PATH_CUSTOM/\$PKG_CONFIG_PATH_CUSTOM:\$PKG_CONFIG_LIBDIR/ /usr/bin/i686-w64-mingw32-pkg-config
\ No newline at end of file
-- 
GitLab