summaryrefslogtreecommitdiff
path: root/gui-wm
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-08-07 09:24:29 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-08-07 09:24:29 +0100
commitfa77846c708f4d0541b610846a5f2ed14b4b20c1 (patch)
tree35860ca9d75749380daddffe86bbd70d3c5866a9 /gui-wm
parent640c4638f1e12a2c71f539ee18564a0c82d19947 (diff)
gentoo auto-resync : 07:08:2023 - 09:24:28
Diffstat (limited to 'gui-wm')
-rw-r--r--gui-wm/Manifest.gzbin1044 -> 1048 bytes
-rw-r--r--gui-wm/hyprland/Manifest6
-rw-r--r--gui-wm/hyprland/files/hyprland-0.28.0-no-wlroots-automagic.patch14
-rw-r--r--gui-wm/hyprland/files/nvidia-0.25.0.patch43
-rw-r--r--gui-wm/hyprland/hyprland-0.28.0.ebuild (renamed from gui-wm/hyprland/hyprland-0.26.0.ebuild)80
-rw-r--r--gui-wm/wayfire/Manifest3
-rw-r--r--gui-wm/wayfire/wayfire-0.7.5-r1.ebuild121
-rw-r--r--gui-wm/wayfire/wayfire-9999.ebuild4
8 files changed, 195 insertions, 76 deletions
diff --git a/gui-wm/Manifest.gz b/gui-wm/Manifest.gz
index 4ca62716920a..7c1b89130bb2 100644
--- a/gui-wm/Manifest.gz
+++ b/gui-wm/Manifest.gz
Binary files differ
diff --git a/gui-wm/hyprland/Manifest b/gui-wm/hyprland/Manifest
index 12535c4cef7c..a45ad6586486 100644
--- a/gui-wm/hyprland/Manifest
+++ b/gui-wm/hyprland/Manifest
@@ -1,6 +1,6 @@
-AUX nvidia-0.25.0.patch 1394 BLAKE2B 95df2f6b82afb460a3e0a1769bb2abf41abcd76c564db3d43189fc9a617b92ae1de8422243f6624574d316187706d552439f47cc44bbcf3fa4f5fabd5d83b420 SHA512 5389d132e16c4dc7af3cdb48003ac7be8ae3760b6052d2edf637b3d645e2e85eda162353b245a848c5b9d218bfccfdfa987189d164444564d87a7048ec53f52d
-DIST hyprland-0.26.0.gh.tar.gz 1523005 BLAKE2B e54ebb73850f63427ff9347c7ad0cb2ffda3350baf3c4221de51b1094678f3ffdac67669f49bfe3ba416b627673f5ca8491d06e16791764ef1c39f5964f2b570 SHA512 b43639a8e0fdd60165b6caa51c9411bc6f97260690c5ee3d15126ef091ccf93955fdda904a226b4aeb4367785ecaba426882a2e9b726c2b79c81a2ede0f9e36a
+AUX hyprland-0.28.0-no-wlroots-automagic.patch 600 BLAKE2B 55b30dd059d7c46f3dc84638cf0a6dd91dd4b694758158bcbe6c9ed041dc4f4338a1c6b1aa1b9a57a752610a8a8ea89cc9c1580c357e70722787dd73effe4f97 SHA512 b4f865cd1dc755e3ff92e50e390c51149a6e5357acca07f31db54a38b0e2c4e8092d5ca41e21c027483b431ce60845e9f4957665571fb0c850070ecbfa02ee16
DIST hyprland-0.27.2.gh.tar.gz 4992717 BLAKE2B 6725ee593edb4f7d127eb95ed567bc7344edc066a9ce818ba99bd15eb718ce1d8de86a63da5684521ccbe3ba918a3f385c3a3e662314704e60e855101d391d05 SHA512 92e8ca21eba52ff423654cd345d37125656c32e1262e4e76d8841ee4ba698788d46d70a5876fc9aca42440efa5dd4122f46c84365da53810284a666f5d13ce7e
-EBUILD hyprland-0.26.0.ebuild 2154 BLAKE2B 9bd3595f7c3efd97a6e0b53a6ff8bb099291899cd4a97b61010e168d03ed43ab6e865b832619bee4383bd44eb92d533185bcea5c334e7ad1fbd0b5561dc5785e SHA512 a9f876684bdb4952e12fffa97e12903f7e9f3673875d75d2af8ff5c1911cffe3aaa589e42c229810e4908c2be2e3646ec57174fefffaa32a0d76b0376dbff9b8
+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
MISC metadata.xml 716 BLAKE2B fc5248c809b9b5bf1002e3d82ff80f595b8e613d09e5541f1a0151c3ea2c117376d25fa5a40c85d254533708d9eff5339bd329b42118e87ca49e22e55c0c5d7b SHA512 31252ced2546f3686f17259aabfe9273af14f7efaf3fa0bfb446c65c6d9478be3a23c531e0ac463f27fe1d50842f6f126f32e47a8a03a345306297e182952e98
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
new file mode 100644
index 000000000000..96b12fe497eb
--- /dev/null
+++ b/gui-wm/hyprland/files/hyprland-0.28.0-no-wlroots-automagic.patch
@@ -0,0 +1,14 @@
+# 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/files/nvidia-0.25.0.patch b/gui-wm/hyprland/files/nvidia-0.25.0.patch
deleted file mode 100644
index d9d2213607f4..000000000000
--- a/gui-wm/hyprland/files/nvidia-0.25.0.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-# From https://github.com/hyprwm/Hyprland/issues/2239#issuecomment-1536725235
-# This patch is recommended by the developer on systems running and Nvidia GPu
-diff --git a/render/gles2/renderer.c b/render/gles2/renderer.c
-index 6a86b183..823fc318 100644
---- a/render/gles2/renderer.c
-+++ b/render/gles2/renderer.c
-@@ -165,7 +165,7 @@ static bool gles2_bind_buffer(struct wlr_renderer *wlr_renderer,
- assert(wlr_egl_is_current(renderer->egl));
-
- push_gles2_debug(renderer);
-- glFlush();
-+ glFinish();
- glBindFramebuffer(GL_FRAMEBUFFER, 0);
- pop_gles2_debug(renderer);
-
-diff --git a/types/output/render.c b/types/output/render.c
-index ed1afa4a..ddc730c7 100644
---- a/types/output/render.c
-+++ b/types/output/render.c
-@@ -225,22 +225,7 @@ struct wlr_drm_format *output_pick_format(struct wlr_output *output,
- }
-
- uint32_t wlr_output_preferred_read_format(struct wlr_output *output) {
-- struct wlr_renderer *renderer = output->renderer;
-- assert(renderer != NULL);
--
-- if (!renderer->impl->preferred_read_format || !renderer->impl->read_pixels) {
-- return DRM_FORMAT_INVALID;
-- }
--
-- if (!output_attach_back_buffer(output, &output->pending, NULL)) {
-- return false;
-- }
--
-- uint32_t fmt = renderer->impl->preferred_read_format(renderer);
--
-- output_clear_back_buffer(output);
--
-- return fmt;
-+ return DRM_FORMAT_XRGB8888;
- }
-
- bool output_is_direct_scanout(struct wlr_output *output,
diff --git a/gui-wm/hyprland/hyprland-0.26.0.ebuild b/gui-wm/hyprland/hyprland-0.28.0.ebuild
index e67a76f747bd..5023065717c7 100644
--- a/gui-wm/hyprland/hyprland-0.26.0.ebuild
+++ b/gui-wm/hyprland/hyprland-0.28.0.ebuild
@@ -8,7 +8,7 @@ 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 -> ${PF}.gh.tar.gz"
+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"
@@ -16,45 +16,65 @@ LICENSE="BSD"
SLOT="0"
IUSE="X legacy-renderer systemd video_cards_nvidia"
-RDEPEND="
- app-misc/jq
- dev-libs/glib:2
- dev-libs/libinput:=
+# 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
- dev-libs/wayland-protocols
- dev-util/glslang
- dev-util/vulkan-headers
- gui-libs/gtk-layer-shell
+ >=dev-libs/wayland-1.22
media-libs/libdisplay-info
- media-libs/libglvnd[X?]
- media-libs/mesa[gles2,wayland,X?]
- media-libs/vulkan-loader
+ media-libs/libglvnd
+ media-libs/mesa[egl(+),gles2]
+ sys-apps/hwdata:=
sys-auth/seatd:=
- x11-base/xcb-proto
+ >=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
- x11-misc/xkeyboard-config
- virtual/libudev:=
X? (
- gui-libs/wlroots[x11-backend]
- x11-base/xwayland
- x11-libs/libxcb:=
- x11-libs/xcb-util-image
- x11-libs/xcb-util-renderutil
- x11-libs/xcb-util-wm
+ x11-libs/libxcb:0=
)
"
-DEPEND="${RDEPEND}"
-BDEPEND="
+DEPEND="
+ ${RDEPEND}
+ ${WLROOTS_DEPEND}
dev-libs/hyprland-protocols
- >=dev-libs/wayland-1.22.0
+ >=dev-libs/wayland-protocols-1.25
+"
+BDEPEND="
+ ${WLROOTS_BDEPEND}
+ app-misc/jq
+ dev-util/cmake
dev-util/wayland-scanner
dev-vcs/git
- >=gui-libs/wlroots-0.16.0[X?]
+ virtual/pkgconfig
"
pkg_setup() {
@@ -75,10 +95,16 @@ pkg_setup() {
src_prepare() {
if use video_cards_nvidia; then
cd "${S}/subprojects/wlroots" || die
- eapply "${FILESDIR}/nvidia-0.25.0.patch"
+ 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
}
diff --git a/gui-wm/wayfire/Manifest b/gui-wm/wayfire/Manifest
index 358bbe981222..2297c6e1c11c 100644
--- a/gui-wm/wayfire/Manifest
+++ b/gui-wm/wayfire/Manifest
@@ -4,6 +4,7 @@ AUX wayfire-session.desktop 204 BLAKE2B a8e01f911881c651ec67b5945b91dca615186659
DIST wayfire-0.7.3.tar.xz 765524 BLAKE2B b82c66796d7fb3d07c7bd9078755b7c38df1bd5c93daa659fc98b1182679bc0a06a24b322c6ab492d06d30c898659e2ba849c1d5944260e8775a04fd8a5bd078 SHA512 7bb5b8492a632a9816e847ec72def74dc234bcc30da7c320a0cd3b1d60492f5521ad8ac76a12ef967d1b114bcde9be72eb8ffc618977aed8e198d4ace1e7056e
DIST wayfire-0.7.5.tar.xz 781952 BLAKE2B 10f4927d793ad2f8047ab5608db72bb5988fbb4df805dc65a87b011453729109ca0b3a92cf89e867266fae52268e1e2ac452bbd6efcc81e8f1a0c0640008adc1 SHA512 fce6d4c81fa3675df1e656f8bf504f7fc9d1b7104687bcc6d669950582f46bd0ad084c6a487434077df029438243cd91cf6ec60dc7d584b40bfd7a4c8d069f53
EBUILD wayfire-0.7.3-r3.ebuild 2553 BLAKE2B b7d8caa0ef5e425ba5f4ffeef1f7dec8c39fbc2f6ef5aff0989f1aeac93c404550ba8d19e48e288fdfb683e89e982018718afab3b5ca68e0bce45217bea714bf SHA512 988f82606f448bac536e0e6633a0a23dbc513351a84df1fb81e1deb8298b9f0738ef559c15997693c7a93699198eeaf1904feff570b8e73a4e1a7d008aa7ff3f
+EBUILD wayfire-0.7.5-r1.ebuild 2930 BLAKE2B 3b5a7492d6b6254a6a99138f435cb8c03da570560a25a72df4f4e52247dc5c9b95a57e6c88f280bff062d6b2e94bd5b1ed1f682166110e44c94f5b8132271d43 SHA512 b929230a8ed0a53ad4bf15c8e96045b9d2f3cf106d92d578d6748e514f5c269a5f8b6c291ff4da7ed69f1e9ecb3c20441e1565f00b9806b61d338e15edd61739
EBUILD wayfire-0.7.5.ebuild 2867 BLAKE2B 81430a506b622bae32fea72f539f050d4a7a7115bb7d59917f33d48d69df65ef2d4e300d41b15f6cb42bbe5da5041c4fce400e6301df85d58e9642e4571fd6dc SHA512 c2a462229304f179b9edf240b2ffb47a009c8b0ae22062718b0cdb8c4a7cb7fb45e00118c6e64d7855e57b553aed4255dad0da05d7f86d59adb791d9a684349a
-EBUILD wayfire-9999.ebuild 2816 BLAKE2B f9090c39d744c03c46cd1467be69958debcf2d94702de78fffad9b3999d10a564ba07a7800f0eeddaf692b9c4f5a8d78f0cefa1a7a80082560c1f0fe048b4bdd SHA512 7d70ded038c7489b89b63e9ca1c6fa531a3d181672e806c6e625beb0b6660ad51a082cea6fe4c46f21e861cd9f7908ebef6a08fcb03ea845c71206ada88c4d8f
+EBUILD wayfire-9999.ebuild 2878 BLAKE2B d738a8395b21ba06afaaa29fa3878a82e8592665ff633b7931b27b3153bde4c7a12c2f879ad7e60a7b568c815d94292effa74fc974d3463b2cd54f147a3b644e SHA512 f1274c4816ff843d7b03a94a64e430c360061e7f3b631346f6ef75f8bfb85a3b816910e2ec00e5fcd7159553498b4ad4e5679cb83bcdd1643347a116a9ab7f76
MISC metadata.xml 920 BLAKE2B 0b0ad723f8383bc65a87cbab8b7195d33a3dabd9ea73c8c2f91957151b9f324e63ea4b25c480d44eba391f595ffe3a9d0c39800eaa9bf4b81b47cb8e3262222f SHA512 c0eb23bcfc87b274bcb2c96b0e52cb91fb6dd3ffb51ef4285f34af3a9861122c0d30179c5989070de85ebcd0dff282906bb4c15c4983bfdce123c5c3b101561e
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 )
"