summaryrefslogtreecommitdiff
path: root/gui-wm
diff options
context:
space:
mode:
authorAlfred Wingate <parona@protonmail.com>2023-08-01 21:03:07 +0300
committerSam James <sam@gentoo.org>2023-08-07 03:53:43 +0100
commit0341dc62576853a537af25547ac6a93acf842913 (patch)
tree61ddcbd7fd3d08354281a359c1ec8664ae23493f /gui-wm
parentgui-wm/hyprland: drop 0.26.0 (diff)
downloadgentoo-0341dc62576853a537af25547ac6a93acf842913.tar.gz
gentoo-0341dc62576853a537af25547ac6a93acf842913.tar.bz2
gentoo-0341dc62576853a537af25547ac6a93acf842913.zip
gui-wm/wayfire: require missing use flags
* drm and libinput were made optional in wlroots-0.15, they are required by wayfire unconditionally though. * Require x11-backend in wlroots to avoid automagic in wayfire. https://gitlab.freedesktop.org/wlroots/wlroots/-/commit/b37731cdbbef4dc52033c2d26b04d2329720fa07 https://github.com/WayfireWM/wayfire/blob/v0.7.5/meson.build#L133 Closes: https://bugs.gentoo.org/907638 Signed-off-by: Alfred Wingate <parona@protonmail.com> Closes: https://github.com/gentoo/gentoo/pull/32131 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'gui-wm')
-rw-r--r--gui-wm/wayfire/wayfire-0.7.5-r1.ebuild121
-rw-r--r--gui-wm/wayfire/wayfire-9999.ebuild4
2 files changed, 123 insertions, 2 deletions
diff --git a/gui-wm/wayfire/wayfire-0.7.5-r1.ebuild b/gui-wm/wayfire/wayfire-0.7.5-r1.ebuild
new file mode 100644
index 000000000000..7f3bce722041
--- /dev/null
+++ b/gui-wm/wayfire/wayfire-0.7.5-r1.ebuild
@@ -0,0 +1,121 @@
+# Copyright 2019-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson toolchain-funcs
+
+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"
+else
+ SRC_URI="https://github.com/WayfireWM/${PN}/releases/download/v${PV}/${P}.tar.xz"
+ KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="debug +gles +system-wfconfig +system-wlroots X"
+
+DEPEND="
+ dev-libs/libinput:=
+ dev-libs/wayland
+ gui-libs/gtk-layer-shell
+ media-libs/glm
+ media-libs/mesa:=[gles2,wayland,X?]
+ media-libs/libglvnd[X?]
+ media-libs/libjpeg-turbo:=
+ media-libs/libpng:=
+ media-libs/freetype:=[X?]
+ x11-libs/libdrm
+ x11-libs/gtk+:3=[wayland,X?]
+ x11-libs/cairo[X?,svg(+)]
+ x11-libs/libxkbcommon[X?]
+ x11-libs/pango
+ x11-libs/pixman
+ X? (
+ x11-base/xwayland
+ x11-libs/libxcb
+ )
+"
+
+if [[ ${PV} == 9999 ]] ; then
+ DEPEND+="
+ system-wfconfig? ( ~gui-libs/wf-config-9999:= )
+ !system-wfconfig? ( !gui-libs/wf-config )
+ system-wlroots? ( ~gui-libs/wlroots-9999:=[drm(+),libinput(+),x11-backend,X?] )
+ !system-wlroots? ( !gui-libs/wlroots )
+ "
+else
+ DEPEND+="
+ system-wfconfig? (
+ >=gui-libs/wf-config-0.7.1
+ <gui-libs/wf-config-0.8.0
+ )
+ !system-wfconfig? ( !gui-libs/wf-config )
+ system-wlroots? (
+ >=gui-libs/wlroots-0.16.0:0/16[drm(+),libinput(+),x11-backend,X?]
+ )
+ !system-wlroots? ( !gui-libs/wlroots )
+ "
+fi
+
+RDEPEND="
+ ${DEPEND}
+ x11-misc/xkeyboard-config
+"
+
+BDEPEND="
+ dev-libs/wayland-protocols
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.7.5-gcc13.patch
+)
+
+src_configure() {
+ 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
+ local emesonargs=(
+ $(meson_feature system-wfconfig use_system_wfconfig)
+ $(meson_feature system-wlroots use_system_wlroots)
+ $(meson_feature X xwayland)
+ $(meson_use gles enable_gles32)
+ $(usex debug --buildtype=debug "")
+ $(usex debug -Db_sanitize=address,undefined "")
+ )
+
+ # Clang will fail to link without this
+ tc-is-clang && emesonargs+=( $(usex debug -Db_lundef=false "") )
+
+ 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-9999.ebuild b/gui-wm/wayfire/wayfire-9999.ebuild
index 42ab1b20d21d..9ff84a6351ce 100644
--- a/gui-wm/wayfire/wayfire-9999.ebuild
+++ b/gui-wm/wayfire/wayfire-9999.ebuild
@@ -46,7 +46,7 @@ if [[ ${PV} == 9999 ]] ; then
DEPEND+="
system-wfconfig? ( ~gui-libs/wf-config-9999:= )
!system-wfconfig? ( !gui-libs/wf-config )
- system-wlroots? ( ~gui-libs/wlroots-9999:=[X?] )
+ system-wlroots? ( ~gui-libs/wlroots-9999:=[drm(+),libinput(+),x11-backend,X?] )
!system-wlroots? ( !gui-libs/wlroots )
"
else
@@ -57,7 +57,7 @@ else
)
!system-wfconfig? ( !gui-libs/wf-config )
system-wlroots? (
- >=gui-libs/wlroots-0.16.0:0/16[X?]
+ >=gui-libs/wlroots-0.16.0:0/16[drm(+),libinput(+),x11-backend,X?]
)
!system-wlroots? ( !gui-libs/wlroots )
"