summaryrefslogtreecommitdiff
path: root/ci/ciimage
diff options
context:
space:
mode:
authorEli Schwartz <eschwartz93@gmail.com>2025-01-05 18:01:12 -0500
committerSam James <sam@gentoo.org>2025-10-29 05:13:19 +0000
commitf517487e73b1a51f66696eb5e8ce5d1a92247400 (patch)
tree1d80714cabcfabd10c68c4b41c802c325ace8b45 /ci/ciimage
parentd4c9536591165104e5ad98489d0e17cba82803cf (diff)
downloadmeson-f517487e73b1a51f66696eb5e8ce5d1a92247400.tar.gz
ci: gentoo: use a slimmer base image
We've been using the desktop profile until now, mostly because it automatically provides various frameworks we test e.g. wayland, gtk, qt etc that all install out of the box. It also guarantees that binpackages match. The image is also really fat though. :( Switch to the base profile, install a few packages that otherwise wouldn't be installed, and tweak individual USE flags for binary coverage.
Diffstat (limited to 'ci/ciimage')
-rw-r--r--ci/ciimage/gentoo/image.json2
-rwxr-xr-xci/ciimage/gentoo/install.sh23
2 files changed, 20 insertions, 5 deletions
diff --git a/ci/ciimage/gentoo/image.json b/ci/ciimage/gentoo/image.json
index e59eee5ee..f7ecd6495 100644
--- a/ci/ciimage/gentoo/image.json
+++ b/ci/ciimage/gentoo/image.json
@@ -1,5 +1,5 @@
{
- "base_image": "gentoo/stage3:desktop",
+ "base_image": "gentoo/stage3:latest",
"env": {
"CI": "1",
"MESON_CI_JOBNAME": "linux-gentoo-gcc",
diff --git a/ci/ciimage/gentoo/install.sh b/ci/ciimage/gentoo/install.sh
index a48456df7..7d4bc6757 100755
--- a/ci/ciimage/gentoo/install.sh
+++ b/ci/ciimage/gentoo/install.sh
@@ -23,10 +23,16 @@ pkgs_stable=(
dev-util/bindgen
dev-libs/elfutils
+ dev-libs/protobuf
+
+ # modules
dev-util/gdbus-codegen
+ dev-util/glib-utils
dev-libs/gobject-introspection
dev-util/itstool
- dev-libs/protobuf
+ dev-util/wayland-scanner
+ dev-libs/wayland-protocols
+ dev-libs/wayland
# custom deps
dev-libs/boost
@@ -39,8 +45,12 @@ pkgs_stable=(
dev-cpp/gtest
sci-libs/hdf5
dev-qt/linguist-tools
+ dev-qt/qtwidgets:5
llvm-core/llvm
dev-qt/qttools
+ net-print/cups
+ dev-util/vulkan-headers
+ media-libs/vulkan-loader
# misc
app-admin/sudo
@@ -48,6 +58,8 @@ pkgs_stable=(
sys-devel/bison
sys-devel/reflex
sys-devel/gettext
+ # needed by vala
+ x11-libs/gtk+
# TODO: vulkan-validation-layers
# TODO: cuda
@@ -60,9 +72,6 @@ pkgs_stable=(
#dev-libs/wayland
#dev-libs/wayland-protocols
#dev-python/pypy3
- #dev-qt/qtbase:6
- #dev-qt/qtcore:5
- #dev-qt/qttools:6
#dev-vcs/mercurial
#gnustep-base/gnustep-base
#media-gfx/graphviz
@@ -100,10 +109,16 @@ mkdir /etc/portage/binrepos.conf || true
mkdir /etc/portage/profile || true
cat <<-EOF > /etc/portage/package.use/ci
dev-cpp/gtkmm X
+ media-libs/libglvnd X
+ x11-libs/cairo X
+ x11-libs/libxkbcommon X
dev-lang/rust clippy rustfmt
dev-lang/rust-bin clippy rustfmt
dev-libs/boost python
+ # slimmed binpkg, nomesa
+ media-libs/libsdl2 -opengl -wayland -alsa -dbus -gles2 -udev -vulkan
+
# Some of these settings are needed just to get the binpkg but
# aren't negative to have anyway
sys-devel/gcc ada d jit