public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: gui-wm/hyprland/, gui-wm/hyprland/files/
@ 2023-08-07 20:05 Sam James
  0 siblings, 0 replies; 6+ messages in thread
From: Sam James @ 2023-08-07 20:05 UTC (permalink / raw
  To: gentoo-commits

commit:     993790523289c55de0cbd076688df264957ce8f4
Author:     Alfred Wingate <parona <AT> protonmail <DOT> com>
AuthorDate: Mon Aug  7 07:42:55 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Aug  7 20:05:26 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=99379052

gui-wm/hyprland: enable x11-backend with xwayland, not unconditionally

Closes: https://bugs.gentoo.org/911828
Closes: https://bugs.gentoo.org/911871
Signed-off-by: Alfred Wingate <parona <AT> protonmail.com>
Closes: https://github.com/gentoo/gentoo/pull/32205
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../hyprland-0.28.0-no-wlroots-automagic-r1.patch    | 20 ++++++++++++++++++++
 .../files/hyprland-0.28.0-no-wlroots-automagic.patch | 14 --------------
 ...rland-0.28.0.ebuild => hyprland-0.28.0-r1.ebuild} |  4 ++--
 3 files changed, 22 insertions(+), 16 deletions(-)

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.ebuild b/gui-wm/hyprland/hyprland-0.28.0-r1.ebuild
similarity index 96%
rename from gui-wm/hyprland/hyprland-0.28.0.ebuild
rename to gui-wm/hyprland/hyprland-0.28.0-r1.ebuild
index 5023065717c7..1da193f4e218 100644
--- a/gui-wm/hyprland/hyprland-0.28.0.ebuild
+++ b/gui-wm/hyprland/hyprland-0.28.0-r1.ebuild
@@ -18,7 +18,7 @@ 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
+# enable x11-backend with X and vice versa
 WLROOTS_RDEPEND="
 	>=dev-libs/libinput-1.14.0:=
 	dev-libs/libliftoff
@@ -103,7 +103,7 @@ src_prepare() {
 		cd "${S}" || die
 	fi
 
-	eapply "${FILESDIR}/hyprland-0.28.0-no-wlroots-automagic.patch"
+	eapply "${FILESDIR}/hyprland-0.28.0-no-wlroots-automagic-r1.patch"
 
 	default
 }


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gui-wm/hyprland/, gui-wm/hyprland/files/
@ 2023-10-27  3:20 Sam James
  0 siblings, 0 replies; 6+ messages in thread
