summaryrefslogtreecommitdiffstats
path: root/redhat/docker/pclinuxos/Dockerfile.x86_64
blob: 85b9bb4413139086d18153150367bb8328b4b210 (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
49
50
51
FROM pclinuxos:2020

ARG TDE_VERSION=14.0.9
ARG ARCH=x86_64

# Update distribution
# Install Trinity build dependencies
COPY packages.${ARCH} /packages
RUN apt-get -y update \
 && apt-get -y install glibc \
 && apt-get -y dist-upgrade \
 && apt-get -y install $(</packages)

# Add rpmbuild repositories
COPY 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
COPY genla.sh /usr/bin/genla.sh
RUN genla.sh libbluetooth && mv /usr/lib64/libbluetooth.la /lib64 \
 && genla.sh libjpeg \
 && genla.sh liblcms \
 && 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 \
 && useradd -m -s /bin/bash -u 1000 trinity \
 && echo "trinity ALL=(ALL) NOPASSWD: ALL" >>"/etc/sudoers"

USER trinity
COPY 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 \
 && sed -i ${HOME}/rpmbuild/SPECS/torsocks.spec -e "s|%license|%doc|" \
 && rpmbuild -ba ${HOME}/rpmbuild/SPECS/torsocks.spec

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 \
 && sed -i ${HOME}/rpmbuild/SPECS/cscope.spec  -e "s|%autopatch|%patch0|" \
 && rpmbuild -ba ${HOME}/rpmbuild/SPECS/cscope.spec

USER root
RUN rpm -Uvh /home/trinity/rpmbuild/RPMS/*/torsocks-2*.rpm /home/trinity/rpmbuild/RPMS/*/cscope-15*.rpm

USER trinity