ci: Install Xwayland from git
This gives us -initfd, thus Xwayland on demand in the CI. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1681>
This commit is contained in:
parent
ff25ec3f36
commit
e558d6acb9
2 changed files with 31 additions and 5 deletions
|
@ -12,7 +12,7 @@ stages:
|
||||||
.mutter.fedora:33@common:
|
.mutter.fedora:33@common:
|
||||||
variables:
|
variables:
|
||||||
FDO_DISTRIBUTION_VERSION: 33
|
FDO_DISTRIBUTION_VERSION: 33
|
||||||
BASE_TAG: '2021-01-14.0'
|
BASE_TAG: '2021-01-22.0'
|
||||||
FDO_UPSTREAM_REPO: GNOME/mutter
|
FDO_UPSTREAM_REPO: GNOME/mutter
|
||||||
FDO_DISTRIBUTION_EXEC: |
|
FDO_DISTRIBUTION_EXEC: |
|
||||||
dnf install -y 'dnf-command(builddep)' &&
|
dnf install -y 'dnf-command(builddep)' &&
|
||||||
|
@ -20,16 +20,20 @@ stages:
|
||||||
|
|
||||||
# For running unit tests
|
# For running unit tests
|
||||||
dnf install -y xorg-x11-server-Xvfb mesa-dri-drivers dbus dbus-x11 \
|
dnf install -y xorg-x11-server-Xvfb mesa-dri-drivers dbus dbus-x11 \
|
||||||
xorg-x11-server-Xvfb 'pkgconfig(accountsservice)' \
|
'pkgconfig(accountsservice)' \
|
||||||
gnome-control-center gcovr libnma python3-gobject \
|
gnome-control-center gcovr libnma python3-gobject \
|
||||||
python3-dbusmock &&
|
python3-dbusmock &&
|
||||||
|
|
||||||
# GNOME Shell
|
# GNOME Shell
|
||||||
dnf builddep -y gnome-shell --setopt=install_weak_deps=False &&
|
dnf builddep -y gnome-shell --setopt=install_weak_deps=False &&
|
||||||
dnf install -y 'pkgconfig(gtk4)' 'pkgconfig(vulkan)' &&
|
dnf install -y 'pkgconfig(gtk4)' 'pkgconfig(vulkan)' 'pkgconfig(libtirpc)' &&
|
||||||
dnf remove -y gnome-bluetooth-libs-devel &&
|
dnf remove -y gnome-bluetooth-libs-devel &&
|
||||||
dnf remove -y --noautoremove mutter mutter-devel &&
|
dnf remove -y --noautoremove mutter mutter-devel &&
|
||||||
|
|
||||||
|
# For Xwayland/Xvfb
|
||||||
|
dnf builddep -y xorg-x11-server-Xwayland --setopt=install_weak_deps=False &&
|
||||||
|
dnf remove -y --noautoremove 'xorg-x11-server-Xwayland' &&
|
||||||
|
|
||||||
./.gitlab-ci/install-meson-project.sh \
|
./.gitlab-ci/install-meson-project.sh \
|
||||||
-Dlibaudit=disabled \
|
-Dlibaudit=disabled \
|
||||||
-Dplymouth=disabled \
|
-Dplymouth=disabled \
|
||||||
|
@ -42,6 +46,21 @@ stages:
|
||||||
https://gitlab.gnome.org/GNOME/gsettings-desktop-schemas.git \
|
https://gitlab.gnome.org/GNOME/gsettings-desktop-schemas.git \
|
||||||
40.alpha . &&
|
40.alpha . &&
|
||||||
|
|
||||||
|
./.gitlab-ci/install-meson-project.sh \
|
||||||
|
-Dxwayland=true \
|
||||||
|
-Dxwayland_eglstream=true \
|
||||||
|
-D{xorg,xnest,xvfb}=false \
|
||||||
|
-Dvendor_name="Mutter CI" \
|
||||||
|
-D{xdmcp,udev,udev_kms}=false \
|
||||||
|
-Dxcsecurity=true \
|
||||||
|
-Dglamor=true \
|
||||||
|
-D{dri1,dri2}=false \
|
||||||
|
-Ddri3=true \
|
||||||
|
https://gitlab.freedesktop.org/xorg/xserver.git \
|
||||||
|
master \
|
||||||
|
. \
|
||||||
|
a9269808f394955f213e34303c2c14fd61c35ab5 &&
|
||||||
|
|
||||||
dnf clean all
|
dnf clean all
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
|
|
@ -17,14 +17,21 @@ while [[ $1 =~ ^-D ]]; do
|
||||||
done
|
done
|
||||||
|
|
||||||
REPO_URL="$1"
|
REPO_URL="$1"
|
||||||
COMMIT="$2"
|
TAG_OR_BRANCH="$2"
|
||||||
SUBDIR="$3"
|
SUBDIR="$3"
|
||||||
|
COMMIT="$4"
|
||||||
|
|
||||||
REPO_DIR="$(basename ${REPO_URL%.git})"
|
REPO_DIR="$(basename ${REPO_URL%.git})"
|
||||||
|
|
||||||
git clone --depth 1 "$REPO_URL" -b "$COMMIT"
|
git clone --depth 1 "$REPO_URL" -b "$TAG_OR_BRANCH"
|
||||||
pushd "$REPO_DIR"
|
pushd "$REPO_DIR"
|
||||||
pushd "$SUBDIR"
|
pushd "$SUBDIR"
|
||||||
|
|
||||||
|
if [ ! -z "$COMMIT" ]; then
|
||||||
|
git fetch origin "$COMMIT"
|
||||||
|
git checkout "$COMMIT"
|
||||||
|
fi
|
||||||
|
|
||||||
meson --prefix=/usr _build "${MESON_OPTIONS[@]}"
|
meson --prefix=/usr _build "${MESON_OPTIONS[@]}"
|
||||||
ninja -C _build install
|
ninja -C _build install
|
||||||
popd
|
popd
|
||||||
|
|
Loading…
Reference in a new issue