From: Sam James @ 2023-10-27  3:20 UTC (permalink / raw
  To: gentoo-commits

commit:     6fbec12f57b34dae8c49ca8d01fd7c899877a6d3
Author:     Julien Roy <julien <AT> jroy <DOT> ca>
AuthorDate: Thu Oct 19 16:10:21 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Oct 27 03:17:58 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6fbec12f

gui-wm/hyprland: add 0.31.0

Signed-off-by: Julien Roy <julien <AT> jroy.ca>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 gui-wm/hyprland/Manifest                           |   1 +
 .../files/hyprland-0.31.0-fix-log-headers.patch    |  33 ++++++
 gui-wm/hyprland/hyprland-0.31.0.ebuild             | 122 +++++++++++++++++++++
 3 files changed, 156 insertions(+)

diff --git a/gui-wm/hyprland/Manifest b/gui-wm/hyprland/Manifest
index 4c4e9e1253aa..d24c531125e4 100644
--- a/gui-wm/hyprland/Manifest
+++ b/gui-wm/hyprland/Manifest
@@ -1,2 +1,3 @@
 DIST hyprland-0.29.1.gh.tar.gz 14056843 BLAKE2B 9e9f1b15d354cf5e391b1add5dc5ce8cf2e4b206853465028a6170e613c7c5435e9a6e3318cd1006d3c2874d885128b95495bba08444fade0185b2a69d9ab950 SHA512 abbfd244b7473ec521a639b0d424e2873193ab9ef0d24e6272e15b79da9ade8ee56ea4cffdc328713f99600c1d320384839d32eb223034945659b015125e98b1
 DIST hyprland-0.30.0.gh.tar.gz 14064946 BLAKE2B 188328ed08ca8a9db97ae94b77159f9ebe5361a050a177ec586f376b168dab4c9dcd6b6d71d3314e9470f46b57f0610a92cdfe73ff1704b9f55f21399895e69f SHA512 f8053c19460e7768aa00944d1fc624d85ff9e042d0750a74d28e08147fe50e45262bdb1c259642bb7241746a8fb967344841e58fa598213f8c333f15246f9c94
+DIST hyprland-0.31.0.gh.tar.gz 14068621 BLAKE2B 272ba0c92ee6f8db623bb7b79a64ec1a3f2d2e0e1a8825ab7cc43e30dc64d77396ae014469a308c10deea0f9607680ff3a9328b747c82acccd5156e9d9c07cde SHA512 27798eba3bc430fe3689ecfb6ae38a59f48c39183c8cbd4fea8dca0a92a25941e6ee8b51d70f18498a3b0ef6c2575658299ee36ed6a6a93c7b54548ab64f07ca

diff --git a/gui-wm/hyprland/files/hyprland-0.31.0-fix-log-headers.patch b/gui-wm/hyprland/files/hyprland-0.31.0-fix-log-headers.patch
new file mode 100644
index 000000000000..7abd8164c9b4
--- /dev/null
+++ b/gui-wm/hyprland/files/hyprland-0.31.0-fix-log-headers.patch
@@ -0,0 +1,33 @@
+From 5dd0637e90efa17e391b67934998936194701d08 Mon Sep 17 00:00:00 2001
+From: memchr <memchr@proton.me>
+Date: Mon, 16 Oct 2023 16:22:01 +0000
+Subject: [PATCH] fix(build): do not include wlr headers directly, use
+ includes.hpp instead.
+
+---
+ src/debug/Log.hpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/debug/Log.hpp b/src/debug/Log.hpp
+index 125ed7f45d..085465c911 100644
+--- a/src/debug/Log.hpp
++++ b/src/debug/Log.hpp
+@@ -1,10 +1,10 @@
+ #pragma once
+ #include <string>
+-#include <wlr/util/log.h>
+ #include <format>
+ #include <iostream>
+ #include <fstream>
+ #include <chrono>
++#include "../includes.hpp"
+ #include "../helpers/MiscFunctions.hpp"
+ 
+ #define LOGMESSAGESIZE 1024
+@@ -79,4 +79,4 @@ namespace Debug {
+     }
+ 
+     void wlrLog(wlr_log_importance level, const char* fmt, va_list args);
+-};
+\ No newline at end of file
++};

diff --git a/gui-wm/hyprland/hyprland-0.31.0.ebuild b/gui-wm/hyprland/hyprland-0.31.0.ebuild
new file mode 100644
index 000000000000..55520c4c2de9
--- /dev/null
+++ b/gui-wm/hyprland/hyprland-0.31.0.ebuild
@@ -0,0 +1,122 @@
+# 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}
+	|| ( >=sys-devel/gcc-13:* >=sys-devel/clang-16:* )
+	app-misc/jq
+	dev-util/cmake
+	dev-util/wayland-scanner
+	dev-vcs/git
+	virtual/pkgconfig
+"
+
+PATCHES=(
+	"${FILESDIR}/hyprland-0.30.0-no-wlroots-automagic-r1.patch"
+	"${FILESDIR}/hyprland-0.31.0-fix-log-headers.patch"
+)
+
+pkg_setup() {
+	[[ ${MERGE_TYPE} == binary ]] && return
+
+	if tc-is-gcc && ver_test $(gcc-version) -lt 13 ; then
+		eerror "Hyprland requires >=sys-devel/gcc-13 to build"
+		eerror "Please upgrade GCC: emerge -v1 sys-devel/gcc"
+		die "GCC version is too old to compile Hyprland!"
+	elif tc-is-clang && ver_test $(clang-version) -lt 16 ; then
+		eerror "Hyprland requires >=sys-devel/clang-16 to build"
+		eerror "Please upgrade Clang: emerge -v1 sys-devel/clang"
+		die "Clang version is too old to compile Hyprland!"
+	fi
+}
+
+src_prepare() {
+	if use video_cards_nvidia; then
+		cd "${S}/subprojects/wlroots" || die
+		eapply "${S}/nix/patches/wlroots-nvidia.patch"
+		cd "${S}" || die
+	fi
+
+	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
+}


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gui-wm/hyprland/, gui-wm/hyprland/files/
@ 2024-01-02 12:08 Yixun Lan
  0 siblings, 0 replies; 6+ messages in thread
