FROM centos:7
ARG TDE_VERSION = 14 .1.0
ARG ARCH = x86_64
# Enable proxy
# Add EPEL repository
# Add RPMFUSION repository
# Install Trinity build dependencies
COPY packages /packages
RUN echo "proxy=http://proxy:3128" >>"/etc/yum.conf" \
&& yum -y install epel-release \
&& rpm -Uvh https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm \
&& yum -y clean all \
&& yum -y update \
&& yum -y install $( </packages)
# Add YUM repository for locally built packages
WORKDIR /etc/yum.repos.d
COPY rpmbuild.repo rpmbuild.repo
RUN sed -i "rpmbuild.repo" -e " s|\${ARCH}| ${ ARCH } |g " -e " s|\${TDE_VERSION}| ${ TDE_VERSION } |g "
# Fix utempter detection
# Distro-specific patches
RUN chmod a+r /usr/libexec/utempter/utempter \
&& sed -i "/usr/include/jasper/jas_math.h" -e " /#include <stdint.h>/ s| $|\n#ifndef SIZE_MAX\n#define SIZE_MAX ((size_t) -1)\n#endif\n| " \
&& ln -sf libmp4v2.so /usr/lib64/libmp4.so
# Add non-root user to build packages
RUN 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 rpmbuild --rebuild https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/21/Everything/source/SRPMS/d/dirmngr-1.1.1-5.fc21.src.rpm \
&& sudo rpm -Uvh ${ HOME } /rpmbuild/RPMS/*/dirmngr-1*.rpm
RUN rpmbuild --rebuild https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/30/Everything/source/tree/Packages/y/yaz-5.14.11-17.fc30.src.rpm --define "_pkgdocdir /usr/share/doc/yaz" \
&& sudo rpm -Uvh ${ HOME } /rpmbuild/RPMS/*/libyaz{ ,-devel} -5*.rpm
RUN rpmbuild --rebuild https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/32/Everything/source/tree/Packages/r/rdesktop-1.9.0-2.fc32.src.rpm \
&& sudo rpm -Uvh ${ HOME } /rpmbuild/RPMS/*/rdesktop-1*.rpm
RUN rpmbuild --rebuild https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/32/Everything/source/tree/Packages/p/pilot-link-0.12.5-44.fc32.src.rpm \
&& sudo rpm -Uvh ${ HOME } /rpmbuild/RPMS/*/pilot-link{ ,-devel,-libs} -0*.rpm