[gentoo-commits] repo/gentoo:master commit in: gui-wm/hyprland/, gui-wm/hyprland/files/

2024-01-02 Thread Yixun Lan
commit: e303fa66ac1d3fb7581c20f05d70f004295383ef
Author: Julien Roy  jroy  ca>
AuthorDate: Sun Dec 31 21:57:37 2023 +
Commit: Yixun Lan  gentoo  org>
CommitDate: Tue Jan  2 12:06:35 2024 +
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  jroy.ca>
Signed-off-by: Yixun Lan  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 ..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
 



[gentoo-commits] repo/gentoo:master commit in: gui-wm/hyprland/, gui-wm/hyprland/files/

2024-04-20 Thread Arthur Zamarin
commit: cf23af1c4bef55a830a0c216dc39714cc46efbc9
Author: Julien Roy  jroy  ca>
AuthorDate: Sat Apr 20 14:26:25 2024 +
Commit: Arthur Zamarin  gentoo  org>
CommitDate: Sat Apr 20 19:19:54 2024 +
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  jroy.ca>
Closes: https://github.com/gentoo/gentoo/pull/36331
Signed-off-by: Arthur Zamarin  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 ..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
 



[gentoo-commits] repo/gentoo:master commit in: gui-wm/hyprland/, gui-wm/hyprland/files/

2024-03-09 Thread Yixun Lan
commit: 06091e0976c20b8b52ce005cd21a31e3f5b0e025
Author: Julien Roy  jroy  ca>
AuthorDate: Sat Mar  9 17:56:07 2024 +
Commit: Yixun Lan  gentoo  org>
CommitDate: Sun Mar 10 03:40:02 2024 +
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  jroy.ca>
Signed-off-by: Yixun Lan  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 ..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() {



[gentoo-commits] repo/gentoo:master commit in: gui-wm/hyprland/, gui-wm/hyprland/files/

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

gui-wm/hyprland: add 0.31.0

Signed-off-by: Julien Roy  jroy.ca>
Signed-off-by: Sam James  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 ..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 
+Date: Mon, 16 Oct 2023 16:22:01 +
+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 
+-#include 
+ #include 
+ #include 
+ #include 
+ #include 
++#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 ..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="
+   

[gentoo-commits] repo/gentoo:master commit in: gui-wm/hyprland/, gui-wm/hyprland/files/

2023-08-07 Thread Sam James
commit: 993790523289c55de0cbd076688df264957ce8f4
Author: Alfred Wingate  protonmail  com>
AuthorDate: Mon Aug  7 07:42:55 2023 +
Commit: Sam James  gentoo  org>
CommitDate: Mon Aug  7 20:05:26 2023 +
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  protonmail.com>
Closes: https://github.com/gentoo/gentoo/pull/32205
Signed-off-by: Sam James  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 ..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..
--- 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
 }



[gentoo-commits] repo/gentoo:master commit in: gui-wm/hyprland/, gui-wm/hyprland/files/

2024-05-15 Thread Yixun Lan
commit: 0fe69c4c758d917bc5f042d99c33867c95d5bebc
Author: Julien Roy  jroy  ca>
AuthorDate: Mon May 13 18:47:24 2024 +
Commit: Yixun Lan  gentoo  org>
CommitDate: Wed May 15 08:03:45 2024 +
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  jroy.ca>
Signed-off-by: Yixun Lan  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 
addd4cea3f83e17907180288021718a66973c247b261e306accb7b32d2f0b3f4fcf4c22189614f561c361bfb99ea0645f4698e7af9491379d424d1d1142b
 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 ..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 ..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}" = * ]]; 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(+)] )
+   >=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
+