From: Yixun Lan @ 2024-01-02 12:08 UTC (permalink / raw
  To: gentoo-commits

commit:     e303fa66ac1d3fb7581c20f05d70f004295383ef
Author:     Julien Roy <julien <AT> jroy <DOT> ca>
AuthorDate: Sun Dec 31 21:57:37 2023 +0000
Commit:     Yixun Lan <dlan <AT> gentoo <DOT> org>
CommitDate: Tue Jan  2 12:06:35 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e303fa66

gui-wm/hyprland: add patch for gcc14

Closes: https://bugs.gentoo.org/921123
Closes: https://github.com/gentoo/gentoo/pull/34588
Signed-off-by: Julien Roy <julien <AT> jroy.ca>
Signed-off-by: Yixun Lan <dlan <AT> gentoo.org>

 gui-wm/hyprland/files/gcc14.patch      | 32 ++++++++++++++++++++++++++++++++
 gui-wm/hyprland/hyprland-0.33.1.ebuild |  4 ++++
 2 files changed, 36 insertions(+)

diff --git a/gui-wm/hyprland/files/gcc14.patch b/gui-wm/hyprland/files/gcc14.patch
new file mode 100644
index 000000000000..1bebe9e9d4c4
--- /dev/null
+++ b/gui-wm/hyprland/files/gcc14.patch
@@ -0,0 +1,32 @@
+# From: https://gitlab.freedesktop.org/wlroots/wlroots/-/commit/f3e1f7b2a70a500b740bfc406e893eba0852699a
+diff --git a/subprojects/wlroots/backend/libinput/tablet_pad.c b/subprojects/wlroots/backend/libinput/tablet_pad.c
+index 2e74022a..e5327528 100644
+--- a/subprojects/wlroots/backend/libinput/tablet_pad.c
++++ b/subprojects/wlroots/backend/libinput/tablet_pad.c
+@@ -33,7 +33,7 @@ static void add_pad_group_from_libinput(struct wlr_tablet_pad *pad,
+ 			++group->ring_count;
+ 		}
+ 	}
+-	group->rings = calloc(sizeof(unsigned int), group->ring_count);
++	group->rings = calloc(group->ring_count, sizeof(unsigned int));
+ 	if (group->rings == NULL) {
+ 		goto group_fail;
+ 	}
+@@ -50,7 +50,7 @@ static void add_pad_group_from_libinput(struct wlr_tablet_pad *pad,
+ 			++group->strip_count;
+ 		}
+ 	}
+-	group->strips = calloc(sizeof(unsigned int), group->strip_count);
++	group->strips = calloc(group->strip_count, sizeof(unsigned int));
+ 	if (group->strips == NULL) {
+ 		goto group_fail;
+ 	}
+@@ -66,7 +66,7 @@ static void add_pad_group_from_libinput(struct wlr_tablet_pad *pad,
+ 			++group->button_count;
+ 		}
+ 	}
+-	group->buttons = calloc(sizeof(unsigned int), group->button_count);
++	group->buttons = calloc(group->button_count, sizeof(unsigned int));
+ 	if (group->buttons == NULL) {
+ 		goto group_fail;
+ 	}

