2023-10-24 03:46:36 +00:00
|
|
|
#! /bin/bash
|
|
|
|
|
|
|
|
set -eux
|
|
|
|
|
|
|
|
# Fedora base image disable installing documentation files. See https://pagure.io/atomic-wg/issue/308
|
|
|
|
# We need them to cleanly build our doc.
|
|
|
|
sed -i '/tsflags=nodocs/d' /etc/dnf/dnf.conf
|
|
|
|
dnf -y swap coreutils-single coreutils-full
|
2024-10-30 13:22:59 +00:00
|
|
|
dnf -y swap glibc-minimal-langpack glibc-all-langpacks
|
2023-10-24 03:46:36 +00:00
|
|
|
|
|
|
|
# Add rpm fusion repositories in order to access all of the gst plugins
|
2024-07-29 11:10:04 +00:00
|
|
|
dnf install -y \
|
2023-10-24 03:46:36 +00:00
|
|
|
"https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm" \
|
|
|
|
"https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm"
|
|
|
|
|
2024-07-29 11:54:06 +00:00
|
|
|
# Enable the debuginfo repos so -debug packages are kept in sync
|
|
|
|
dnf install -y dnf-plugins-core
|
|
|
|
dnf config-manager --set-enabled '*-debuginfo'
|
|
|
|
|
2023-10-24 03:46:36 +00:00
|
|
|
dnf upgrade -y && dnf distro-sync -y
|
|
|
|
|
|
|
|
# Install the dependencies of gstreamer
|
2024-07-30 08:28:07 +00:00
|
|
|
dnf install --setopt=install_weak_deps=false -y $(<./ci/docker/fedora/deps.txt)
|
2023-10-24 03:46:36 +00:00
|
|
|
|
2024-10-27 12:33:39 +00:00
|
|
|
# Install devhelp files for hotdoc
|
|
|
|
dnf install -y glib2-doc gdk-pixbuf2-devel gtk3-devel-docs gtk4-devel-docs libsoup-doc
|
2023-10-24 03:46:36 +00:00
|
|
|
|
2024-10-27 12:33:39 +00:00
|
|
|
# Make sure we don't end up installing these from some transient dependency
|
|
|
|
dnf remove -y "gstreamer1*-devel" rust cargo meson 'fdk-aac-free*'
|
2024-07-29 11:46:14 +00:00
|
|
|
|
2024-10-27 12:33:39 +00:00
|
|
|
pip3 install meson==1.5.2 python-gitlab tomli junitparser
|
|
|
|
pip3 install git+https://github.com/hotdoc/hotdoc.git@8c1cc997f5bc16e068710a8a8121f79ac25cbcce
|
2023-10-24 03:46:36 +00:00
|
|
|
|
2023-10-24 03:51:52 +00:00
|
|
|
# Install most debug symbols, except the big ones from things we use
|
|
|
|
debug_packages=$(rpm -qa | grep -v -i \
|
|
|
|
-e bash \
|
|
|
|
-e bat \
|
|
|
|
-e bluez \
|
|
|
|
-e boost \
|
|
|
|
-e ccache \
|
2022-05-17 10:22:09 +00:00
|
|
|
-e ceph \
|
2023-10-24 03:51:52 +00:00
|
|
|
-e clang \
|
|
|
|
-e cmake \
|
|
|
|
-e colord \
|
|
|
|
-e compiler-rt \
|
|
|
|
-e cpp \
|
|
|
|
-e cups \
|
|
|
|
-e demos \
|
|
|
|
-e flexiblas \
|
|
|
|
-e flite \
|
|
|
|
-e gcc \
|
|
|
|
-e gcc-debuginfo \
|
|
|
|
-e gcc-debugsource \
|
|
|
|
-e gdal \
|
|
|
|
-e gdb \
|
|
|
|
-e geocode \
|
|
|
|
-e git \
|
|
|
|
-e glusterfs \
|
|
|
|
-e gpg \
|
|
|
|
-e GraphicsMagick \
|
|
|
|
-e groff \
|
|
|
|
-e gstreamer1 \
|
|
|
|
-e java \
|
|
|
|
-e leptonica \
|
|
|
|
-e libdap \
|
|
|
|
-e libdb \
|
|
|
|
-e libdnf \
|
|
|
|
-e libspatialite \
|
|
|
|
-e llvm \
|
|
|
|
-e lua \
|
|
|
|
-e MUMPS \
|
|
|
|
-e NetworkManager \
|
|
|
|
-e nodejs \
|
|
|
|
-e openblas \
|
|
|
|
-e opencv \
|
|
|
|
-e openexr \
|
|
|
|
-e perl \
|
|
|
|
-e poppler \
|
|
|
|
-e qemu \
|
|
|
|
-e qt5 \
|
|
|
|
-e qt6 \
|
2022-05-17 10:22:09 +00:00
|
|
|
-e sequoia \
|
2023-10-24 03:51:52 +00:00
|
|
|
-e spice \
|
|
|
|
-e sqlite \
|
|
|
|
-e suitesparse \
|
|
|
|
-e systemd \
|
|
|
|
-e tesseract \
|
|
|
|
-e tests \
|
|
|
|
-e tools \
|
|
|
|
-e tpm2 \
|
|
|
|
-e unbound \
|
|
|
|
-e valgrind \
|
|
|
|
-e vim \
|
|
|
|
-e vtk \
|
|
|
|
-e xen \
|
|
|
|
-e xerces \
|
|
|
|
-e xorg \
|
|
|
|
)
|
|
|
|
dnf debuginfo-install -y --best --allowerasing --skip-broken $debug_packages
|
|
|
|
|
2023-10-24 03:46:36 +00:00
|
|
|
echo "Removing DNF cache"
|
|
|
|
dnf clean all
|
|
|
|
|
|
|
|
rm -rf /var/cache/dnf /var/log/dnf*
|