summaryrefslogtreecommitdiffstats
path: root/redhat/docker/pclinuxos/Dockerfile.x86_64
blob: a449dca81dd6aa54420c624e451d166ed738b560 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
FROM pclinuxos:2018

ARG TDE_VERSION=14.0.7
ARG ARCH=x86_64

# Update distribution
RUN apt-get -y update
RUN apt-get -y install glibc
RUN apt-get -y dist-upgrade

# Install Trinity build dependencies
ADD packages.${ARCH} /packages
RUN apt-get -y install $(</packages)

# Add rpmbuild repositories
ADD rpmbuild.list /etc/apt/sources.list.d/rpmbuild.list
RUN sed -i "/etc/apt/sources.list.d/rpmbuild.list" -e "s|\${ARCH}|${ARCH}|g" -e "s|\${TDE_VERSION}|${TDE_VERSION}|g"

# Fix SUDO configuration
RUN sed -i "/etc/pam.d/sudo" -e "/pam_limits.so/ s|^|#|"

# Fix utempter detection
RUN chmod a+r /usr/libexec/utempter/utempter

# Fix missing '.la' files
ADD genla.sh /usr/bin/genla.sh
RUN genla.sh libbluetooth && mv /usr/lib64/libbluetooth.la /lib64
RUN genla.sh libjpeg
RUN genla.sh liblcms
RUN genla.sh libusb-1.0 && mv /usr/lib64/libusb-1.0.la /lib64 && cp /lib64/libusb-1.0.la /lib64/libusb.la

# Add non-root user to build packages
RUN rm -rf /home/trinity
RUN useradd -m -s /bin/bash -u 1000 trinity
RUN echo "trinity ALL=(ALL) NOPASSWD: ALL" >>"/etc/sudoers"

USER trinity
ADD rpmmacros /home/trinity/.rpmmacros

# Build supplementary development tools
RUN rpm -i http://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/7.1/SRPMS/core/release/torsocks-2.3.0-1.mga7.src.rpm
RUN sed -i ${HOME}/rpmbuild/SPECS/torsocks.spec -e "s|%license|%doc|"
RUN rpmbuild -ba ${HOME}/rpmbuild/SPECS/torsocks.spec
RUN sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/torsocks-2*.rpm

RUN rpm -i http://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/7.1/SRPMS/core/release/cscope-15.9-1.mga7.src.rpm
RUN sed -i ${HOME}/rpmbuild/SPECS/cscope.spec  -e "s|%autopatch|%patch0|"
RUN sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/cscope-15*.rpm