Commit: CI: add sway compositor to CI tests, to prepare for better Wayland testing

1 view
Skip to first unread message

Christian Brabandt

unread,
Apr 21, 2025, 5:30:16 AM4/21/25
to vim...@googlegroups.com
CI: add sway compositor to CI tests, to prepare for better Wayland testing

Commit: https://github.com/vim/vim/commit/16341e70904c03eb810b3be223ab732c3f21e8ab
Author: Foxe Chen <chen...@gmail.com>
Date: Mon Apr 21 11:20:44 2025 +0200

CI: add sway compositor to CI tests, to prepare for better Wayland testing

closes: https://github.com/vim/vim/issues/17162

Signed-off-by: Foxe Chen <chen...@gmail.com>
Signed-off-by: Christian Brabandt <c...@256bit.org>

diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index fc6cd9663..cdc05620e 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -29,6 +29,7 @@ jobs:
LOG_DIR: ${{ github.workspace }}/logs
TERM: xterm
DISPLAY: ':99'
+ WAYLAND_DISPLAY: 'wayland-1'
DEBIAN_FRONTEND: noninteractive

strategy:
@@ -114,6 +115,7 @@ jobs:
run: |
# This is added by default, and it is often broken, but we don't need anything from it
sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
+
PKGS=( \
gettext \
libgtk2.0-dev:${{ matrix.architecture }} \
@@ -123,6 +125,7 @@ jobs:
libxt-dev:${{ matrix.architecture }} \
locales-all \
software-properties-common \
+ sway \
)
if ${{ matrix.features == 'huge' }}; then
LUA_VER=${{ matrix.lua_ver || '5.4' }}
@@ -143,6 +146,7 @@ jobs:
libattr1-dev
)
fi
+
sudo apt-get update && sudo apt-get upgrade -y && sudo apt-get install -y "${PKGS[@]}"

- name: Install gcc-${{ env.GCC_VER }}
@@ -232,6 +236,8 @@ jobs:
sudo sysctl -w net.ipv6.conf.lo.disable_ipv6=0
sudo usermod -a -G audio "${USER}"
sudo bash ci/setup-xvfb.sh
+ # Sway requires user session
+ bash ci/setup-sway.sh

- name: Check autoconf
if: contains(matrix.extra, 'unittests')
diff --git a/Filelist b/Filelist
index c5b3c4fdd..a7a937c01 100644
--- a/Filelist
+++ b/Filelist
@@ -25,6 +25,7 @@ SRC_ALL = \
ci/if_ver*.vim \
ci/if_feat_check.vim \
ci/setup-xvfb.sh \
+ ci/setup-sway.sh \
ci/remove_snap.sh \
src/Make_all.mak \
src/README.md \
diff --git a/ci/setup-sway.sh b/ci/setup-sway.sh
new file mode 100644
index 000000000..060b7f9e2
--- /dev/null
+++ b/ci/setup-sway.sh
@@ -0,0 +1,7 @@
+#!/bin/bash
+set -e
+
+# Using a systemd user service doesn't work because it seems like github actions
+# doesn't support user sessions? Just run sway in the background and disown it.
+WLR_BACKENDS=headless sway &
+disown
Reply all
Reply to author
Forward
0 new messages