diff --git a/appimage-template/docker/qt59/Dockerfile b/appimage-template/docker/qt59/Dockerfile index 37483a5..aa00965 100644 --- a/appimage-template/docker/qt59/Dockerfile +++ b/appimage-template/docker/qt59/Dockerfile @@ -1,227 +1,230 @@ FROM ubuntu:14.04 RUN echo "deb http://us.archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse" >> /etc/apt/sources.list RUN echo "deb-src http://ca.archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse" >> /etc/apt/sources.list RUN echo "deb http://ca.archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiverse" >> /etc/apt/sources.list RUN echo "deb-src http://ca.archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiverse" >> /etc/apt/sources.list RUN echo "deb http://us.archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse" >> /etc/apt/sources.list RUN echo "deb-src http://us.archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse" >> /etc/apt/sources.list RUN echo "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.8 main" >> /etc/apt/sources.list RUN echo "deb-src http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.8 main" >> /etc/apt/sources.list RUN echo "deb http://apt.postgresql.org/pub/repos/apt/ trusty-pgdg main" >> /etc/apt/sources.list #link to bash RUN rm /bin/sh && ln -s /bin/bash /bin/sh RUN ln -s -f /bin/true /usr/bin/chfn RUN apt-get update && apt-get -y install wget RUN wget -q -O- https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - RUN apt-get update && apt-get -y upgrade && apt-get -y build-dep libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-good1.0-dev python3-dev RUN apt-get update && apt-get -y --force-yes install \ '^libxcb.*-dev' \ bison \ bzr \ chrpath \ clang-3.8 \ festival \ festival-dev \ firebird-dev \ flex \ freeglut3-dev \ freetds-dev \ gdb \ git \ gperf \ guile-2.0-dev \ intltool \ libasound2-dev \ libatkmm-1.6-dev \ libatomic-ops-dev \ libatspi2.0-dev \ libboost-all-dev \ libcap-dev \ libclang-3.8-dev \ libdouble-conversion-dev \ libfontconfig1-dev \ libfreetype6-dev \ libgbm-dev \ libgit2-dev \ libgl1-mesa-dev \ libgles2-mesa-dev \ libglew-dev \ libglib2.0-dev \ libglm-dev \ libglu1-mesa-dev \ libgtk-3-dev \ libharfbuzz-dev \ libicu-dev \ libjpeg-dev \ libmtdev-dev \ libmysqlclient-dev \ libopus-dev \ libpcre3-dev \ libpng-dev \ libpq-dev \ libproxy-dev \ libreadline-dev \ libsndfile1-dev \ libsqlite3-dev \ libssl-dev \ libsystemd-journal-dev \ libudev-dev \ libunistring-dev \ libunwind8-dev \ libvorbis-dev \ libwayland-client0 \ libwayland-dev \ libwayland-egl1-mesa \ libwayland-server0 \ libwebp-dev \ libx11-xcb-dev \ libxcomposite-dev \ libxext-dev \ libxi-dev \ libxkbcommon-dev \ libxkbcommon-x11-dev \ libxml2-dev \ libxrender-dev \ libxslt1-dev \ lldb-3.8 \ llvm-3.8 \ llvm-3.8-dev \ nasm \ mesa-common-dev \ ml-lex \ openssh-server \ pkg-config \ postgresql-9.4 \ postgresql-contrib-9.4 \ postgresql-server-dev-9.4 \ publicsuffix \ python-dev \ software-properties-common \ subversion \ texinfo \ unixodbc-dev \ wget \ x11proto-dri3-dev \ x11proto-present-dev \ yasm \ zlib1g-dev \ zsync ## Rebuild pam to allow su # Rebuild pam with --disable-audit flag # Fixes: https://github.com/docker/docker/issues/5899 ## RUN apt-get -y build-dep pam \ && cd /tmp/ \ && export CONFIGURE_OPTS=--disable-audit \ && apt-get -b source pam \ && dpkg -i libpam-doc*.deb libpam-modules*.deb libpam-runtime*.deb libpam0g*.deb \ && rm -rf /tmp/* \ && unset CONFIGURE_OPTS #Oddballs from ppas RUN add-apt-repository -y ppa:wayland.admin/daily-builds && sudo apt-get update && sudo apt-get -y install libinput-dev libwayland-dev \ libwayland-server0 libwayland0 && add-apt-repository -y -r ppa:wayland.admin/daily-builds RUN add-apt-repository -y ppa:jonathonf/mysql && sudo apt-get update && apt-get -y install mysql-server-core-5.7 mysql-client-5.7 && add-apt-repository -y -r ppa:jonathonf/mysql RUN add-apt-repository -y ppa:george-edison55/cmake-3.x && sudo apt-get update && apt-get -y install cmake +RUN add-apt-repository -y ppa:openjdk-r/ppa && apt-get update && apt-get -y install openjdk-8-jdk # Set up for GCC options ( try gcc6 ) RUN add-apt-repository -y ppa:ubuntu-toolchain-r/test && apt-get update && apt-get -y install gcc-4.9 g++-4.9 gcc-5 g++-5 gcc-6 g++-6 && \ update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 10 && \ update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 20 && \ update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 30 && \ update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.9 10 && \ update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 20 && \ update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-6 30 && \ update-alternatives --set gcc "/usr/bin/gcc-5" && \ update-alternatives --set g++ "/usr/bin/g++-5" && \ update-alternatives --install /usr/bin/cc cc /usr/bin/gcc 40 && \ update-alternatives --set cc /usr/bin/gcc && \ update-alternatives --install /usr/bin/c++ c++ /usr/bin/g++ 40 && \ update-alternatives --set c++ /usr/bin/g++ && \ gcc --version && \ cc --version && \ g++ --version && apt-get -y upgrade #Set ENV ENV LD_LIBRARY_PATH /opt/usr/lib:/opt/usr/lib/gstreamer-1.0:/opt/usr/lib/x86_64-linux-gnu:/usr/lib:/usr/lib64:/lib ENV PATH /opt/usr/bin:/home/jenkins/.rbenv/bin:/home/jenkins/.rbenv/shims:$PATH ENV PKG_CONFIG_PATH /opt/usr/lib/pkgconfig:/opt/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig ENV CXXFLAGS -std=c++11 ENV CPATH /opt/usr/include/gstreamer-1.0:/opt/usr/include:/opt/usr/include/dbus-1.0:$CPATH ENV SOURCES / ENV ACLOCAL_PATH = /opt/usr/share/aclocal:/usr/share/aclocal # Create jenkins user RUN groupadd -g 1000 jenkins RUN useradd -m -u 1000 -g 1000 -d /home/jenkins jenkins RUN mkdir -p /{appimages,app.Dir,source} RUN chown jenkins.jenkins /appimages && chown jenkins.jenkins /app.Dir && chown jenkins.jenkins /source && chown jenkins.jenkins /opt RUN echo 'jenkins:1234' | chpasswd #changeme RUN adduser jenkins sudo RUN echo 'jenkins ALL=NOPASSWD: ALL' >> /etc/sudoers RUN echo 'bundler ALL=NOPASSWD: /home/jenkins/.rbenv/bin/bundler' >> /etc/sudoers RUN echo 'eval "$(rbenv init -)"' >> /etc/profile # Cpan perl lib needed by kf5 RUN cd $SOURCES && cpan URI::Escape # Everythin else as jenkins user ( NOT WORKING, disabled for now.) #USER jenkins #Set ENV ENV LD_LIBRARY_PATH /opt/usr/lib:/opt/usr/lib/gstreamer-1.0:/opt/usr/lib/x86_64-linux-gnu:/usr/lib:/usr/lib64:/lib ENV PATH /opt/usr/bin:/root/.rbenv/bin:/root/.rbenv/shims:$PATH ENV PKG_CONFIG_PATH /opt/usr/lib/pkgconfig:/opt/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig ENV CXXFLAGS -std=c++11 -fPIC ENV CPATH /opt/usr/include/gstreamer-1.0:/opt/usr/include:/opt/usr/include/python3.5:$CPATH ENV SOURCES /source ENV QMAKE_CFLAGS_ISYSTEM '' ENV PYTHONPATH /opt/usr/lib/python3.5/site-packages:$PYTHONPATH # Install rbenv and ruby-build ADD Gemfile / RUN chown -R root:root Gemfile RUN echo 'gem: --no-rdoc --no-ri' >> ~/.gemrc RUN git clone https://github.com/sstephenson/rbenv.git ~/.rbenv RUN git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build RUN rbenv install 2.4.1 RUN echo 'eval "$(rbenv init -)"' >> ~/.bashrc && rbenv init - RUN cd ~ && rbenv local 2.4.1 && gem install bundler && bundle install --binstubs && bundle show rspec ADD deps.sh / RUN chown -R root:root deps.sh RUN /bin/bash -x deps.sh # # Build Qt5 from git and install to /opt/usr ( developer buid ) RUN sudo apt-get -y remove 'qt.*' ADD qt5.sh / RUN chown -R root:root qt5.sh RUN /bin/bash -x qt5.sh && rm qt5.sh ADD webkit.sh / RUN chown -R root:root webkit.sh RUN /bin/bash -x webkit.sh && rm webkit.sh # # Various external Qt relelated modules addons #RUN cd /source && git clone git://code.qt.io/qt/qtdeclarative.git && cd /source/qtdeclarative && git checkout 5.9 && \ #cd /source/qtdeclarative && qmake PREFIX=/opt/usr . && make && make install && rm -rfv /source/qtdeclarative #RUN cd /source && wget https://download.qt.io/official_releases/qt/5.9/5.9.1/submodules/qtscript-opensource-src-5.9.1.tar.xz && \ #tar -xvf qtscript-opensource-src-5.9.1.tar.xz && cd qtscript-opensource-src-5.9.1 && qmake PREFIX=/opt/usr . && make && make install && rm -rfv /source/* #RUN cd /source && wget https://download.qt.io/archive/qt/5.9/5.9.1/submodules/qtx11extras-opensource-src-5.9.1.tar.xz && \ #tar -xvf qtx11extras-opensource-src-5.9.1.tar.xz && cd qtx11extras-opensource-src-5.9.1 && qmake PREFIX=/opt/usr . && make && make install && rm -rfv /source/* RUN cd $SOURCES && git clone https://code.qt.io/cgit/qt/qtquick1.git && \ cd $SOURCES/qtquick1 && qmake PREFIX=/opt/usr . && make && make install && rm -rfv $SOURCES/qtquick1 RUN cd /source && git clone git://code.qt.io/qt/qtwebchannel.git && cd /source/qtwebchannel && git checkout 5.9 && \ cd /source/qtwebchannel && git submodule update --init && qmake PREFIX=/opt/usr . && make && make install && rm -rfv /source/qtwebchannel RUN cd /source && git clone git://code.qt.io/qt/qtwebengine.git && cd /source/qtwebengine && git checkout 5.9 && \ cd /source/qtwebengine && git submodule update --init && qmake PREFIX=/opt/usr . && make && make install && rm -rfv /source/qtwebengine RUN cd $SOURCES && git clone http://code.qt.io/qt/qtstyleplugins.git && \ cd $SOURCES/qtstyleplugins && qmake PREFIX=/opt/usr . && make && make install && rm -rfv $SOURCES/qtstyleplugins RUN cd $SOURCES && git clone https://github.com/flavio/qjson && \ cd $SOURCES/qjson && cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt/usr && make && make install && rm -rfv $SOURCES/qjson ADD qt5deps.sh / RUN chown -R root:root qt5deps.sh RUN /bin/bash -x qt5deps.sh && rm qt5deps.sh RUN strip -g $(find . -type f -executable) || true -RUN echo jenkins ALL=NOPASSWD: /usr/bin/apt-get >> "/etc/sudoers" +RUN echo jenkins ALL=NOPASSWD: /usr/bin/apt-get, /usr/bin/add-apt-repository >> "/etc/sudoers" +RUN mkdir /var/run/sshd + EXPOSE 22 CMD ["/usr/sbin/sshd", "-D"] diff --git a/appimage-template/docker/qt59/deps.sh b/appimage-template/docker/qt59/deps.sh index b026695..459483a 100644 --- a/appimage-template/docker/qt59/deps.sh +++ b/appimage-template/docker/qt59/deps.sh @@ -1,184 +1,184 @@ #!/bin/bash set -e set -x function error_exit { echo "$1" 1>&2 exit 1 } #Newer toolchain cd $SOURCES && wget http://ftp.x.org/pub/individual/util/util-macros-1.19.0.tar.bz2 && tar -jxvf util-macros-1.19.0.tar.bz2 && \ cd $SOURCES/util-macros-1.19.0 && ./configure --prefix /usr && make install && rm $SOURCES/util-macros-1.19.0.tar.bz2 && rm -rfv $SOURCES/util-macros-1.19.0 cd $SOURCES && wget http://ftp.gnu.org/gnu/m4/m4-1.4.18.tar.bz2 && tar -jxvf m4-1.4.18.tar.bz2 && \ cd $SOURCES/m4-1.4.18 && mkdir builddir && cd builddir && ../configure --prefix=/usr --enable-shared && make -j 8 && make install \ && rm $SOURCES/m4-1.4.18.tar.bz2 && rm -rfv $SOURCES/m4-1.4.18 cd $SOURCES && wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.xz && tar -xvf autoconf-2.69.tar.xz && \ cd $SOURCES/autoconf-2.69 && mkdir builddir && cd builddir && ../configure --prefix=/usr && make -j 8 && make install && \ rm $SOURCES/autoconf-2.69.tar.xz && rm -rfv $SOURCES/autoconf-2.69 cd $SOURCES && wget https://ftp.gnu.org/gnu/automake/automake-1.15.tar.xz && tar -xvf automake-1.15.tar.xz && \ cd $SOURCES/automake-1.15 && mkdir builddir && cd builddir && ../configure --prefix=/usr && make -j 8 && make install && \ rm $SOURCES/automake-1.15.tar.xz && rm -rfv $SOURCES/automake-1.15 cd $SOURCES && wget https://ftp.gnu.org/gnu/autogen/rel5.18.12/autogen-5.18.12.tar.xz && tar -xvf autogen-5.18.12.tar.xz && \ cd $SOURCES/autogen-5.18.12 && mkdir builddir && cd builddir && ../configure --prefix=/usr && make -j 8 && make install && \ rm $SOURCES/autogen-5.18.12.tar.xz && rm -rfv $SOURCES/autogen-5.18.12 cd $SOURCES && wget http://ftp.gnu.org/pub/gnu/gettext/gettext-0.19.3.tar.gz && tar -xzvf gettext-0.19.3.tar.gz && \ cd $SOURCES/gettext-0.19.3 && ./configure --prefix=/usr && make -j 8 && make install && rm $SOURCES/gettext-0.19.3.tar.gz && rm -rfv $SOURCES/gettext-0.19.3 cd $SOURCES && wget http://www.cups.org/software/1.7.5/cups-1.7.5-source.tar.bz2 && tar -jxvf cups-1.7.5-source.tar.bz2 && \ cd $SOURCES/cups-1.7.5 && aclocal -I config-scripts && autoconf -I config-scripts && ./configure --prefix=/usr && make -j 8 && make install && \ rm -rfv $SOURCES/cups-1.7.5 && rm $SOURCES/cups-1.7.5-source.tar.bz2 #New pulseaudio cd $SOURCES && wget http://freedesktop.org/software/pulseaudio/releases/pulseaudio-10.0.tar.xz && tar -xvf pulseaudio-10.0.tar.xz cd $SOURCES/pulseaudio-10.0 && mkdir builddir && cd builddir && ../configure --prefix=/opt/usr && make -j 8 && make install && \ rm $SOURCES/pulseaudio-10.0.tar.xz && rm -rfv $SOURCES/pulseaudio-10.0 #GPG stack for gpgme cd $SOURCES && wget https://www.gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.26.tar.bz2 && tar -jxvf libgpg-error-1.26.tar.bz2 && \ cd $SOURCES/libgpg-error-1.26 && autoreconf --force --install && mkdir builddir && cd builddir && ../configure --prefix=/opt/usr && make -j 8 && make install && \ rm $SOURCES/libgpg-error-1.26.tar.bz2 && rm -rfv $SOURCES/libgpg-error-1.26 cd $SOURCES && wget https://www.gnupg.org/ftp/gcrypt/libksba/libksba-1.3.5.tar.bz2 && tar -jxvf libksba-1.3.5.tar.bz2 && \ cd $SOURCES/libksba-1.3.5 && autoreconf --force --install && mkdir builddir && cd builddir && ../configure --prefix=/opt/usr && make -j 8 && make install && \ rm $SOURCES/libksba-1.3.5.tar.bz2 && rm -rfv $SOURCES/libksba-1.3.5 cd $SOURCES && wget https://www.gnupg.org/ftp/gcrypt/libassuan/libassuan-2.4.3.tar.bz2 && tar -jxvf libassuan-2.4.3.tar.bz2 && \ cd $SOURCES/libassuan-2.4.3 && autoreconf --force --install && mkdir builddir && cd builddir && ../configure --prefix=/opt/usr && make -j 8 && make install && \ rm $SOURCES/libassuan-2.4.3.tar.bz2 && rm -rfv $SOURCES/libassuan-2.4.3 cd $SOURCES && wget https://www.gnupg.org/ftp/gcrypt/npth/npth-1.3.tar.bz2 && tar -jxvf npth-1.3.tar.bz2 && \ cd $SOURCES/npth-1.3 && autoreconf --force --install && mkdir builddir && cd builddir && ../configure --prefix=/opt/usr && make -j 8 && make install && \ rm $SOURCES/npth-1.3.tar.bz2 && rm -rfv $SOURCES/npth-1.3 cd $SOURCES && wget https://www.gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.7.5.tar.bz2 && tar -jxvf libgcrypt-1.7.5.tar.bz2 && \ cd $SOURCES/libgcrypt-1.7.5 && autoreconf --force --install && mkdir builddir && cd builddir && ../configure --prefix=/opt/usr && make -j 8 && make install && \ rm $SOURCES/libgcrypt-1.7.5.tar.bz2 && rm -rfv $SOURCES/libgcrypt-1.7.5 cd $SOURCES && wget http://ftp.gnu.org/gnu/libtasn1/libtasn1-4.10.tar.gz && tar -zxvf libtasn1-4.10.tar.gz && \ cd $SOURCES/libtasn1-4.10 && autoreconf --force --install && mkdir builddir && cd builddir && ../configure --prefix=/opt/usr && make -j 8 && make install &&\ rm $SOURCES/libtasn1-4.10.tar.gz && rm -rfv $SOURCES/libtasn1-4.10 cd $SOURCES && wget https://ftp.gnu.org/gnu/nettle/nettle-3.3.tar.gz && tar -zxvf nettle-3.3.tar.gz && \ cd $SOURCES/nettle-3.3 && autoreconf --force --install && mkdir builddir && cd builddir && ../configure --prefix=/opt/usr && make -j 8 && make install && \ rm $SOURCES/nettle-3.3.tar.gz && rm -rfv $SOURCES/nettle-3.3 cd $SOURCES && wget http://p11-glue.freedesktop.org/releases/p11-kit-0.23.2.tar.gz && tar -zxvf p11-kit-0.23.2.tar.gz && \ cd $SOURCES/p11-kit-0.23.2 && autoreconf --force --install && mkdir builddir && cd builddir && ../configure --prefix=/opt/usr && make -j 8 && make install && \ rm $SOURCES/p11-kit-0.23.2.tar.gz && rm -rfv $SOURCES/p11-kit-0.23.2 cd $SOURCES && wget ftp://ftp.gnutls.org/gcrypt/gnutls/v3.5/gnutls-3.5.10.tar.xz && tar -xvf gnutls-3.5.10.tar.xz && \ cd $SOURCES/gnutls-3.5.10 && autoreconf --force --install && mkdir builddir && cd builddir && ../configure --prefix=/opt/usr --with-included-libtasn1 && make -j 8 && make install && \ rm $SOURCES/gnutls-3.5.10.tar.xz && rm -rfv $SOURCES/gnutls-3.5.10 cd $SOURCES && wget http://downloads.sourceforge.net/pcre/pcre-8.35.tar.bz2 && tar -jxvf pcre-8.35.tar.bz2 && \ cd $SOURCES/pcre-8.35 && ./configure --prefix=/opt/usr && make && make install && \ rm $SOURCES/pcre-8.35.tar.bz2 && rm -rfv $SOURCES/pcre-8.35 cd $SOURCES && git clone git://git.gnupg.org/gpgme.git && \ cd $SOURCES/gpgme && autoreconf --force --install && mkdir builddir && cd builddir && ../configure --prefix=/opt/usr && make -j 8 && make install && rm -rfv $SOURCES/gpgme #New python3 apt-get -y remove 'python3.*' 'sip.*' cd $SOURCES && wget https://www.python.org/ftp/python/3.5.3/Python-3.5.3.tar.xz && tar -xvf Python-3.5.3.tar.xz cd $SOURCES/Python-3.5.3 && ./configure --prefix=/opt/usr --enable-shared --enable-static && make -j 8 && make install && rm $SOURCES/Python-3.5.3.tar.xz && rm -rfv $SOURCES/Python-3.5.3 cd $SOURCES && wget https://sourceforge.net/projects/pyqt/files/sip/sip-4.19.1/sip-4.19.1.tar.gz && tar -zxvf sip-4.19.1.tar.gz cd $SOURCES/sip-4.19.1 && python3 configure.py --destdir /opt/usr --incdir /opt/usr/include/python3.5 && make && make install pip3 install Sphinx clang PyOpenGL PyOpenGL_accelerate # #Build newer gstreamer for sound stack sudo apt-get -y remove 'gstreamer.*' cd $SOURCES && wget 'https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.10.4.tar.xz' && tar -xvf gstreamer-1.10.4.tar.xz && \ cd $SOURCES/gstreamer-1.10.4 && ./configure --prefix=/opt/usr --enable-shared --enable-gst-debug && make && make install && rm $SOURCES/gstreamer-1.10.4.tar.xz && rm -rfv $SOURCES/gstreamer-1.10.4 cd $SOURCES && wget 'https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.10.4.tar.xz' && tar -xvf gst-plugins-base-1.10.4.tar.xz && \ cd $SOURCES/gst-plugins-base-1.10.4 && ./configure --prefix=/opt/usr --enable-shared --enable-gst-debug && make && make install && rm $SOURCES/gst-plugins-base-1.10.4.tar.xz && rm -rfv $SOURCES/gst-plugins-base-1.10.4 cd $SOURCES && wget 'https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.10.4.tar.xz' && tar -xvf gst-plugins-good-1.10.4.tar.xz && \ cd $SOURCES/gst-plugins-good-1.10.4 && ./configure --prefix=/opt/usr --enable-shared --enable-gst-debug && make && make install && rm $SOURCES/gst-plugins-good-1.10.4.tar.xz && rm -rfv $SOURCES/gst-plugins-good-1.10.4 # cat > lib-7.7.md5 << EOF # a615e17d9fee6f097fc3b716eacb3dca xtrans-1.3.4.tar.bz2 # c35d6ad95b06635a524579e88622fdb5 libX11-1.6.2.tar.bz2 # 0d9f6dd9c23bf4bcbfb00504b566baf5 libXfont2-2.0.1.tar.bz2 # 52df7c4c1f0badd9f82ab124fb32eb97 libXext-1.3.3.tar.bz2 # a8a0dbd2299b2568d8c919883f5c8501 libFS-1.0.6.tar.bz2 # addfb1e897ca8079531669c7c7711726 libICE-1.0.9.tar.bz2 # 499a7773c65aba513609fe651853c5f3 libSM-1.2.2.tar.bz2 # 7a773b16165e39e938650bcc9027c1d5 libXScrnSaver-1.2.2.tar.bz2 # 03149823ae57bb02d0cec90d5b97d56c libXt-1.1.4.tar.bz2 # 41d92ab627dfa06568076043f3e089e4 libXmu-1.1.2.tar.bz2 # 769ee12a43611cdebd38094eaf83f3f0 libXpm-3.5.11.tar.bz2 # 7446f5fba888672aad068b29c0928ba3 libXaw-1.0.12.tar.bz2 # b985b85f8b9386c85ddcfe1073906b4d libXfixes-5.0.1.tar.bz2 # f7a218dcbf6f0848599c6c36fc65c51a libXcomposite-0.4.4.tar.bz2 # 2bd9a15fcf64d216e63b8d129e4f1f1c libXrender-0.9.8.tar.bz2 # 1e7c17afbbce83e2215917047c57d1b3 libXcursor-1.1.14.tar.bz2 # 0cf292de2a9fa2e9a939aefde68fd34f libXdamage-1.1.4.tar.bz2 # ad2919764933e075bb0361ad5caa3d19 libfontenc-1.1.2.tar.bz2 # 664629bfa7cdf8b984155019fd395dcb libXfont-1.5.0.tar.bz2 # 331b3a2a3a1a78b5b44cfbd43f86fcfe libXft-2.3.2.tar.bz2 # 9c4a69c34b19ec1e4212e849549544cb libXi-1.7.4.tar.bz2 # 9336dc46ae3bf5f81c247f7131461efd libXinerama-1.1.3.tar.bz2 # 210ed9499a3d9c96e3a221629b7d39b0 libXrandr-1.4.2.tar.bz2 # 45ef29206a6b58254c81bea28ec6c95f libXres-1.0.7.tar.bz2 # 25c6b366ac3dc7a12c5d79816ce96a59 libXtst-1.2.2.tar.bz2 # e0af49d7d758b990e6fef629722d4aca libXv-1.0.10.tar.bz2 # 2e4014e9d55c430e307999a6b3dd256d libXvMC-1.0.8.tar.bz2 # d7dd9b9df336b7dd4028b6b56542ff2c libXxf86dga-1.1.4.tar.bz2 # e46f6ee4f4567349a3189044fe1bb712 libXxf86vm-1.1.3.tar.bz2 # ba983eba5a9f05d152a0725b8e863151 libdmx-1.1.3.tar.bz2 # b7c0d3afce14eedca57312a3141ec13a libpciaccess-0.13.2.tar.bz2 # 19e6533ae64abba0773816a23f2b9507 libxkbfile-1.0.8.tar.bz2 # 2dd10448c1166e71a176206a8dfabe6d libxshmfence-1.1.tar.bz2 # EOF # grep -v '^#' lib-7.7.md5 | awk '{print $2}' | wget -i- -c \ # -B http://xorg.freedesktop.org/releases/individual/lib/ && # md5sum -c lib-7.7.md5 # # for package in $(grep -v '^#' lib-7.7.md5 | awk '{print $2}') # do # packagedir=${package%.tar.bz2} # tar -xf $package # pushd $packagedir # case $packagedir in # libXfont-[0-9]* ) # ./configure --prefix=/opt/usr \ # --disable-devel-docs # ;; # libXt-[0-9]* ) # ./configure --prefix=/opt/usr \ # --with-appdefaultdir=/etc/X11/app-defaults # ;; # * ) # ./configure --prefix=/opt/usr # ;; # esac # make -j8 # make install # popd # rm -rf $packagedir # done cd $SOURCES && wget ftp://ftp.videolan.org/pub/x264/snapshots/last_x264.tar.bz2 && tar xjvf last_x264.tar.bz2 -if cd x264-snapshot-20170910-2245; then +if cd x264-snapshot-20170911-2245; then ./configure --enable-static --enable-shared --disable-asm --prefix=/opt/usr make -j4 && make install else error_exit "$LINENO: An error has occurred.. Aborting." fi if wget http://ftp.videolan.org/pub/videolan/x265/x265_2.3.tar.gz; then tar xvf x265_2.3.tar.gz else error_exit "$LINENO: An error has occurred.. Aborting." fi if cd x265_2.3/build/linux; then cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="/opt/usr" -DENABLE_PIC=ON -DENABLE_SHARED=ON ../../source make -j4 && make install else error_exit "$LINENO: An error has occurred.. Aborting." fi if wget http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2; then tar xjvf ffmpeg-snapshot.tar.bz2 else error_exit "$LINENO: An error has occurred.. Aborting." fi if cd ffmpeg; then ./configure --prefix="/opt/usr" --extra-ldflags="-L/opt/usr//lib -lstdc++ -lm -lrt -ldl" --extra-cflags="-I/opt/usr/include" --pkg-config-flags="--static" --enable-static --enable-avfilter \ --enable-gpl --enable-avresample --enable-avutil --enable-libx265 --enable-libvpx --enable-libx264 --disable-doc && \ make -j4 && make install else error_exit "$LINENO: An error has occurred.. Aborting." fi