diff --git a/redhat/docker/pclinuxos.sh b/redhat/docker/pclinuxos.sh new file mode 100755 index 000000000..3791afc94 --- /dev/null +++ b/redhat/docker/pclinuxos.sh @@ -0,0 +1,173 @@ +#!/bin/bash + +NAME="pclinuxos" +VERSION="$1" # E.g: '26' +IMAGE="${NAME}:${VERSION}" +INSTALLROOT="/dev/shm/${IMAGE}" + +sudo rm -rf "${INSTALLROOT}" +sudo mkdir -p "${INSTALLROOT}" + +MIRROR="http://distrib-coffee.ipsl.jussieu.fr/pub/linux/pclinuxos/pclinuxos/apt/pclinuxos/64bit" + +cd /dev/shm +wget -c \ + "${MIRROR}/RPMS.x86_64/bash-4.3-48.1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/glibc-2.20-10pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/rpm-4.8.1-10pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64readline6-6.3-4pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64ncurses5-5.9-9pclos2015.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/rpm-helper-0.23.5-1pclos2015.noarch.rpm" \ + "${MIRROR}/RPMS.x86_64/mktemp-1.7-2pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/setup-2.7.17-1pclos2011.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/findutils-4.6.0-3pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/run-parts-3.2.1-1pclos2011.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/shadow-utils-4.1.4.2-1pclos2011.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/coreutils-8.27-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/chkconfig-1.3.37-4pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64ncursesw5-5.9-9pclos2015.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/gawk-4.1.2-1pclos2015.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64rpm1-4.8.1-10pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/cpio-2.11-3pclos2014.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/gawk-4.1.2-1pclos2015.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/grep-2.28-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/rpm-rambo-setup-1.1-2pclos2017.noarch.rpm" \ + "${MIRROR}/RPMS.x86_64/rpm-pclinuxos-setup-1.135-4pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64popt0-1.16-1pclos2011.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64tcb0-1.0.3-2pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64pam_userpass1-1.0.2-2pclos2011.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/pam_tcb-1.0.3-2pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64lzma5-5.2.3-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/bzip2-1.0.6-2pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64audit1-2.1.2-3pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/update-alternatives-1.9.0-1pclos2011.noarch.rpm" \ + "${MIRROR}/RPMS.x86_64/zlib1-1.2.10-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64bzip2_1-1.0.6-2pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/util-linux-ng-2.30.1-3pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64acl1-2.2.51-1pclos2013.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64attr1-2.4.46-1pclos2011.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64cap2-2.25-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64gmp10-6.1.2-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/info-install-5.0-2pclos2013.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/rmt-0.4b46-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64mpfr4-3.1.4-1pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64sigsegv2-2.10-2pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/dash-static-0.5.6.1-3pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/filesystem-2.1.9-1pclos2011.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/dash-static-0.5.6.1-3pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64pcre2_0-10.23-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64pcre1-8.36-1pclos2014.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/xz-5.2.3-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/ncurses-5.9-9pclos2015.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/libgcc1-4.9.2-2pclos2015.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/libstdc++6-4.9.2-2pclos2015.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64uuid1-2.30.1-3pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64udev0-168-6pclos2011.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64smartcols1-2.30.1-3pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64mount1-2.30.1-3pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64fdisk1-2.30.1-3pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64libcap-ng0-0.7.7-1pclos2015.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64blkid1-2.30.1-3pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/udev-168-6pclos2011.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64iso9660_7-0.93-3pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64blkid1-2.30.1-3pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/diffutils-3.3-1pclos2013.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64usb1.0_0-1.0.21-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/openssl-1.0.2l-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64cdio12-0.93-3pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64pcre-compatible0-8.21-1pclos2013.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/popt-data-1.16-1pclos2011.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64db4.8-4.8.30-1pclos2011.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64elfutils1-0.166-1pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64lua5.1-5.1.5-1pclos2012.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64magic1-5.31-2pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64nspr4-4.14-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64nss3-3.28.4-2pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64sqlite3_0-3.1070-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/rootcerts-20170401.00-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/ldetect-lst-0.2.8-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/nss-3.28.4-2pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/perl-base-5.22.3-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/gzip-1.8-1pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/usbutils-007-1pclos2014.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64notify4-0.7.7-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/less-487-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64glib2.0_0-2.52.3-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64gio2.0_0-2.52.3-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/gdk-pixbuf2.0-2.36.7-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/tcb-1.0.3-2pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/pkgconfig-0.29-1pclos2015.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64openssl1.0.0-1.0.2l-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/common-licenses-1.0-14pclos2017.noarch.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64gdk_pixbuf2.0_0-2.36.7-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64notify4-0.7.7-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/file-5.31-2pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64ffi6-3.2.1-1pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/perl-5.22.3-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64tiff3-3.9.5-2pclos2012.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/libnotify-0.7.7-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64x11_6-1.6.5-2.1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64jasper1-1.900.1-3pclos2014.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64jpeg8-1.4.2-1pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64png3-1.2.57-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/libxcb-1.12-3.1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64gdbm3-1.8.3-5pclos2013.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/nss_tcb-1.0.3-2pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64usb-compat0.1_4-0.1.5-2pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64tiff5-4.0.6-1pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64openssl-engines1.0.0-1.0.2l-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64xau6-1.0.8-3.1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64xdmcp6-1.1.2-3.1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64jbig1-2.0-1pclos2011.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64bsd0-0.8.3-1pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64icu56-56.1-1pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/icu56-data-56.1-1pclos2016.noarch.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64jpeg62-6b-48pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/cracklib-dicts-2.9.1-1pclos2014.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64crack2-2.9.1-1pclos2014.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64dbnss4.8-4.8.30-1pclos2011.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/apt-0.5.15lorg3.95-10pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/gnupg-1.4.22-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64apt-pkg0-0.5.15lorg3.95-10pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/apt-sources-list-1.2-7pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64curl4-7.54.0-2pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64ldap2.4_2-2.4.23-3pclos2015.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/apt-common-0.5.15lorg3.95-10pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64xml2_2-2.9.4-2pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64rtmp1-2.4-1pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64ssh2_1-1.6.0-1pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/openldap-2.4.23-3pclos2015.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64sasl2-2.1.23-3pclos2013.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64krb53-1.15.1-2pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/krb5-1.15.1-2pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64keyutils1-1.2-6pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64verto1-0.2.6-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64ext2fs2-1.43.1-2pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/e2fsprogs-1.43.1-2pclos2016.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/uuidd-2.30.1-3pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/lib64audit-devel-2.1.2-3pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/glibc-devel-2.20-10pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/glibc-headers-devel-4.9.4-1pclos2017.x86_64.rpm" \ + "${MIRROR}/RPMS.x86_64/rpm-pclinuxos-setup-1.135-5pclos2017.x86_64.rpm" \ + "http://ftp.nluug.nl/pub/os/Linux/distr/pclinuxos/pclinuxos/apt/pclinuxos/64bit/RPMS.x86_64/lib64pam0-1.1.4-1pclos2011.x86_64.rpm" \ + "http://ftp.nluug.nl/pub/os/Linux/distr/pclinuxos/pclinuxos/apt/pclinuxos/64bit/RPMS.x86_64/pam-1.1.4-1pclos2011.x86_64.rpm" \ + "http://ftp.nluug.nl/pub/os/Linux/distr/pclinuxos/pclinuxos/apt/pclinuxos/64bit/RPMS.x86_64/lib64pam-devel-1.1.4-1pclos2011.x86_64.rpm" \ + "http://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/6/x86_64/media/core/release//fdupes-1.51-6.mga6.x86_64.rpm" \ + +sudo mkdir -p "${INSTALLROOT}/var/lib/rpm" +sudo rpmdb --initdb --root="${INSTALLROOT}" + +sudo rpm -Uvh \ + --root="${INSTALLROOT}" \ + *.rpm + +cd - + +sudo chroot "${INSTALLROOT}" rpmdb --rebuilddb +sudo chroot "${INSTALLROOT}" rpmdb --rebuilddb + +sudo tar -C "${INSTALLROOT}" -c . >"${IMAGE}.tar" +sudo rm -rf "${INSTALLROOT}" + +docker rmi -f "${IMAGE}" +docker import "${IMAGE}.tar" "${IMAGE}" diff --git a/redhat/docker/pclinuxos/Dockerfile.x86_64 b/redhat/docker/pclinuxos/Dockerfile.x86_64 new file mode 100644 index 000000000..6bee4f4e3 --- /dev/null +++ b/redhat/docker/pclinuxos/Dockerfile.x86_64 @@ -0,0 +1,32 @@ +FROM pclinuxos:2017 + +ARG TDE_VERSION=14.0.4 +ARG ARCH=x86_64 + +# Update distribution +RUN apt-get -y update +RUN apt-get -y dist-upgrade + +# Install Trinity build dependencies +ADD packages.${ARCH} /etc/apt/packages +RUN apt-get -y install $(>/etc/sudoers +ADD rpmmacros /home/trinity/.rpmmacros + +# Fix SUDO configuration +RUN sed -i "/etc/pam.d/sudo" -e "/pam_limits.so/ s|^|#|" + +# 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 diff --git a/redhat/genla.sh b/redhat/docker/pclinuxos/genla.sh similarity index 100% rename from redhat/genla.sh rename to redhat/docker/pclinuxos/genla.sh diff --git a/redhat/packages.pclos b/redhat/docker/pclinuxos/packages.x86_64 similarity index 88% rename from redhat/packages.pclos rename to redhat/docker/pclinuxos/packages.x86_64 index 3a6d761e9..fc9ade644 100644 --- a/redhat/packages.pclos +++ b/redhat/docker/pclinuxos/packages.x86_64 @@ -6,14 +6,19 @@ binutils-devel bison boost-devel ccache +cdparanoia chmlib-devel chrpath cmake cups-devel +desktop-file-utils djvulibre +docbook-style-xsl doxygen +drakconf dssi-devel esound-devel +exempi-devel fdupes file-devel firebird-devel @@ -38,6 +43,7 @@ htdig ImageMagick-devel imake java-devel +lib64cryptsetup-devel lib64dvdread-devel lib64exiv2-devel lib64gif-devel @@ -45,6 +51,7 @@ lib64inotifytools-devel lib64iw29-devel lib64mpcdec-devel lib64OpenSP5-devel +lib64pkcs11-helper-devel lib64poppler-devel lib64readline-devel lib64sane1-devel @@ -52,6 +59,7 @@ lib64usb1.0-devel lib64usb-compat0.1-devel lib64wv2-devel lib64xaw-devel +lib64xine1.2-devel lib64yaz-devel libcap-devel libcdda-devel @@ -79,14 +87,18 @@ libmtp-devel libmusicbrainz-devel libnjb-devel libnm-util-devel +libofa-devel libofx-devel libotr-devel libpaper-devel libpng-devel libpqxx-devel +libpthread-stubs libpulseaudio-devel +libqalculate-devel libraw1394-devel librsvg +librsync-devel libsmbclient-devel libsm-devel libt1lib-devel @@ -103,7 +115,7 @@ libxcursor-devel libxext-devel libxft-devel libxi-devel -libxine-devel +lib64xine1.2-devel libxinerama-devel libxkbfile-devel libxmu-devel @@ -123,6 +135,7 @@ NetworkManager-glib-devel ocaml OpenEXR-devel openldap-devel +opensc openslp-devel pam-devel perl-devel @@ -131,6 +144,9 @@ postgresql postgresql-devel pth-devel python-devel +python-rpm +recode +rpm-build rpm-devel ruby-devel scons @@ -139,6 +155,7 @@ speex-devel sqlite3-devel sqlite-devel subversion-devel +sudo sword-devel taglib-devel transfig @@ -146,7 +163,9 @@ udisks2-devel unixODBC-devel utempter-devel valgrind +vim-enhanced x11-font-util +xscreensaver xscreensaver-base xscreensaver-extrusion xscreensaver-gl diff --git a/redhat/docker/pclinuxos/rpmbuild.list b/redhat/docker/pclinuxos/rpmbuild.list new file mode 100644 index 000000000..5b838caa9 --- /dev/null +++ b/redhat/docker/pclinuxos/rpmbuild.list @@ -0,0 +1 @@ +rpm file:/home/trinity/rpmbuild RPMS.tde-${TDE_VERSION} ${ARCH} noarch diff --git a/redhat/docker/pclinuxos/rpmmacros b/redhat/docker/pclinuxos/rpmmacros new file mode 100644 index 000000000..6a2891f3f --- /dev/null +++ b/redhat/docker/pclinuxos/rpmmacros @@ -0,0 +1,4 @@ +%dist .pclos2017 +%_smp_mflags -j8 +%jobs 8 +%pclinuxos 2017