|
| 1 | +# ArchLinux image with MinGW toolchain |
| 2 | + |
| 3 | +FROM base/archlinux:latest |
| 4 | +MAINTAINER jschueller |
| 5 | + |
| 6 | +# Locale |
| 7 | +RUN echo 'en_US.UTF-8 UTF-8' >> /etc/locale.gen && locale-gen |
| 8 | +ENV LANG en_US.UTF-8 |
| 9 | +ENV LANGUAGE en_US:en |
| 10 | +ENV LC_ALL en_US.UTF-8 |
| 11 | + |
| 12 | +# Update base system |
| 13 | +RUN pacman -Sy --noconfirm --noprogressbar archlinux-keyring \ |
| 14 | + && pacman-key --populate \ |
| 15 | + && pacman -Su --noconfirm --noprogressbar pacman \ |
| 16 | + && pacman-db-upgrade \ |
| 17 | + && pacman -Su --noconfirm --noprogressbar ca-certificates \ |
| 18 | + && trust extract-compat \ |
| 19 | + && pacman -Syyu --noconfirm --noprogressbar \ |
| 20 | + && (echo -e "y\ny\n" | pacman -Scc) |
| 21 | + |
| 22 | +# Add mingw-repo |
| 23 | +RUN echo "[ownstuff]" >> /etc/pacman.conf \ |
| 24 | + && echo "SigLevel = Optional TrustAll" >> /etc/pacman.conf \ |
| 25 | + && echo "Server = https://martchus.no-ip.biz/repo/arch/ownstuff/os/\$arch" >> /etc/pacman.conf \ |
| 26 | + && pacman -Sy |
| 27 | + |
| 28 | +# Add archlinuxfr repo (yaourt) |
| 29 | +RUN echo "[archlinuxfr]" >> /etc/pacman.conf \ |
| 30 | + && echo "SigLevel = Never" >> /etc/pacman.conf \ |
| 31 | + && echo "Server = http://repo.archlinux.fr/\$arch" >> /etc/pacman.conf \ |
| 32 | + && pacman -Sy |
| 33 | + |
| 34 | +# Add multilib repo |
| 35 | +RUN echo "[multilib]" >> /etc/pacman.conf && echo "Include = /etc/pacman.d/mirrorlist" >> /etc/pacman.conf && pacman -Sy |
| 36 | + |
| 37 | +# Add some useful packages to the base system |
| 38 | +RUN pacman -S --noconfirm --noprogressbar base-devel git sudo yaourt winetricks lib32-libldap swig xorg-server-xvfb gdb vim |
| 39 | + |
| 40 | +# Install MinGW packages |
| 41 | +RUN pacman -S --noconfirm --noprogressbar mingw-w64-cmake mingw-w64-libxml2 mingw-w64-boost mingw-w64-lapack |
| 42 | + |
| 43 | +# Create devel user... |
| 44 | +RUN useradd -m -d /home/devel -u 1000 -U -G users,tty -s /bin/bash devel |
| 45 | + |
| 46 | +# Add user to build packages |
| 47 | +RUN echo 'devel ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers |
| 48 | +USER devel |
| 49 | +ENV TERM dumb |
| 50 | +ENV MAKEFLAGS "-j8" |
| 51 | + |
| 52 | +# Install MinGW packages from AUR |
| 53 | +RUN yaourt -S mingw-w64-muparser mingw-w64-nlopt mingw-w64-hmat-oss mingw-w64-intel-tbb --noconfirm |
| 54 | +RUN yaourt -S mingw-w64-python-bin mingw-w64-python2-bin mingw-w64-python35-bin --noconfirm |
| 55 | +RUN yaourt -S nsis --noconfirm |
0 commit comments