build(docker): attempt apt install libgrantlee5/libkdreports; add build_grantlee.sh and build_kdreports.sh invocation from Dockerfile\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

This commit is contained in:
torsten committed 2026-07-17 13:37:06 +02:00
1 parent f613b4f266
commit c028a5622c
1 file changed
+7 -24
+7 -24
View File
@@ -74,30 +74,13 @@ RUN set -eux; \
libicu-dev \
libqt6svg6-dev \
libqt6webkit6-dev || true; \
# Try to install Grantlee / KDReports from apt if available; ignore failures
apt-get install -y --no-install-recommends libgrantlee-qt5-dev libgrantlee-templates5-dev libkdreports-dev || true; \
# Build Grantlee from source (KDE frameworks) if cmake config not available
if ! ldconfig -p | grep -q grantlee || ! pkg-config --exists grantlee-templates; then \
echo "Building Grantlee from source"; \
git clone --depth 1 https://invent.kde.org/frameworks/grantlee.git /tmp/grantlee || true; \
if [ -d /tmp/grantlee ]; then \
mkdir -p /tmp/grantlee/build; cd /tmp/grantlee/build; \
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_PREFIX_PATH="${QT_ROOT}:/usr/local" ..; \
cmake --build . -- -j$(nproc) || true; \
cmake --install . || true; \
fi; \
fi; \
# Build KDReports from source if not available
if ! ldconfig -p | grep -q kdreports && [ ! -f /usr/local/lib/libKDReports.so ]; then \
echo "Building KDReports from source"; \
git clone --depth 1 https://invent.kde.org/sdk/kdreports/kdreports.git /tmp/kdreports || true; \
if [ -d /tmp/kdreports ]; then \
mkdir -p /tmp/kdreports/build; cd /tmp/kdreports/build; \
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_PREFIX_PATH="${QT_ROOT}:/usr/local" ..; \
cmake --build . -- -j$(nproc) || true; \
cmake --install . || true; \
fi; \
fi; \
# Try to install Grantlee / KDReports via apt (preferred); ignore failures
apt-get install -y --no-install-recommends libgrantlee5 libgrantlee5-dev libkdreports-dev || true; \
# Build Grantlee and KDReports via scripts in /app if apt packages not available
COPY build_grantlee.sh /app/build_grantlee.sh; \
COPY build_kdreports.sh /app/build_kdreports.sh; \
/app/build_grantlee.sh || true; \
/app/build_kdreports.sh || true; \
# geographiclib already installed via apt; RTI (Proprietary) cannot be installed automatically
echo "Note: RTI Connext (RTI) is proprietary and must be installed manually into /opt/RTI if required."