diff options
author | Alfred Wingate <parona@protonmail.com> | 2023-08-01 21:03:07 +0300 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2023-08-07 03:53:43 +0100 |
commit | 0341dc62576853a537af25547ac6a93acf842913 (patch) | |
tree | 61ddcbd7fd3d08354281a359c1ec8664ae23493f /gui-wm/wayfire | |
parent | gui-wm/hyprland: drop 0.26.0 (diff) | |
download | gentoo-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/wayfire')
-rw-r--r-- | gui-wm/wayfire/wayfire-0.7.5-r1.ebuild | 121 | ||||
-rw-r--r-- | gui-wm/wayfire/wayfire-9999.ebuild | 4 |
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 ) " |