mirror of
https://gitlab.linphone.org/BC/public/linphone-desktop.git
synced 2026-01-17 11:28:07 +00:00
Remove the fuse mandatory for CI. Update CI to use Qt custom version and update application to Qt 5.15.12.
60 lines
3.1 KiB
Text
60 lines
3.1 KiB
Text
|
|
FROM gitlab.linphone.org:4567/bc/public/linphone-sdk/bc-dev-debian9:20230302_newer_clang_cpp17
|
|
|
|
ARG QT_EMAIL
|
|
ARG QT_PASSWORD
|
|
ARG QT_VERSION=5.15.2
|
|
ARG QT_VERSION_MODULE=qt.qt5.51512
|
|
ARG QT_MODULES=qtwebengine qtnetworkauth
|
|
|
|
MAINTAINER Peio Rigaux <peio.rigaux@belledonne-communications.com>
|
|
|
|
#Tools for QT buid script
|
|
RUN sudo apt-get update && sudo apt-get install -y pigz
|
|
|
|
#QT Dependencies
|
|
#atspi and dbus may be used to enable qt accessibility for screan reader
|
|
#xkbcommon is needed for special keyboard features
|
|
#flite1-dev, libspeechd-dev speech-dispatcher are needed for text to speech
|
|
#libfontconfig1-dev is needed to load correct fonts (support of ideograms, etc..)
|
|
#libgstreamer-plugins-base1.0 multimedia module (video playback)
|
|
#needed for xcb : libfontconfig1-dev libfreetype6-dev libx11-dev libxext-dev libxfixes-dev libxi-dev libxrender-dev libxcb1-dev libx11-xcb-dev libxcb-glx0-dev libxkbcommon-x11-dev
|
|
RUN sudo apt-get update && sudo apt-get install -y libxkbcommon* flite1-dev libspeechd-dev speech-dispatcher libfontconfig1-dev libfreetype6-dev libx11-dev libxext-dev libxfixes-dev libxi-dev libxrender-dev libx11-xcb* libxcb* qdbus-qt5 libqt5dbus5 libdbus-1-dev libdbus-glib-1-dev libatspi2.0-0 libatspi2.0-dev libgstreamer-plugins-base1.0
|
|
RUN sudo apt-get update && sudo apt-get install -y libxcb-keysyms1-dev libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev libxcb-sync0-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-randr0-dev libxcb-render-util0-dev
|
|
|
|
#needed fot qt to find dbus
|
|
ENV PKG_CONFIG_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig
|
|
|
|
#Appimage deps
|
|
RUN sudo apt-get install -y wget fuse libfuse2 gnupg2
|
|
|
|
#Update certificates
|
|
RUN sudo sed -i '/^mozilla\/DST_Root_CA_X3/s/^/!/' /etc/ca-certificates.conf
|
|
RUN sudo update-ca-certificates -f
|
|
|
|
|
|
########### QT
|
|
# Add Qt and download
|
|
#Maintenance tools
|
|
#ADD https://download.qt.io/development_releases/online_installers/4.4/qt-unified-linux-x64-4.4.0-beta-online.run /home/bc/qt-unified-linux-x64-4.4.0-beta-online.run
|
|
#RUN sudo chmod +x /home/bc/qt-unified-linux-x64-4.4.0-beta-online.run
|
|
#RUN sudo /home/bc/qt-unified-linux-x64-4.4.0-beta-online.run install $QT_VERSION_MODULE $QT_VERSION_MODULE.qtpdf $QT_VERSION_MODULE.qtwebengine $QT_VERSION_MODULE.qtnetworkauth --email $QT_EMAIL --pw $QT_PASSWORD --accept-licenses --accept-obligations --auto-answer telemetry-question=No,AssociateCommonFiletypes=Yes --confirm-command --no-default-installations
|
|
|
|
USER bc
|
|
WORKDIR /home/bc
|
|
|
|
# Manual
|
|
RUN sudo pip3 install aqtinstall
|
|
RUN sudo python3 -m aqt install $QT_VERSION linux desktop -O /opt/Qt -m $QT_MODULES
|
|
## QtCore need libxcb-util.so.1 that need xorg-macros that is in xutils-dev
|
|
RUN sudo apt-get install -y xutils-dev
|
|
RUN git clone --recursive git://anongit.freedesktop.org/git/xcb/util
|
|
## The copy is needed because the appimage doesn't get the dependency in /usr/local/lib (why is unknown)
|
|
RUN cd util && ./autogen.sh && make && sudo make install && sudo cp /usr/local/lib/libxcb-util.so.1 /opt/Qt/$QT_VERSION/gcc_64/lib/
|
|
RUN sudo chown -R bc:bc /opt/Qt/
|
|
|
|
|
|
ENV Qt5_DIR=/opt/Qt/$QT_VERSION/gcc_64/lib/cmake
|
|
ENV PATH=/opt/Qt/$QT_VERSION/gcc_64/bin:$PATH
|
|
ENV PS1='\[\e[34m\]\u@bc-dev-centos7>\[\e[0m\] '
|
|
CMD bash
|