summaryrefslogtreecommitdiff
path: root/gui-wm/wayfire
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-03-19 12:49:59 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-03-19 12:49:59 +0000
commit328b082fd6fb193da715f61a92ff9366ad562a34 (patch)
treebb1cb21fc0cdf0377ed571709e5ff4460f159a76 /gui-wm/wayfire
parent06617f385b21ef2262c88f17869c15c424e67d21 (diff)
gentoo auto-resync : 19:03:2024 - 12:49:59
Diffstat (limited to 'gui-wm/wayfire')
-rw-r--r--gui-wm/wayfire/Manifest8
-rw-r--r--gui-wm/wayfire/files/wayfire-0.8.0-dont-use-installed-config-h.patch65
-rw-r--r--gui-wm/wayfire/metadata.xml6
-rw-r--r--gui-wm/wayfire/wayfire-0.8.0-r2.ebuild158
-rw-r--r--gui-wm/wayfire/wayfire-0.8.1-r1.ebuild (renamed from gui-wm/wayfire/wayfire-0.8.1.ebuild)8
-rw-r--r--gui-wm/wayfire/wayfire-9999.ebuild4
6 files changed, 240 insertions, 9 deletions
diff --git a/gui-wm/wayfire/Manifest b/gui-wm/wayfire/Manifest
index 4daa6b2b6edd..e1bc384ab568 100644
--- a/gui-wm/wayfire/Manifest
+++ b/gui-wm/wayfire/Manifest
@@ -1,9 +1,11 @@
+AUX wayfire-0.8.0-dont-use-installed-config-h.patch 1999 BLAKE2B 6f87e25841dfcd266a7507d72d5c6602fd11a24b8a5e7f90c51e8b93592355f2971ee2eb0c9088a17921f5cf6dd690ebd0d54ea03f6fe026794d5d7c2eafaeb0 SHA512 0cbdf8bcf54491969ad5d0da9d2736775112ea168bbeb03bc252961cbe011b16bcf193ed3bef9effeeaac870405141819d1cb2dc2cb3cab20fc97dcb33639fdd
AUX wayfire-0.8.0-fix-duplicate-manpage.patch 755 BLAKE2B c4e3fec4c5861eadd58480d098f92ae5d24b798d29e2e5898eda80132df53705e440516b6af67de4eadd7d788c106b72693e315467f3397be12ab6d03da5082c SHA512 77930c892938d3f27e12e9a2f1ac31f9552c91869e011b933d2bb1f6b986abda75f71d1bb008f71665d3edf9a2fb0e650ad1fc397f4dc0c9bcb77f94d7f8ea24
AUX wayfire-session 540 BLAKE2B 02970ebece43c8643ab68f0108d2166f7946d54cea7c6143c9badf0e9852bed4af14bb0c4dd3101a179958b06904889204915e965c46f64073fb8f05800553e3 SHA512 616bbf244a358fb7fbeb1230a3ba862a7ca373fdf3b181819a05ca63da82c78fcd80d0f7167d50488c38820559f007702d2c86ac861f214775c3a6271351bb1d
AUX wayfire-session.desktop 204 BLAKE2B a8e01f911881c651ec67b5945b91dca6151866599c0a7d0ef5b17c2b88ff6178c6f6d42506f1d6f6cbce8f9231388fa63e2a870116a45c677bd9faee94eabfac SHA512 0c7fd2f04c5b2c413bda02f2c43090dc8c64503d372e8eb19df8a4d7190f6ba703db672753bfa0629a2f627b505886c33f874a933cc6cf7f876caf60a4e70039
DIST wayfire-0.8.0.tar.xz 828576 BLAKE2B 4d80a0d43061a4564d45f7c077fd97737b426c4036c12f004815dbad120f51b38b2fac9a010e2df27a6a96205cd0dcceb81864bdccbd6e337d81f6c37926e019 SHA512 fab55f6112c462312edf43d41b29f476d493449eca8f0c5cfee8f3aae73dcb98be46c589fc23d10d961f738bdf6d1fe78286b4c96e1d4444fdc8b1b898d998a9
DIST wayfire-0.8.1.tar.xz 856364 BLAKE2B 1b596b28878789ca26eeb57c6c24e0b69508731de2144e1477f8071b41f17757b2125f2f4f99670ca8b7f85172a9f641b9be1f9190eeff5b261bcc2df1bec4ab SHA512 7bce5656b6a7a7fe53b37492465dee3e591eb386666fdd3d6876f4a589f059510fb2d0c0a326df260ca6a293edf4ba43bb55f813e85d4d2d38d6ef1319280254
EBUILD wayfire-0.8.0-r1.ebuild 3710 BLAKE2B 5f64dbdb42209d9b05a0eaa30f47fdbf0d3622e242cf5eb31598efdc615201a53c733d4ba0a4d5710d0131e91bcc3bd242e524493d37652e0a8110ba3c8bc1d7 SHA512 968704fbb1d2145064e98da1f0aad422eac38ecd2aac4009663a97efe5f11f9d1420e2a251815255b47afcd326646119a94769e0f4b569fb4c83326e08f1e56c
-EBUILD wayfire-0.8.1.ebuild 2394 BLAKE2B 240d0dfb82d8558a24788a01ed3d160817e8daf677872ad43617d084b17164db2ed51bd8b69dae28e3151b6891123419b7c1b6cf652d8d28276e4ec68a11b6dd SHA512 c378a7447877a77054feb423b7cf70b580ded1367656811734bd54ebd3a082f69f54b5ae2e7bd9c04e92baf44bc02b9a1cf10a9732676ada950aaed2eec0b6f5
-EBUILD wayfire-9999.ebuild 2394 BLAKE2B a505a34384530f77a28d64dcd595a8ebd648e1b3040fb0ab6dbee24ce2190dea40cabeb23f14955ecdad63ca16f699e0b17cde36e1422a5d5713173aef8c7b79 SHA512 4ccdc73fd11af122c7c91065309d3ebe7cdd5ca7b852a7d5bd679604d649ad87ed78eb94354664c05ad9e6600567a25c0821467e49c889bede747ac5ab1018d7
-MISC metadata.xml 920 BLAKE2B 0b0ad723f8383bc65a87cbab8b7195d33a3dabd9ea73c8c2f91957151b9f324e63ea4b25c480d44eba391f595ffe3a9d0c39800eaa9bf4b81b47cb8e3262222f SHA512 c0eb23bcfc87b274bcb2c96b0e52cb91fb6dd3ffb51ef4285f34af3a9861122c0d30179c5989070de85ebcd0dff282906bb4c15c4983bfdce123c5c3b101561e
+EBUILD wayfire-0.8.0-r2.ebuild 3776 BLAKE2B b848744075d055977581665f1b4cccaf5608e0ad0516730c11970a56bde7394b28201f43850a154ea3094e7333e8903576bbb3d32f9415835232aa9617f3b970 SHA512 2ece76e1779c0259a14be3599961cbd7ddd2cb7c2481a1e60009074669b4f1e265a93886999223d8894c96f115ee0b6fe642204323babb53bf2b534bfc5aea27
+EBUILD wayfire-0.8.1-r1.ebuild 2472 BLAKE2B c4b651715b7c69d083572193a22bf551df54012493b31e35111ece9d2890cf244bb780996e5cfcd56c9096ee6747d68b65f91daa701634838928a39514603399 SHA512 37d6eb7e6e80d1f2698a97d32be2bdbee6bd5c210c2c901d21a2386fd72cb3d61d3819ca278b0f80f8d411034930d489a4fb0fc3292fe3b3bae64b8d8b136112
+EBUILD wayfire-9999.ebuild 2396 BLAKE2B 2b03a83746372fc3bb0c67809831136890b5b493f6240db4624b0a9a8ba8f0a02cd5b1cd1b5c92b90286ab61d6ee9cb19ffeeb32616c868d9cbaa1e01c92214e SHA512 aaf374d7a6b4688e010763e760fc5718570f629194553aa259f69a00ec203a7087e589a658f8ee28b85896fa528ed9a4bb9ab93ba9af2158a5e8fda62975f84d
+MISC metadata.xml 1165 BLAKE2B 1c0dbff3530ca68ac4999298a136ccbb12c7901aa089a74360b9576cb68ba7d0f9a7491f959b23c3e6b3fcc9b64455482863dbb1a9586c5debb23e7b2a34cd3c SHA512 b422127c711314f118afe73f6697b0a566458c1f36bf5dd92cecdc7be82c9bd4406188ff0a02be30317abd7a835bff3b4e5d2614598233aa2e79a200276af42c
diff --git a/gui-wm/wayfire/files/wayfire-0.8.0-dont-use-installed-config-h.patch b/gui-wm/wayfire/files/wayfire-0.8.0-dont-use-installed-config-h.patch
new file mode 100644
index 000000000000..3938cd955ce2
--- /dev/null
+++ b/gui-wm/wayfire/files/wayfire-0.8.0-dont-use-installed-config-h.patch
@@ -0,0 +1,65 @@
+https://github.com/WayfireWM/wayfire/pull/2225
+
+From f7bcad19598cbff1324f7737022ffee8848b3555 Mon Sep 17 00:00:00 2001
+From: Alfred Wingate <parona@protonmail.com>
+Date: Mon, 18 Mar 2024 16:32:06 +0200
+Subject: [PATCH] Copy config.h approach from wlroots-full.hpp to other public
+ api headers (#2225)
+
+* Otherwise wayfire could use the config.h of an already installed
+ wayfire installation and lead to confusing linking issues if the
+ options differed (like installed wayfire has xwayland disabled and the
+ new build has it enabled).
+
+Signed-off-by: Alfred Wingate <parona@protonmail.com>
+--- a/src/api/wayfire/debug.hpp
++++ b/src/api/wayfire/debug.hpp
+@@ -1,8 +1,12 @@
+ #ifndef DEBUG_HPP
+ #define DEBUG_HPP
+
+-#ifndef WAYFIRE_PLUGIN
+- #include "config.h"
++// WF_USE_CONFIG_H is set only when building Wayfire itself, external plugins
++// need to use <wayfire/config.h>
++#ifdef WF_USE_CONFIG_H
++ #include <config.h>
++#else
++ #include <wayfire/config.h>
+ #endif
+
+ #define nonull(x) ((x) ? (x) : ("nil"))
+--- a/src/api/wayfire/unstable/wlr-view-events.hpp
++++ b/src/api/wayfire/unstable/wlr-view-events.hpp
+@@ -1,9 +1,11 @@
+ #pragma once
+
+-#if __has_include(<wayfire/config.h>)
+- #include <wayfire/config.h>
++// WF_USE_CONFIG_H is set only when building Wayfire itself, external plugins
++// need to use <wayfire/config.h>
++#ifdef WF_USE_CONFIG_H
++ #include <config.h>
+ #else
+- #include "config.h"
++ #include <wayfire/config.h>
+ #endif
+
+ #include <wayfire/nonstd/wlroots-full.hpp>
+--- a/src/api/wayfire/unstable/xwl-toplevel-base.hpp
++++ b/src/api/wayfire/unstable/xwl-toplevel-base.hpp
+@@ -1,9 +1,11 @@
+ #pragma once
+
+-#if __has_include(<wayfire/config.h>)
+- #include <wayfire/config.h>
++// WF_USE_CONFIG_H is set only when building Wayfire itself, external plugins
++// need to use <wayfire/config.h>
++#ifdef WF_USE_CONFIG_H
++ #include <config.h>
+ #else
+- #include "config.h"
++ #include <wayfire/config.h>
+ #endif
+
+ #include <wayfire/nonstd/wlroots-full.hpp>
diff --git a/gui-wm/wayfire/metadata.xml b/gui-wm/wayfire/metadata.xml
index b7ebd8524caf..fb1df8affac5 100644
--- a/gui-wm/wayfire/metadata.xml
+++ b/gui-wm/wayfire/metadata.xml
@@ -9,8 +9,10 @@
</longdescription>
<use>
<flag name="gles">use libglvnd to do animations more efficiently</flag>
- <flag name="system-wfconfig">use the system-wide wf-config, else build it as a submodule. DO NOT DISABLE UNLESS YOU KNOW WHAT YOU ARE DOING.</flag>
- <flag name="system-wlroots">use the system wide wlroots, else build it as a submodule. DO NOT DISABLE UNLESS YOU KNOW WHAT YOU ARE DOING.</flag>
+ <flag name="gles3">Enable OpenGL ES 3.x Features.</flag>
+ <flag name="system-wfconfig">Use the system-wide <pkg>gui-libs/wf-config</pkg> instead of building as a submodule. It will block system-wide <pkg>gui-libs/wf-config</pkg> from being installed.</flag>
+ <flag name="system-wlroots">Use the system-wide <pkg>gui-libs/wlroots</pkg> instead of building as a submodule. It will block system-wide <pkg>gui-libs/wlroots</pkg> from being installed.</flag>
+ <flag name="X">Enable support for X11 applications (XWayland).</flag>
</use>
<upstream>
<remote-id type="github">WayfireWM/wayfire</remote-id>
diff --git a/gui-wm/wayfire/wayfire-0.8.0-r2.ebuild b/gui-wm/wayfire/wayfire-0.8.0-r2.ebuild
new file mode 100644
index 000000000000..d2c8b090436a
--- /dev/null
+++ b/gui-wm/wayfire/wayfire-0.8.0-r2.ebuild
@@ -0,0 +1,158 @@
+# Copyright 2019-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+DESCRIPTION="compiz like 3D wayland compositor"
+HOMEPAGE="https://github.com/WayfireWM/wayfire"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/WayfireWM/${PN}.git"
+ SLOT="0/9999"
+else
+ SRC_URI="https://github.com/WayfireWM/${PN}/releases/download/v${PV}/${P}.tar.xz"
+ KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+ SLOT="0/$(ver_cut 1-2)"
+fi
+
+LICENSE="MIT"
+IUSE="+gles3 +system-wfconfig +system-wlroots test X"
+RESTRICT="!test? ( test )"
+
+# bundled wlroots has the following dependency string according to included headers.
+# wlroots[drm,gles2-renderer,libinput,x11-backend?,X?]
+# enable x11-backend with X and vice versa
+WLROOTS_CDEPEND="
+ >=dev-libs/libinput-1.14.0:=
+ >=dev-libs/wayland-1.21
+ media-libs/libglvnd
+ media-libs/mesa[egl(+),gles2]
+ sys-apps/hwdata:=
+ sys-auth/seatd:=
+ >=x11-libs/libdrm-2.4.114:=
+ x11-libs/libxkbcommon
+ >=x11-libs/pixman-0.42.0
+ virtual/libudev
+ X? (
+ x11-base/xwayland
+ x11-libs/libxcb:0=
+ x11-libs/xcb-util-image
+ x11-libs/xcb-util-renderutil
+ x11-libs/xcb-util-wm
+ )
+"
+WLROOTS_DEPEND="
+ >=dev-libs/wayland-protocols-1.28
+"
+WLROOTS_BDEPEND="
+ dev-util/glslang
+ dev-util/wayland-scanner
+"
+
+CDEPEND="
+ dev-cpp/nlohmann_json
+ dev-libs/libevdev
+ >=dev-libs/libinput-1.7.0
+ dev-libs/wayland
+ >=dev-libs/wayland-protocols-1.12
+ media-libs/glm
+ media-libs/libglvnd
+ media-libs/libjpeg-turbo:=
+ media-libs/libpng:=
+ x11-libs/cairo
+ x11-libs/libdrm:=
+ x11-libs/libxkbcommon
+ x11-libs/pango
+ x11-libs/pixman
+ system-wfconfig? ( gui-libs/wf-config:${SLOT} )
+ !system-wfconfig? ( dev-libs/libxml2 )
+ !system-wlroots? ( ${WLROOTS_CDEPEND} )
+"
+
+if [[ ${PV} == 9999 ]] ; then
+ CDEPEND+="
+ system-wlroots? ( gui-libs/wlroots:0/9999[drm(+),libinput(+),x11-backend,X?] )
+ "
+else
+ CDEPEND+="
+ system-wlroots? ( gui-libs/wlroots:0/16[drm(+),libinput(+),x11-backend,X?] )
+ "
+fi
+
+RDEPEND="
+ ${CDEPEND}
+ x11-misc/xkeyboard-config
+ !system-wfconfig? ( !gui-libs/wf-config )
+ !system-wlroots? ( !gui-libs/wlroots )
+"
+DEPEND="
+ ${CDEPEND}
+ !system-wlroots? ( ${WLROOTS_DEPEND} )
+ test? ( dev-cpp/doctest )
+"
+BDEPEND="
+ dev-util/wayland-scanner
+ virtual/pkgconfig
+ !system-wlroots? ( ${WLROOTS_BDEPEND} )
+"
+
+PATCHES=(
+ "${FILESDIR}/wayfire-0.8.0-fix-duplicate-manpage.patch"
+ "${FILESDIR}/wayfire-0.8.0-dont-use-installed-config-h.patch"
+)
+
+src_prepare() {
+ default
+
+ sed -e "s:@EPREFIX@:${EPREFIX}:" \
+ "${FILESDIR}"/wayfire-session > "${T}"/wayfire-session || die
+ sed -e "s:@EPREFIX@:${EPREFIX}:" \
+ "${FILESDIR}"/wayfire-session.desktop > "${T}"/wayfire-session.desktop || die
+
+ if [[ "${PV}" != 9999 ]]; then
+ # Don't run git if git is installed and its not a git dir
+ sed -i \
+ -e "/git = find_program/ifs = import\('fs'\)" \
+ -e "s/if git.found()/if git.found() and fs.is_dir('.git')/" \
+ meson.build || die
+ fi
+
+}
+
+src_configure() {
+ local emesonargs=(
+ $(meson_feature system-wfconfig use_system_wfconfig)
+ $(meson_feature system-wlroots use_system_wlroots)
+ $(meson_feature test tests)
+ $(meson_feature X xwayland)
+ $(meson_use gles3 enable_gles32)
+ )
+
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ dobin "${T}"/wayfire-session
+
+ insinto "/usr/share/wayland-sessions/"
+ insopts -m644
+ doins wayfire.desktop
+ doins "${T}"/wayfire-session.desktop
+
+ insinto "/usr/share/wayfire/"
+ doins wayfire.ini
+}
+
+pkg_postinst() {
+ if [ -z "${REPLACING_VERSIONS}" ]; then
+ elog "Wayfire has been installed but the session cannot be used"
+ elog "until you install a configuration file. The default config"
+ elog "file is installed at \"/usr/share/wayfire/wayfire.ini\""
+ elog "To install the file execute"
+ elog "\$ cp /usr/share/wayfire/wayfire.ini ~/.config/wayfire.ini"
+ fi
+}
diff --git a/gui-wm/wayfire/wayfire-0.8.1.ebuild b/gui-wm/wayfire/wayfire-0.8.1-r1.ebuild
index a5e655f6d398..82d800484181 100644
--- a/gui-wm/wayfire/wayfire-0.8.1.ebuild
+++ b/gui-wm/wayfire/wayfire-0.8.1-r1.ebuild
@@ -19,7 +19,7 @@ else
fi
LICENSE="MIT"
-IUSE="+gles test X"
+IUSE="+gles3 test X"
RESTRICT="!test? ( test )"
# bundled wlroots has the following dependency string according to included headers.
@@ -60,6 +60,10 @@ BDEPEND="
virtual/pkgconfig
"
+PATCHES=(
+ "${FILESDIR}/wayfire-0.8.0-dont-use-installed-config-h.patch"
+)
+
src_prepare() {
default
@@ -73,7 +77,7 @@ src_configure() {
local emesonargs=(
$(meson_feature test tests)
$(meson_feature X xwayland)
- $(meson_use gles enable_gles32)
+ $(meson_use gles3 enable_gles32)
-Duse_system_wfconfig=enabled
-Duse_system_wlroots=enabled
)
diff --git a/gui-wm/wayfire/wayfire-9999.ebuild b/gui-wm/wayfire/wayfire-9999.ebuild
index 0666f1cd607d..6a2f5696709d 100644
--- a/gui-wm/wayfire/wayfire-9999.ebuild
+++ b/gui-wm/wayfire/wayfire-9999.ebuild
@@ -19,7 +19,7 @@ else
fi
LICENSE="MIT"
-IUSE="+gles test X"
+IUSE="+gles3 test X"
RESTRICT="!test? ( test )"
# bundled wlroots has the following dependency string according to included headers.
@@ -73,7 +73,7 @@ src_configure() {
local emesonargs=(
$(meson_feature test tests)
$(meson_feature X xwayland)
- $(meson_use gles enable_gles32)
+ $(meson_use gles3 enable_gles32)
-Duse_system_wfconfig=enabled
-Duse_system_wlroots=enabled
)