From 87c2e6e6e1e00bb2a9d14f62bc486e4c86340c0c Mon Sep 17 00:00:00 2001 From: Guillaume Roguez <guillaume.roguez@savoirfairelinux.com> Date: Tue, 21 Mar 2017 14:40:55 -0400 Subject: [PATCH] docker: update Dockerfile Use Dockerfile from daemon. This is a Fedora25 based image including Qt dev kit. We do not set environment variables as they aren't required anymore and were producing errors when building contribs for mingw64. Change-Id: Idd2294cae3fee5e4f1f501082f9ff9f8ac28fb90 --- docker/Dockerfile | 133 +++++++++++++++++++++------------------------- 1 file changed, 61 insertions(+), 72 deletions(-) diff --git a/docker/Dockerfile b/docker/Dockerfile index 1c7fd0e..810aace 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,72 +1,61 @@ - -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 +FROM fedora:25 + +ENV LANG en_US.utf8 +ENV LC_ALL en_US.utf8 + +RUN dnf -y upgrade + +# General +RUN dnf -y install \ + unzip \ + openssh + +# Mingw 32/64 +RUN dnf -y install \ + mingw32-binutils \ + mingw32-gcc \ + mingw32-headers \ + mingw32-crt \ + mingw32-gcc-c++ \ + mingw32-pkg-config \ + mingw32-nsis \ + mingw64-binutils \ + mingw64-gcc \ + mingw64-headers \ + mingw64-crt \ + mingw64-gcc-c++ \ + mingw64-pkg-config + +# Build environment +RUN dnf -y install \ + git \ + gawk \ + yasm \ + gettext-devel \ + cmake \ + patch \ + libtool \ + automake \ + make \ + xz \ + bzip2 \ + which \ + sudo + +# LRC Req +RUN dnf -y install \ + mingw32-qt5-qtbase \ + mingw32-qt5-qttools \ + mingw64-qt5-qtbase \ + mingw64-qt5-qttools + +# Client Req +RUN dnf -y install \ + mingw32-qt5-qtsvg \ + mingw64-qt5-qtsvg \ + mingw32-qt5-qtwinextras \ + mingw64-qt5-qtwinextras \ + mingw32-libidn \ + mingw64-libidn \ + mingw32-xz-libs \ + mingw64-xz-libs -- GitLab