commit: b80e6a855ec9c0d2b96782ad8b72555295f85340 Author: Alfred Wingate <parona <AT> protonmail <DOT> com> AuthorDate: Thu Jan 25 16:06:09 2024 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Tue Jan 30 11:32:39 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b80e6a85
gui-wm/wayfire: fix duplicate manpage Closes: https://bugs.gentoo.org/922898 Signed-off-by: Alfred Wingate <parona <AT> protonmail.com> Closes: https://github.com/gentoo/gentoo/pull/35009 Signed-off-by: Sam James <sam <AT> gentoo.org> .../wayfire-0.8.0-fix-duplicate-manpage.patch | 21 +++ gui-wm/wayfire/wayfire-0.8.0-r1.ebuild | 162 +++++++++++++++++++++ 2 files changed, 183 insertions(+) diff --git a/gui-wm/wayfire/files/wayfire-0.8.0-fix-duplicate-manpage.patch b/gui-wm/wayfire/files/wayfire-0.8.0-fix-duplicate-manpage.patch new file mode 100644 index 000000000000..393de41d0ccb --- /dev/null +++ b/gui-wm/wayfire/files/wayfire-0.8.0-fix-duplicate-manpage.patch @@ -0,0 +1,21 @@ +https://bugs.gentoo.org/922898 +https://github.com/WayfireWM/wayfire/issues/1942 +https://github.com/WayfireWM/wayfire/pull/1943 +https://github.com/WayfireWM/wayfire/commit/564b75a45d7c844b61b510e68fa527109fce4a75 + +From 564b75a45d7c844b61b510e68fa527109fce4a75 Mon Sep 17 00:00:00 2001 +From: alice <al...@ayaya.dev> +Date: Sat, 7 Oct 2023 22:51:35 +0200 +Subject: [PATCH] meson: fix duplicate installation of manpage (#1943) + +closes #1942 +--- a/man/meson.build ++++ b/man/meson.build +@@ -1,7 +1,5 @@ + configure_file(input: 'wayfire.1.in', + output: 'wayfire.1', +- install: true, +- install_dir: 'man', + configuration: conf_data) + + install_man(join_paths(meson.project_build_root(), 'man', 'wayfire.1')) diff --git a/gui-wm/wayfire/wayfire-0.8.0-r1.ebuild b/gui-wm/wayfire/wayfire-0.8.0-r1.ebuild new file mode 100644 index 000000000000..1fb2416c2bd8 --- /dev/null +++ b/gui-wm/wayfire/wayfire-0.8.0-r1.ebuild @@ -0,0 +1,162 @@ +# Copyright 2019-2024 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" + 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="debug +gles +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" +) + +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 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 +}