diff --git a/gui-wm/hyprland/hyprland-0.33.1.ebuild b/gui-wm/hyprland/hyprland-0.33.1.ebuild
index 049bd8915031..5c3cf3abef5f 100644
--- a/gui-wm/hyprland/hyprland-0.33.1.ebuild
+++ b/gui-wm/hyprland/hyprland-0.33.1.ebuild
@@ -77,6 +77,10 @@ BDEPEND="
 	virtual/pkgconfig
 "
 
+PATCHES=(
+	"${FILESDIR}/gcc14.patch"
+)
+
 pkg_setup() {
 	[[ ${MERGE_TYPE} == binary ]] && return
 


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gui-wm/hyprland/, gui-wm/hyprland/files/
@ 2024-03-10  3:40 Yixun Lan
  0 siblings, 0 replies; 6+ messages in thread
From: Yixun Lan @ 2024-03-10  3:40 UTC (permalink / raw
  To: gentoo-commits

commit:     06091e0976c20b8b52ce005cd21a31e3f5b0e025
Author:     Julien Roy <julien <AT> jroy <DOT> ca>
AuthorDate: Sat Mar  9 17:56:07 2024 +0000
Commit:     Yixun Lan <dlan <AT> gentoo <DOT> org>
CommitDate: Sun Mar 10 03:40:02 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=06091e09

gui-wm/hyprland: add patch for bug 926259

Closes: https://bugs.gentoo.org/926259
Closes: https://github.com/gentoo/gentoo/pull/35686
Signed-off-by: Julien Roy <julien <AT> jroy.ca>
Signed-off-by: Yixun Lan <dlan <AT> gentoo.org>

 gui-wm/hyprland/files/tty-freeze.patch                       | 12 ++++++++++++
 .../{hyprland-0.35.0-r2.ebuild => hyprland-0.35.0-r3.ebuild} |  3 +++
 .../{hyprland-0.36.0-r1.ebuild => hyprland-0.36.0-r2.ebuild} |  3 +++
 3 files changed, 18 insertions(+)

diff --git a/gui-wm/hyprland/files/tty-freeze.patch b/gui-wm/hyprland/files/tty-freeze.patch
new file mode 100644
index 000000000000..991593b8de86
--- /dev/null
+++ b/gui-wm/hyprland/files/tty-freeze.patch
@@ -0,0 +1,12 @@
+diff --git a/src/events/Misc.cpp b/src/events/Misc.cpp
+index b77cf038..eaaaec18 100644
+--- a/src/events/Misc.cpp
++++ b/src/events/Misc.cpp
+@@ -169,6 +169,7 @@ void Events::listener_sessionActive(wl_listener* listener, void* data) {
+ 
+     for (auto& m : g_pCompositor->m_vMonitors) {
+         g_pCompositor->scheduleFrameForMonitor(m.get());
++        g_pHyprRenderer->applyMonitorRule(m.get(), &m->activeMonitorRule, true);
+     }
+ 
+     g_pConfigManager->m_bWantsMonitorReload = true;

diff --git a/gui-wm/hyprland/hyprland-0.35.0-r2.ebuild b/gui-wm/hyprland/hyprland-0.35.0-r3.ebuild
similarity index 96%
rename from gui-wm/hyprland/hyprland-0.35.0-r2.ebuild
rename to gui-wm/hyprland/hyprland-0.35.0-r3.ebuild
index 81c8b1bbcb99..369ffc6eb951 100644
--- a/gui-wm/hyprland/hyprland-0.35.0-r2.ebuild
+++ b/gui-wm/hyprland/hyprland-0.35.0-r3.ebuild
@@ -95,6 +95,9 @@ BDEPEND="
 
 PATCHES=(
 	"${FILESDIR}/legacy-renderer-fix.patch"
+	# https://bugs.gentoo.org/926259
+	# https://github.com/hyprwm/Hyprland/issues/4839
+	"${FILESDIR}/tty-freeze.patch"
 )
 
 pkg_setup() {

diff --git a/gui-wm/hyprland/hyprland-0.36.0-r1.ebuild b/gui-wm/hyprland/hyprland-0.36.0-r2.ebuild
similarity index 96%
rename from gui-wm/hyprland/hyprland-0.36.0-r1.ebuild
rename to gui-wm/hyprland/hyprland-0.36.0-r2.ebuild
index 972fe7b33988..7190982afaef 100644
--- a/gui-wm/hyprland/hyprland-0.36.0-r1.ebuild
+++ b/gui-wm/hyprland/hyprland-0.36.0-r2.ebuild
@@ -96,6 +96,9 @@ BDEPEND="
 
 PATCHES=(
 	"${FILESDIR}/legacy-renderer-fix.patch"
+	# https://bugs.gentoo.org/926259
+	# https://github.com/hyprwm/Hyprland/issues/4839
+	"${FILESDIR}/tty-freeze.patch"
 )
 
 pkg_setup() {


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gui-wm/hyprland/, gui-wm/hyprland/files/
@ 2024-04-20 19:25 Arthur Zamarin
  0 siblings, 0 replies; 6+ messages in thread
From: Arthur Zamarin @ 2024-04-20 19:25 UTC (permalink / raw
  To: gentoo-commits

commit:     cf23af1c4bef55a830a0c216dc39714cc46efbc9
Author:     Julien Roy <julien <AT> jroy <DOT> ca>
AuthorDate: Sat Apr 20 14:26:25 2024 +0000
Commit:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Apr 20 19:19:54 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf23af1c

gui-wm/hyprland: add patch for bash completions

Closes: https://bugs.gentoo.org/930132
Signed-off-by: Julien Roy <julien <AT> jroy.ca>
Closes: https://github.com/gentoo/gentoo/pull/36331
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>

 .../files/bash-completion-fix-0.39.1.patch         | 22 ++++++++++++++++++++++
 ...and-0.39.1.ebuild => hyprland-0.39.1-r1.ebuild} |  6 ++++++
 2 files changed, 28 insertions(+)

diff --git a/gui-wm/hyprland/files/bash-completion-fix-0.39.1.patch b/gui-wm/hyprland/files/bash-completion-fix-0.39.1.patch
new file mode 100644
index 000000000000..fe48ce45dd3a
--- /dev/null
+++ b/gui-wm/hyprland/files/bash-completion-fix-0.39.1.patch
@@ -0,0 +1,22 @@
+https://github.com/hyprwm/Hyprland/pull/5653
+
+--- a/hyprctl/meson.build
++++ b/hyprctl/meson.build
+@@ -2,6 +2,6 @@ executable('hyprctl', 'main.cpp',
+   install: true
+ )
+
+-install_data('hyprctl.bash', install_dir: join_paths(get_option('datadir'), 'bash-completion'), install_tag: 'runtime', rename: 'hyprctl')
++install_data('hyprctl.bash', install_dir: join_paths(get_option('datadir'), 'bash-completion/completions'), install_tag: 'runtime', rename: 'hyprctl')
+ install_data('hyprctl.fish', install_dir: join_paths(get_option('datadir'), 'fish/vendor_completions.d'), install_tag: 'runtime')
+ install_data('hyprctl.zsh', install_dir: join_paths(get_option('datadir'), 'zsh/site-functions'), install_tag: 'runtime', rename: '_hyprctl')
+--- a/hyprpm/src/meson.build
++++ b/hyprpm/src/meson.build
+@@ -9,6 +9,6 @@ executable('hyprpm', src,
+   install : true
+ )
+
+-install_data('../hyprpm.bash', install_dir: join_paths(get_option('datadir'), 'bash-completion'), install_tag: 'runtime', rename: 'hyprpm')
++install_data('../hyprpm.bash', install_dir: join_paths(get_option('datadir'), 'bash-completion/completions'), install_tag: 'runtime', rename: 'hyprpm')
+ install_data('../hyprpm.fish', install_dir: join_paths(get_option('datadir'), 'fish/vendor_completions.d'), install_tag: 'runtime')
+ install_data('../hyprpm.zsh', install_dir: join_paths(get_option('datadir'), 'zsh/site-functions'), install_tag: 'runtime', rename: '_hyprpm')

diff --git a/gui-wm/hyprland/hyprland-0.39.1.ebuild b/gui-wm/hyprland/hyprland-0.39.1-r1.ebuild
similarity index 96%
rename from gui-wm/hyprland/hyprland-0.39.1.ebuild
rename to gui-wm/hyprland/hyprland-0.39.1-r1.ebuild
index 3368e4aa15c2..6b1a6eff78b2 100644
--- a/gui-wm/hyprland/hyprland-0.39.1.ebuild
+++ b/gui-wm/hyprland/hyprland-0.39.1-r1.ebuild
@@ -95,6 +95,12 @@ BDEPEND="
 	virtual/pkgconfig
 "
 
+PATCHES=(
+	# https://bugs.gentoo.org/930132
+	# https://github.com/hyprwm/Hyprland/pull/5653
+	"${FILESDIR}/bash-completion-fix-0.39.1.patch"
+)
+
 pkg_setup() {
 	[[ ${MERGE_TYPE} == binary ]] && return
 


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gui-wm/hyprland/, gui-wm/hyprland/files/
@ 2024-05-15  8:04 Yixun Lan
  0 siblings, 0 replies; 6+ messages in thread
From: Yixun Lan @ 2024-05-15  8:04 UTC (permalink / raw
  To: gentoo-commits

commit:     0fe69c4c758d917bc5f042d99c33867c95d5bebc
Author:     Julien Roy <julien <AT> jroy <DOT> ca>
AuthorDate: Mon May 13 18:47:24 2024 +0000
Commit:     Yixun Lan <dlan <AT> gentoo <DOT> org>
CommitDate: Wed May 15 08:03:45 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0fe69c4c

gui-wm/hyprland: add 0.40.0

Closes: https://bugs.gentoo.org/931680
Bug: https://bugs.gentoo.org/930945
Signed-off-by: Julien Roy <julien <AT> jroy.ca>
Signed-off-by: Yixun Lan <dlan <AT> gentoo.org>

 gui-wm/hyprland/Manifest                           |   1 +
 .../files/wlroots-hyprland-apply-0.40.0.patch      |  23 ++++
 gui-wm/hyprland/hyprland-0.40.0.ebuild             | 147 +++++++++++++++++++++
 3 files changed, 171 insertions(+)

diff --git a/gui-wm/hyprland/Manifest b/gui-wm/hyprland/Manifest
index 87f489ff055d..492ef0804cd8 100644
--- a/gui-wm/hyprland/Manifest
+++ b/gui-wm/hyprland/Manifest
@@ -1,3 +1,4 @@
 DIST hyprland-0.37.1.gh.tar.gz 54651435 BLAKE2B 92bd78168909510ffb21b46f7d66e139e7b86f7655c7a8126eaf90b6ef6d7d5affaf0bc55ca1647a2f80b6d767afc00e1efe5f2241b2bc88d20357acee611b92 SHA512 f09316e210805b833a27524894222edc7a048b77f9f5d9cc8faa5b4e37040485ad3b9638f60a346da8d4d4aff24bbd6382b7fde64d07528990e9a521b2f46454
 DIST hyprland-0.38.1.gh.tar.gz 54701702 BLAKE2B 56f16d938099856be9aea0a089154e58a1d2226f42fc2a81a560e3f3883caed6eb76faa674340a3a4a1632df5a8c1a28d084c64c6749c3452c23ca192bef967b SHA512 addd4cea3f83e17907180288021718a66973c247b261e306accb7b32bbbbd2f0b3f4fcf4c22189614f561c361bfb99ea0645f4698e7af9491379d424d1d1142b
 DIST hyprland-0.39.1.gh.tar.gz 54681029 BLAKE2B 5a78c5e7cef3369fd72abc05941f88f0391fb87e79afaa13c128acd9f8d2aa79d6af4d0dc82a90c09689993fe914ac48bc5ba4a32173eed31ecc20204f5a4edc SHA512 da8ee577aa823c9fb7b45bfd07503656561c1cd4cac42a9bf8f582f653c93b20824b3bce7bbcbd47b7f7f8e83fb1b630d6d5c983fe345c971322369f193c2c8f
+DIST hyprland-0.40.0.gh.tar.gz 54734246 BLAKE2B 54d5b1bb062003e38156c67bfc0b796d0e4d855f35b0122fa191037caa47e5be2a25acfe588835c49ac747fc7430124480e4a7716782fd23d028289bee236e7f SHA512 948e7237fa811f104ee11764d7947d2fd8291e79cf6db00d3f3905204f5bb2df1e51e26b2600f086f5b22d910ef50c2941343dd05e7a5d2f4b6053b150800f21

diff --git a/gui-wm/hyprland/files/wlroots-hyprland-apply-0.40.0.patch b/gui-wm/hyprland/files/wlroots-hyprland-apply-0.40.0.patch
new file mode 100644
index 000000000000..65148b64137f
--- /dev/null
+++ b/gui-wm/hyprland/files/wlroots-hyprland-apply-0.40.0.patch
@@ -0,0 +1,23 @@
+diff --git a/patches/apply.sh b/patches/apply.sh
+index d5492b1b..87d84848 100755
+--- a/subprojects/wlroots-hyprland/patches/apply.sh
++++ b/subprojects/wlroots-hyprland/patches/apply.sh
+@@ -4,15 +4,15 @@
+ PATCHES=$(find patches/ -type f -name '*.patch')
+ 
+ apply () {
+-	git apply $PATCH
++	patch -p1 -r /dev/null -N -s < $PATCH >/dev/null 2>&1 && echo NEW: \'$PATCH\'
+ }
+ 
+ check_applied () {
+-	git apply --check --reverse -q $PATCH
++	patch -p1 -r /dev/null --dry-run -R -s < $PATCH >/dev/null 2>&1 && echo OK: \'$PATCH\'
+ }
+ 
+ fail () {
+-	echo =======\> \'$PATCH\' was not applied && exit 1
++	echo FAILED: \'$PATCH\' NOT APPLICABLE && exit 1
+ }
+ 
+ if [ -n "$PATCHES" ];

diff --git a/gui-wm/hyprland/hyprland-0.40.0.ebuild b/gui-wm/hyprland/hyprland-0.40.0.ebuild
new file mode 100644
index 000000000000..0893dbca86c0
--- /dev/null
+++ b/gui-wm/hyprland/hyprland-0.40.0.ebuild
@@ -0,0 +1,147 @@
+# Copyright 2023-2024 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"
+
+if [[ "${PV}" = *9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="https://github.com/hyprwm/${PN^}.git"
+else
+	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"
+fi
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="X legacy-renderer systemd"
+
+# hyprpm (hyprland plugin manager) requires the dependencies at runtime
+# so that it can clone, compile and install plugins.
+HYPRPM_RDEPEND="
+	app-alternatives/ninja
+	dev-build/cmake
+	dev-build/meson
+	dev-libs/libliftoff
+	dev-vcs/git
+	virtual/pkgconfig
+"
+# 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_DEPEND="
+	>=dev-libs/wayland-1.22
+	media-libs/libglvnd
+	|| ( <media-libs/mesa-24.1[egl(+),gles2]
+		 >=media-libs/mesa-24.1[egl(+)] )
+	>=x11-libs/libdrm-2.4.114
+	x11-libs/libxkbcommon
+	>=x11-libs/pixman-0.42.0
+	media-libs/libdisplay-info
+	sys-apps/hwdata
+	>=dev-libs/libinput-1.14.0:=
+	sys-auth/seatd:=
+	virtual/libudev:=
+	X? (
+		x11-libs/libxcb:=
+		x11-libs/xcb-util-renderutil
+		x11-libs/xcb-util-wm
+		x11-base/xwayland
+	)
+"
+WLROOTS_RDEPEND="
+	${WLROOTS_DEPEND}
+"
+WLROOTS_BDEPEND="
+	>=dev-libs/wayland-protocols-1.32
+	dev-util/hyprwayland-scanner
+	virtual/pkgconfig
+"
+RDEPEND="
+	${HYPRPM_RDEPEND}
+	${WLROOTS_RDEPEND}
+	dev-cpp/tomlplusplus
+	dev-libs/glib:2
+	dev-libs/libinput
+	>=dev-libs/wayland-1.20.0
+	>=gui-libs/hyprcursor-0.1.7
+	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-0.2
+	>=dev-libs/hyprlang-0.3.2
+	>=dev-libs/wayland-protocols-1.34
+"
+BDEPEND="
+	${WLROOTS_BDEPEND}
+	|| ( >=sys-devel/gcc-13:* >=sys-devel/clang-16:* )
+	app-misc/jq
+	dev-build/cmake
+	~dev-util/hyprwayland-scanner-0.3.4
+	virtual/pkgconfig
+"
+
+PATCHES=(
+	# apply.sh script is broken in the targetted commit of 0.40.0
+	# they fixed it since; the fix being this patch
+	"${FILESDIR}"/wlroots-hyprland-apply-0.40.0.patch
+)
+
+pkg_setup() {
+	[[ ${MERGE_TYPE} == binary ]] && return
+
+	if tc-is-gcc && ver_test $(gcc-version) -lt 13 ; then
+		eerror "Hyprland requires >=sys-devel/gcc-13 to build"
+		eerror "Please upgrade GCC: emerge -v1 sys-devel/gcc"
+		die "GCC version is too old to compile Hyprland!"
+	elif tc-is-clang && ver_test $(clang-version) -lt 16 ; then
+		eerror "Hyprland requires >=sys-devel/clang-16 to build"
+		eerror "Please upgrade Clang: emerge -v1 sys-devel/clang"
+		die "Clang version is too old to compile Hyprland!"
+	fi
+}
+
+src_configure() {
+	local emesonargs=(
+		$(meson_feature legacy-renderer legacy_renderer)
+		$(meson_feature systemd)
+		$(meson_feature X xwayland)
+		$(meson_feature X wlroots:xwayland)
+		-Dwlroots:backends=drm,libinput$(usev X ',x11')
+		-Dwlroots:xcb-errors=disabled
+	)
+
+	meson_src_configure
+}
+
+src_install() {
+	# First install everything except wlroots to avoid conflicts.
+	meson_src_install --skip-subprojects wlroots
+	# Then install development files (mainly wlroots) for bug #916760.
+	meson_src_install --tags devel
+
+	# Wlroots headers are required by hyprland-plugins and the pkgconfig file expects
+	# them to be in /usr/include/hyprland/wlroots, despite this they aren't installed there.
+	# Ideally you could override includedir per subproject and the install tags would
+	# be granular enough to only install headers. But its not requiring this.
+	mkdir "${ED}"/usr/include/hyprland/wlroots || die
+	mv "${ED}"/usr/include/wlr "${ED}"/usr/include/hyprland/wlroots || die
+	# devel tag includes wlroots .pc and .a files still
+	rm -rf "${ED}"/usr/$(get_libdir)/ || die
+}


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-05-15  8:04 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-08-07 20:05 [gentoo-commits] repo/gentoo:master commit in: gui-wm/hyprland/, gui-wm/hyprland/files/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2023-10-27  3:20 Sam James
2024-01-02 12:08 Yixun Lan
2024-03-10  3:40 Yixun Lan
2024-04-20 19:25 Arthur Zamarin
2024-05-15  8:04 Yixun Lan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox