From 1304ad52da72f399e6a688dacac0c2302e4bf4c3 Mon Sep 17 00:00:00 2001 From: Clayton Craft <clayton@craftyguy.net> Date: Mon, 6 May 2024 16:39:59 -0700 Subject: [PATCH] systemd/mutter: fork to enable systemd support (MR 5115) --- extra-repos/systemd/mutter/APKBUILD | 105 +++++++++++++++++++ extra-repos/systemd/mutter/fixudev-req.patch | 16 +++ extra-repos/systemd/mutter/pcversion.patch | 14 +++ 3 files changed, 135 insertions(+) create mode 100644 extra-repos/systemd/mutter/APKBUILD create mode 100644 extra-repos/systemd/mutter/fixudev-req.patch create mode 100644 extra-repos/systemd/mutter/pcversion.patch diff --git a/extra-repos/systemd/mutter/APKBUILD b/extra-repos/systemd/mutter/APKBUILD new file mode 100644 index 00000000000..bb165fd2208 --- /dev/null +++ b/extra-repos/systemd/mutter/APKBUILD @@ -0,0 +1,105 @@ +# Forked from Alpine to add systemd! + +pkgname=mutter +pkgver=999946.1 +_pkgver=46.1 +pkgrel=0 +pkgdesc="clutter-based window manager and compositor" +url="https://wiki.gnome.org/Projects/Mutter/" +arch="all !s390x" # no libei-dev for s390x +license="GPL-2.0-or-later" +depends=" + gnome-settings-daemon + gsettings-desktop-schemas + mutter-schemas + xkeyboard-config + " +makedepends=" + at-spi2-core-dev + cairo-dev + dbus-dev + eudev-dev + fribidi-dev + gdk-pixbuf-dev + glib-dev + gnome-desktop-dev + gnome-settings-daemon-dev + gobject-introspection-dev + graphene-dev + gtk4.0-dev + json-glib-dev + lcms2-dev + libcanberra-dev + libdrm-dev + libei-dev + libgudev-dev + libice-dev + libinput-dev + libsm-dev + libwacom-dev + libx11-dev + libxau-dev + libxcb-dev + libxcomposite-dev + libxcursor-dev + libxdamage-dev + libxext-dev + libxfixes-dev + libxi-dev + libxinerama-dev + libxkbcommon-dev + libxkbfile-dev + libxrandr-dev + libxrender-dev + libxtst-dev + mesa-dev + meson + pango-dev + pipewire-dev + startup-notification-dev + systemd-dev + wayland-dev + wayland-protocols + xkeyboard-config-dev + xwayland-dev + " +options="!check" # Can't be run with release builds +subpackages="$pkgname-dbg $pkgname-dev $pkgname-doc $pkgname-lang $pkgname-schemas::noarch" +source="https://download.gnome.org/sources/mutter/${_pkgver%.*}/mutter-$_pkgver.tar.xz + fixudev-req.patch + pcversion.patch + " +builddir="$srcdir/$pkgname-$_pkgver" + +build() { + abuild-meson \ + -Db_lto=true \ + -Degl_device=true \ + -Dudev=true \ + -Dnative_backend=true \ + -Dintrospection=true \ + -Dremote_desktop=true \ + -Dprofiler=false \ + -Dtests=false \ + . output + meson compile -C output +} + +schemas() { + pkgdesc="Mutter schemas related files" + depends="" + + amove usr/share/glib-2.0/schemas + amove usr/share/GConf/gsettings + amove usr/share/gnome-control-center/keybindings +} + +package() { + DESTDIR="$pkgdir" meson install --no-rebuild -C output +} + +sha512sums=" +bb360db020c31e71ae9e247d871130dd737b180a0a48eebcafee6a3b4b5e704fe9828e12caec13e81a03d6b61bfac389c5865e747786cf154ff363ab108a003f mutter-46.1.tar.xz +3e5dd59f2f2fd80edde13f64d70d52a023dec303fd8dbfa3ded0d77faf7643179f2ad74d4acd3450decb67deaf6ac85a7af5146fa96f33917b4363f884413af9 fixudev-req.patch +670927a5528f9fec4801b7dab8a377b7280c239acb1f7a9077647deef71119738deb958a94d4ce0a99d39b29eeab3b2505698f7d19b880bbcec9f5260202d3a6 pcversion.patch +" diff --git a/extra-repos/systemd/mutter/fixudev-req.patch b/extra-repos/systemd/mutter/fixudev-req.patch new file mode 100644 index 00000000000..33553cf98aa --- /dev/null +++ b/extra-repos/systemd/mutter/fixudev-req.patch @@ -0,0 +1,16 @@ +Apparently the version limit is only required for systemd udev, it works +just fine with our version of eudev. + +diff --git a/meson.build b/meson.build +index 2605a65..3550496 100644 +--- a/meson.build ++++ b/meson.build +@@ -218,7 +218,7 @@ endif + + have_libgudev = get_option('udev') + if have_libgudev +- libudev_dep = dependency('libudev', version: udev_req) ++ libudev_dep = dependency('libudev') + gudev_dep = dependency('gudev-1.0', version: gudev_req) + udev_dep = dependency('udev') + diff --git a/extra-repos/systemd/mutter/pcversion.patch b/extra-repos/systemd/mutter/pcversion.patch new file mode 100644 index 00000000000..f948f80e966 --- /dev/null +++ b/extra-repos/systemd/mutter/pcversion.patch @@ -0,0 +1,14 @@ +apk-tools 2.12.10 fails with this in a .pc depends file +diff --git a/meson.build b/meson.build +index 3550496..15b9e7d 100644 +--- a/meson.build ++++ b/meson.build +@@ -26,7 +26,7 @@ + cairo_req = '>= 1.10.0' + pangocairo_req = '>= 1.20' + pixman_req = '>= 0.42' +-gsettings_desktop_schemas_req = '>= 40.alpha' ++gsettings_desktop_schemas_req = '>= 40' + x11_req = '>= 1.7.0' + xcomposite_req = '>= 0.4' + xkbcommon_req = '>= 0.4.3' -- GitLab