From 6cefebc8e850c862f7623af22feef1b895a79884 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Tue, 8 Aug 2023 03:26:28 +0100 Subject: gentoo auto-resync : 08:08:2023 - 03:26:28 --- gui-wm/hyprland/Manifest | 4 +- .../hyprland-0.28.0-no-wlroots-automagic-r1.patch | 20 ++++ .../hyprland-0.28.0-no-wlroots-automagic.patch | 14 --- gui-wm/hyprland/hyprland-0.28.0-r1.ebuild | 123 +++++++++++++++++++++ gui-wm/hyprland/hyprland-0.28.0.ebuild | 123 --------------------- 5 files changed, 145 insertions(+), 139 deletions(-) create mode 100644 gui-wm/hyprland/files/hyprland-0.28.0-no-wlroots-automagic-r1.patch delete mode 100644 gui-wm/hyprland/files/hyprland-0.28.0-no-wlroots-automagic.patch create mode 100644 gui-wm/hyprland/hyprland-0.28.0-r1.ebuild delete mode 100644 gui-wm/hyprland/hyprland-0.28.0.ebuild (limited to 'gui-wm/hyprland') diff --git a/gui-wm/hyprland/Manifest b/gui-wm/hyprland/Manifest index a45ad6586486..6a3eb84f2c07 100644 --- a/gui-wm/hyprland/Manifest +++ b/gui-wm/hyprland/Manifest @@ -1,6 +1,6 @@ -AUX hyprland-0.28.0-no-wlroots-automagic.patch 600 BLAKE2B 55b30dd059d7c46f3dc84638cf0a6dd91dd4b694758158bcbe6c9ed041dc4f4338a1c6b1aa1b9a57a752610a8a8ea89cc9c1580c357e70722787dd73effe4f97 SHA512 b4f865cd1dc755e3ff92e50e390c51149a6e5357acca07f31db54a38b0e2c4e8092d5ca41e21c027483b431ce60845e9f4957665571fb0c850070ecbfa02ee16 +AUX hyprland-0.28.0-no-wlroots-automagic-r1.patch 880 BLAKE2B eecb42897483a41040442e2dc8a14a3ca22276a8625a15f2b43a180db5f2cdd509e186dc30271d2c2c679844082ccbb6af4d73b7a2b08eb890f1e87dcfc0f323 SHA512 5f629a3e755bf513e17f6b814001677e9c6ea0ec249030ca652dd3661180fa7ed3b85340b62c5ee7f08df29c0d0678d185c3949d1df1bbc950128028163e7a88 DIST hyprland-0.27.2.gh.tar.gz 4992717 BLAKE2B 6725ee593edb4f7d127eb95ed567bc7344edc066a9ce818ba99bd15eb718ce1d8de86a63da5684521ccbe3ba918a3f385c3a3e662314704e60e855101d391d05 SHA512 92e8ca21eba52ff423654cd345d37125656c32e1262e4e76d8841ee4ba698788d46d70a5876fc9aca42440efa5dd4122f46c84365da53810284a666f5d13ce7e DIST hyprland-0.28.0.gh.tar.gz 14060441 BLAKE2B 25059b74b67df222867e84f5f1d44219302e7e454ec68110b70d6e915e95913bfdc8c6112bc8725e9be61f10a44603a96ba70980a9835d4b7757363825b93326 SHA512 c0802f2b061d5c9265c7767fae6ddaf00c1bbf6dc620f75593ba1538f94105a9ebe1517b7be444a1e70b81fd3a4205afd8154ba9ad02b3d610b00a9440ee6a63 EBUILD hyprland-0.27.2-r1.ebuild 2485 BLAKE2B ac074f5264a3a038d22b36ea17d8afd5d42d70bf8a10c49fa4dd7a5ce94bc7fa609166cf508d23f1071c27250306b4caf0928e59fe503730fb8ae295490b0433 SHA512 3288207b62c8c2659391830863a11aeadfdb86a7714761e329f7ef9bda1996ef7c843c5959afacee55b70130d6be725537f23c5f93f55b78b8012391925198a8 -EBUILD hyprland-0.28.0.ebuild 2791 BLAKE2B 04006eb47081b074179a5f9a28ab29b328590f007df8f9dea7c1f6b8340ae41853c8d4d177b2feaf771c2f65d6276d523cd19c494789c937d9993496bf0cb9d7 SHA512 d6cddfc31e209e7bdf802411ccdbbb1041cbddad28c241ebb56024584d34db595f67704b26a4a9a5089a63bcbb25de95e8388690ef6a9a8f286578963d466675 +EBUILD hyprland-0.28.0-r1.ebuild 2800 BLAKE2B 12bea435a4863101d32bdbde0bd588a0c295b6ef7b92d5511dcccc37a42ef264945f37db43861f9b53de813703eae128f0d50d7ac48aa30d4183770a32db7382 SHA512 e382b0819c2d4484d421ce69c682305b2176b1c2125dce57b6431335018b8521006c86b6d89ae9d16294cad8942222dcb5788596418f21ee6aa941ca4899f201 MISC metadata.xml 716 BLAKE2B fc5248c809b9b5bf1002e3d82ff80f595b8e613d09e5541f1a0151c3ea2c117376d25fa5a40c85d254533708d9eff5339bd329b42118e87ca49e22e55c0c5d7b SHA512 31252ced2546f3686f17259aabfe9273af14f7efaf3fa0bfb446c65c6d9478be3a23c531e0ac463f27fe1d50842f6f126f32e47a8a03a345306297e182952e98 diff --git a/gui-wm/hyprland/files/hyprland-0.28.0-no-wlroots-automagic-r1.patch b/gui-wm/hyprland/files/hyprland-0.28.0-no-wlroots-automagic-r1.patch new file mode 100644 index 000000000000..ca37e4e7c16d --- /dev/null +++ b/gui-wm/hyprland/files/hyprland-0.28.0-no-wlroots-automagic-r1.patch @@ -0,0 +1,20 @@ +# Disable automagic, otherwise wlroots will enable features if dependencies are present. +# Enable x11-backend only if xwayland is enabled. +diff --git a/meson.build b/meson.build +index 6a94dee6..08993f8a 100644 +--- a/meson.build ++++ b/meson.build +@@ -39,7 +39,12 @@ add_project_arguments( + ], + language: 'cpp') + +-wlroots = subproject('wlroots', default_options: ['examples=false']) ++if get_option('xwayland').enabled() ++ wlroots = subproject('wlroots', default_options: ['backends=drm,libinput,x11','examples=false','renderers=gles2','xcb-errors=disabled','xwayland=enabled']) ++else ++ wlroots = subproject('wlroots', default_options: ['backends=drm,libinput','examples=false','renderers=gles2','xcb-errors=disabled','xwayland=disabled']) ++endif ++ + have_xwlr = wlroots.get_variable('features').get('xwayland') + xcb_dep = dependency('xcb', required: get_option('xwayland')) + diff --git a/gui-wm/hyprland/files/hyprland-0.28.0-no-wlroots-automagic.patch b/gui-wm/hyprland/files/hyprland-0.28.0-no-wlroots-automagic.patch deleted file mode 100644 index 96b12fe497eb..000000000000 --- a/gui-wm/hyprland/files/hyprland-0.28.0-no-wlroots-automagic.patch +++ /dev/null @@ -1,14 +0,0 @@ -# Disable automagic, otherwise wlroots will enable features if dependencies are present. -diff --git a/meson.build b/meson.build -index 6a94dee6..9608717d 100644 ---- a/meson.build -+++ b/meson.build -@@ -39,7 +39,7 @@ add_project_arguments( - ], - language: 'cpp') - --wlroots = subproject('wlroots', default_options: ['examples=false']) -+wlroots = subproject('wlroots', default_options: ['backends=drm,libinput,x11','examples=false','renderers=gles2','xcb-errors=disabled']) - have_xwlr = wlroots.get_variable('features').get('xwayland') - xcb_dep = dependency('xcb', required: get_option('xwayland')) - diff --git a/gui-wm/hyprland/hyprland-0.28.0-r1.ebuild b/gui-wm/hyprland/hyprland-0.28.0-r1.ebuild new file mode 100644 index 000000000000..1da193f4e218 --- /dev/null +++ b/gui-wm/hyprland/hyprland-0.28.0-r1.ebuild @@ -0,0 +1,123 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit meson toolchain-funcs + +DESCRIPTION="A dynamic tiling Wayland compositor that doesn't sacrifice on its looks" +HOMEPAGE="https://github.com/hyprwm/Hyprland" + +SRC_URI="https://github.com/hyprwm/${PN^}/releases/download/v${PV}/source-v${PV}.tar.gz -> ${P}.gh.tar.gz" +S="${WORKDIR}/${PN}-source" + +KEYWORDS="~amd64" +LICENSE="BSD" +SLOT="0" +IUSE="X legacy-renderer systemd video_cards_nvidia" + +# 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_RDEPEND=" + >=dev-libs/libinput-1.14.0:= + dev-libs/libliftoff + >=dev-libs/wayland-1.22 + media-libs/libdisplay-info + 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-renderutil + x11-libs/xcb-util-wm + ) +" +WLROOTS_DEPEND=" + >=dev-libs/wayland-protocols-1.32 +" +WLROOTS_BDEPEND=" + dev-util/glslang + dev-util/wayland-scanner +" + +RDEPEND=" + ${WLROOTS_RDEPEND} + dev-libs/glib:2 + dev-libs/libinput + dev-libs/wayland + media-libs/libglvnd + x11-libs/cairo + x11-libs/libdrm + x11-libs/libxkbcommon + x11-libs/pango + x11-libs/pixman + X? ( + x11-libs/libxcb:0= + ) +" +DEPEND=" + ${RDEPEND} + ${WLROOTS_DEPEND} + dev-libs/hyprland-protocols + >=dev-libs/wayland-protocols-1.25 +" +BDEPEND=" + ${WLROOTS_BDEPEND} + app-misc/jq + dev-util/cmake + dev-util/wayland-scanner + dev-vcs/git + virtual/pkgconfig +" + +pkg_setup() { + [[ ${MERGE_TYPE} == binary ]] && return + + if tc-is-gcc; then + STDLIBVER=$(echo '#include ' | $(tc-getCXX) -x c++ -dM -E - | \ + grep GLIBCXX_RELEASE | sed 's/.*\([1-9][0-9]\)/\1/') + + if ! [[ ${STDLIBVER} -ge 12 ]]; then + die "Hyprland requires >=sys-devel/gcc-12.1.0 to build" + fi + elif [[ $(clang-major-version) -lt 16 ]]; then + die "Hyprland requires >=sys-devel/clang-16.0.3 to build"; + fi +} + +src_prepare() { + if use video_cards_nvidia; then + cd "${S}/subprojects/wlroots" || die + eapply "${S}/nix/patches/wlroots-nvidia.patch" + # https://bugs.gentoo.org/911597 + # https://github.com/hyprwm/Hyprland/pull/2874 + # https://github.com/hyprwm/Hyprland/blob/main/nix/wlroots.nix#L54 + sed -i -e 's/glFlush();/glFinish();/' render/gles2/renderer.c || die + cd "${S}" || die + fi + + eapply "${FILESDIR}/hyprland-0.28.0-no-wlroots-automagic-r1.patch" + + default +} + +src_configure() { + local emesonargs=( + $(meson_feature legacy-renderer legacy_renderer) + $(meson_feature X xwayland) + $(meson_feature systemd) + ) + + meson_src_configure +} + +src_install() { + meson_src_install --skip-subprojects wlroots +} diff --git a/gui-wm/hyprland/hyprland-0.28.0.ebuild b/gui-wm/hyprland/hyprland-0.28.0.ebuild deleted file mode 100644 index 5023065717c7..000000000000 --- a/gui-wm/hyprland/hyprland-0.28.0.ebuild +++ /dev/null @@ -1,123 +0,0 @@ -# Copyright 2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit meson toolchain-funcs - -DESCRIPTION="A dynamic tiling Wayland compositor that doesn't sacrifice on its looks" -HOMEPAGE="https://github.com/hyprwm/Hyprland" - -SRC_URI="https://github.com/hyprwm/${PN^}/releases/download/v${PV}/source-v${PV}.tar.gz -> ${P}.gh.tar.gz" -S="${WORKDIR}/${PN}-source" - -KEYWORDS="~amd64" -LICENSE="BSD" -SLOT="0" -IUSE="X legacy-renderer systemd video_cards_nvidia" - -# bundled wlroots has the following dependency string according to included headers. -# wlroots[drm,gles2-renderer,libinput,x11-backend?,X?] -# lets enable x11-backend by default -WLROOTS_RDEPEND=" - >=dev-libs/libinput-1.14.0:= - dev-libs/libliftoff - >=dev-libs/wayland-1.22 - media-libs/libdisplay-info - 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-renderutil - x11-libs/xcb-util-wm - ) -" -WLROOTS_DEPEND=" - >=dev-libs/wayland-protocols-1.32 -" -WLROOTS_BDEPEND=" - dev-util/glslang - dev-util/wayland-scanner -" - -RDEPEND=" - ${WLROOTS_RDEPEND} - dev-libs/glib:2 - dev-libs/libinput - dev-libs/wayland - media-libs/libglvnd - x11-libs/cairo - x11-libs/libdrm - x11-libs/libxkbcommon - x11-libs/pango - x11-libs/pixman - X? ( - x11-libs/libxcb:0= - ) -" -DEPEND=" - ${RDEPEND} - ${WLROOTS_DEPEND} - dev-libs/hyprland-protocols - >=dev-libs/wayland-protocols-1.25 -" -BDEPEND=" - ${WLROOTS_BDEPEND} - app-misc/jq - dev-util/cmake - dev-util/wayland-scanner - dev-vcs/git - virtual/pkgconfig -" - -pkg_setup() { - [[ ${MERGE_TYPE} == binary ]] && return - - if tc-is-gcc; then - STDLIBVER=$(echo '#include ' | $(tc-getCXX) -x c++ -dM -E - | \ - grep GLIBCXX_RELEASE | sed 's/.*\([1-9][0-9]\)/\1/') - - if ! [[ ${STDLIBVER} -ge 12 ]]; then - die "Hyprland requires >=sys-devel/gcc-12.1.0 to build" - fi - elif [[ $(clang-major-version) -lt 16 ]]; then - die "Hyprland requires >=sys-devel/clang-16.0.3 to build"; - fi -} - -src_prepare() { - if use video_cards_nvidia; then - cd "${S}/subprojects/wlroots" || die - eapply "${S}/nix/patches/wlroots-nvidia.patch" - # https://bugs.gentoo.org/911597 - # https://github.com/hyprwm/Hyprland/pull/2874 - # https://github.com/hyprwm/Hyprland/blob/main/nix/wlroots.nix#L54 - sed -i -e 's/glFlush();/glFinish();/' render/gles2/renderer.c || die - cd "${S}" || die - fi - - eapply "${FILESDIR}/hyprland-0.28.0-no-wlroots-automagic.patch" - - default -} - -src_configure() { - local emesonargs=( - $(meson_feature legacy-renderer legacy_renderer) - $(meson_feature X xwayland) - $(meson_feature systemd) - ) - - meson_src_configure -} - -src_install() { - meson_src_install --skip-subprojects wlroots -} -- cgit v1.2.3