summaryrefslogtreecommitdiffstats
path: root/redhat/docker/el7/Dockerfile.x86_64
blob: c350bd99520009049301179ca57bd6213e593d1c (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
FROM centos:7

ARG TDE_VERSION=14.0.7
ARG ARCH=x86_64

# Enable proxy
RUN echo "proxy=http://proxy:3128" >>"/etc/yum.conf"

# Update distribution packages
RUN yum -y update

# Add EPEL repository
RUN yum -y install epel-release

# Add NUX repository
RUN rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm

# Install Trinity build dependencies
ADD packages /packages
RUN yum -y install $(</packages)

# Add YUM repository for locally built packages
WORKDIR /etc/yum.repos.d
ADD rpmbuild.repo rpmbuild.repo
RUN sed -i "rpmbuild.repo" -e "s|\${ARCH}|${ARCH}|g" -e "s|\${TDE_VERSION}|${TDE_VERSION}|g"

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

# Distro-specific patches
RUN 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|"

# Add non-root user to build packages
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 rpmbuild --rebuild https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/21/Everything/source/SRPMS/d/dirmngr-1.1.1-5.fc21.src.rpm
RUN sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/dirmngr-1*.rpm

RUN rpmbuild --rebuild http://ftp.free.fr/mirrors/fedora.redhat.com/fedora/linux/releases/30/Everything/source/tree/Packages/y/yaz-5.14.11-17.fc30.src.rpm --define "_pkgdocdir /usr/share/doc/yaz"
RUN sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/libyaz{,-devel}-5*.rpm