Skip to content
This repository has been archived by the owner on Apr 15, 2024. It is now read-only.

Added Arch Linux builders. #41

Open
wants to merge 6 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions arch-clang/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
## Emacs, make this -*- mode: sh; -*-

FROM archlinux/base:latest

RUN pacman -Syu --noconfirm

RUN pacman -S --noconfirm \
clang \
llvm-libs \
compiler-rt
7 changes: 7 additions & 0 deletions arch-gcc/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
## Emacs, make this -*- mode: sh; -*-

FROM archlinux/base:latest

RUN pacman -Syu --noconfirm

RUN pacman -S --noconfirm gcc
69 changes: 69 additions & 0 deletions arch/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
## Emacs, make this -*- mode: sh; -*-

FROM archlinux/base:latest

## Set a default user. Available via runtime flag
RUN useradd docker

RUN pacman -Syu --noconfirm

# installed in archlinux:base --
# ca-certificates curl bzip2 findutils pcre readline xz zlib
RUN pacman -S --noconfirm \
gcc-fortran \
less \
jdk8-openjdk \
cairo \
ghostscript \
icu \
libjpeg-turbo \
pango \
libpng \
libtiff \
libx11 \
libxmu \
libxt \
make \
r \
subversion \
tcl \
texinfo \
texlive-core \
texlive-fontsextra \
tk \
unzip \
xorgproto \
tar \
which \
xorg-server-xvfb


RUN pacman -S --noconfirm valgrind

RUN pacman -S --noconfirm qpdf

# to be consistent with other builders, use the version of pandoc
# hosted on r-hub.io
RUN curl -o /usr/bin/pandoc.gz \
https://files.r-hub.io/pandoc/linux-64/pandoc.gz && \
gzip -d /usr/bin/pandoc.gz && \
curl -o /usr/bin/pandoc-citeproc.gz \
https://files.r-hub.io/pandoc/linux-64/pandoc-citeproc.gz && \
gzip -d /usr/bin/pandoc-citeproc.gz && \
chmod +x /usr/bin/pandoc /usr/bin/pandoc-citeproc

# RUN pacman -S --noconfirm pandoc pandoc-citeproc

RUN pacman -S --noconfirm aspell aspell-en

RUN pacman -S --noconfirm file

RUN pacman -S --noconfirm xorg-fonts-100dpi xorg-fonts-75dpi

RUN sed -i '/^#en_US.UTF-8/ s/^#//' /etc/locale.gen
RUN locale-gen
RUN echo LANG=en_US.UTF-8 > /etc/locale.conf

ENV LC_ALL en_US.UTF-8
ENV LANG en_US.UTF-8

4 changes: 4 additions & 0 deletions jenkins.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,10 @@ docker ps -a | grep 'Exited' | awk ' { print $1; } ' | xargs docker rm || true
# done manually, as needed.

failed=0
./build-image.sh arch || failed=1
./build-image.sh arch-gcc || failed=1
./build-image.sh arch-clang || failed=1
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These images seem to be missing?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not a member of rhub, so I don't believe I will be able to push the images. If you want to add me, I'd be happy to do it. Otherwise I think you will likely need to push the images.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you want, I can also remove the jenkins.sh entries for now and we can add them back once the images have been pushed. Just let me know..

Copy link
Contributor

@gaborcsardi gaborcsardi Apr 27, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What I am asking is that you seem to envision three images: rhub/arch, rhub/arch-gcc and arch-clang? No? Where are the Dockerfiles for those? The arch image does not have R installed.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah apologies; I forgot to include them in the commit. I'll fix that now. Also, I'm not entirely sure that three images are necessary, but rather I'm just following the convention used for the Debian / Fedora images, with the assumption that some people will prefer one or the other.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! I am still missing something. Seems like your arch image already has R. What are the arch-gcc and arch-clang images for, then?

Note that for e.g. Debian we have sg. like

  • debian: base image of all R-hub Debian images
  • debian-gcc: add GCC
  • debign-gcc-devel: add R-devel

But seems like you just want a single image with R installed from the default Arch Linux source? Which is completely fine, but then we do not need the arch-clang and arch-gcc images. R will use the same compiler as the one that was used to compile it, anyway. So it is enough to make that available on the image.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah got it. I started with a single image, but then thought I would mirror the setup for Fedora/Debian, in case it was needed for some purpose. I'll revert to a single image in that case.


./build-image.sh debian || failed=1
./build-image.sh debian-gcc || failed=1
./build-image.sh debian-gcc-devel --no-cache || failed=1
Expand Down