From 56bdf16015790e63fe992fabfc7335a20ccd2ed0934273b325c30ce2a30c97f7 Mon Sep 17 00:00:00 2001 From: Florian Date: Sun, 22 Oct 2023 22:15:05 +0000 Subject: [PATCH 1/3] Accepting request 1119456 from home:sp1rit Update to version 0.31.0 OBS-URL: https://build.opensuse.org/request/show/1119456 OBS-URL: https://build.opensuse.org/package/show/X11:Wayland/hyprland?expand=0&rev=44 --- ...h => 0001-fixed-patchd-wlroots-build.patch | 18 +-- hyprland-0.30.0.tar.xz | 3 - hyprland-0.31.0.tar.xz | 3 + hyprland.changes | 111 ++++++++++++++++++ hyprland.spec | 4 +- 5 files changed, 127 insertions(+), 12 deletions(-) rename 0002-fix-patched-wlroots-build.patch => 0001-fixed-patchd-wlroots-build.patch (58%) delete mode 100644 hyprland-0.30.0.tar.xz create mode 100644 hyprland-0.31.0.tar.xz diff --git a/0002-fix-patched-wlroots-build.patch b/0001-fixed-patchd-wlroots-build.patch similarity index 58% rename from 0002-fix-patched-wlroots-build.patch rename to 0001-fixed-patchd-wlroots-build.patch index a4a852a..5a02a29 100644 --- a/0002-fix-patched-wlroots-build.patch +++ b/0001-fixed-patchd-wlroots-build.patch @@ -1,14 +1,18 @@ -From e829c515d3bc5fa140ceede23ade99b8f76455d3 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Florian=20=22sp1rit=22=E2=80=8B?= -Date: Tue, 30 May 2023 12:14:58 +0200 -Subject: [PATCH 2/2] fix patched wlroots build +From 3af05976a2b4cc7481664d6b5f206f08a789612a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Florian=20=22sp1rit=22=E2=80=8B?= +Date: Sun, 22 Oct 2023 23:54:43 +0200 +Subject: [PATCH] fixed patchd wlroots build +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +Signed-off-by: Florian "sp1rit"​ --- subprojects/packagefiles/wlroots-meson-build.patch | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/subprojects/packagefiles/wlroots-meson-build.patch b/subprojects/packagefiles/wlroots-meson-build.patch -index 5e7565a..ef18541 100644 +index 6741fdc..2ba26dd 100644 --- a/subprojects/packagefiles/wlroots-meson-build.patch +++ b/subprojects/packagefiles/wlroots-meson-build.patch @@ -2,9 +2,10 @@ diff --git a/include/meson.build b/include/meson.build @@ -18,11 +22,11 @@ index 5e7565a..ef18541 100644 -@@ -1,4 +1,5 @@ +@@ -1,4 +1,6 @@ -subdir('wlr') - +run_command('ln', '-s', join_paths(meson.project_source_root(), 'include', 'wlr'), join_paths(meson.project_source_root(), 'include', 'wlroots'), check: true) + +run_command('ln', '-sf', join_paths(meson.project_source_root(), 'include', 'wlr'), join_paths(meson.project_source_root(), 'include', 'wlroots'), check: true) ++run_command('ln', '-s', join_paths(meson.project_build_root(), 'include', 'wlroots'), join_paths(meson.project_build_root(), 'include', 'wlr'), check: true) +subdir('wlroots') exclude_files = ['meson.build', 'config.h.in', 'version.h.in'] -- -2.40.1 +2.42.0 diff --git a/hyprland-0.30.0.tar.xz b/hyprland-0.30.0.tar.xz deleted file mode 100644 index cb14299..0000000 --- a/hyprland-0.30.0.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7adc8d9990579c39b63c3f30dcd9d83df02f0cd7f94932c0be581dd12b7b3bfd -size 11722456 diff --git a/hyprland-0.31.0.tar.xz b/hyprland-0.31.0.tar.xz new file mode 100644 index 0000000..2704219 --- /dev/null +++ b/hyprland-0.31.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:312a55407c1094e21978135681123e3e3f0df7f7955d5d6265747afa92198e8a +size 11726436 diff --git a/hyprland.changes b/hyprland.changes index 06b6cde..56e7907 100644 --- a/hyprland.changes +++ b/hyprland.changes @@ -1,3 +1,114 @@ +------------------------------------------------------------------- +Thu Oct 19 14:12:29 UTC 2023 - Florian "spirit" + +- Update to version 0.31.0: + + A sizeable update for y'all, with quite a few breaking changes. + + Breaking changes: + - decoration:multisample_edges has been nuked. A better + algorithm is used by default. + - misc:disable_hypr_chan has been removed. The new, more + flexible option is misc:force_default_wallpaper with a default + of -1. Setting to 0 will use the non-anime backgrounds + exclusively and behave like the old disable_hypr_chan = true. + - All group-related options have been moved to group:, please + see the docs here: + https://wiki.hyprland.org/Configuring/Variables/#group + - Some makefile stuff has been changed/removed + + New features: + - Plugin API: Add version query (#3545) + - dispatchers: Add option to center the cursor on the focused + window when switching workspaces (#3528) + - includes: add missing log include to animatedvariable + - input: Add map to region options for tablets (#3425) + - internal: Add GTK portal as fallback (#3469) + - internal: add a watchdog + - layout: add new_window_takes_over_fullscreen mode 2 + - makefile: fix using -d test for a binary file AND re-add + missing portals conf (#3570) + - master: add option to drag and drop windows at cursor position + (#3465) + - misc: add misc:new_window_takes_over_fullscreen + - renderer: add force_wallpaper instead of no_hypr_chan (#3459) + - renderer: add further conditions to solitary recheck + - renderer: Tearing implementation (#3441) + - workspacerules: Add a persistent workspace rule (#3530) + + Fixes: + - dispatchers: fix extra monitor offset when snapping floating + (#3520) + - events: fixup empty events not being sent on unmap + - hyprctl: fix crash in unsafe state with activeworkspace + - input: fix unused variable warn + - input: fix warn + - input: fixup frame schedule conditions on mouse move + - input: fixup mouse down refocus conditions + - input: minor constraint fixes + - master: fix drop_at_cursor on workspace 2 (#3512) + - renderer: considerable fixes to repaint logic + - renderer: fix missing check for surfaceCount in rechecking + solitary + - renderer: fixup solitary conditions + + Other: + - Debug: respect logging settings for wlr (#3584) + - animationmgr: damage floating windows on workspace anim + - build: Unbreak build without precompiled headers (#3400) + - build: guard execinfo.h via build systems (#3547) + - build: include version.h in PluginAPI.hpp (#3571) + - cleanup: Replace find() with C++20 starts_with(), ends_with() + and contains() (#3572) + - config: mention force_default_wallpaper in default configs + - config: restore configCurrenPath after sourcing file (#3339) + - config: trim spaces in the rule field in windowrulev2 + - crashreporter: avoid using empty CACHE_HOME + - dispatchers: support number as arg in changegroupactive + (#3329) + - dwindle: Avoid rounding errors in window position (#3524) + - events: don't focus new window if spawned behind fullscreen + - events: set new window alpha to 0 if it's tiled behind + fullscreen + - examples/readme: mention tearing + - groups: create group and groupbar config sections (#3522) + - groups: ensure consistency in dispatcher behavior with global + group lock (#3531) + - hyprctl: avoid .pop_back() on empty string + - hyprctl: log activelyTearing for monitors + - input: avoid using the wrong surface in drag focus force + - input: properly track mouse focus on drag operations + - internal: Further unsafe state improvements (#3404) + - internal: better versioning (#3543) + - internal: include missing header (#3464) + - internal: removed Herobrine + - internal: use pragma once in version.h + - layershell: avoid configure on unchanged size + - layout: check for specialworkspace in floating toggle + - layout: don't discard fullscreen on new tiling + - log: log wlr errors regardless of env + - meson: Sort input file list (#3550) + - meson: use ln with force flag (#3568) + - monitor: ensure vrr on workspace change + - notifications: Schedule a frame on notification creation + (#3556) + - pluginapi: remove starting newline in demangled func name + (#3502) + - props: bump ver to v0.31.0 + - render: stop locking SWC on tearing + - renderer: avoid spamming software cursor locks + - renderer: extract solitary check into frame handler + - renderer: lock software cursors while tearing + - renderer: nuke multisample_edges in favor of a faster + algorithm + - renderer: optimize render pipeline when there is a solitary + client + - renderer: remove old debug log + - screencopy: enhance error logging + - shaders: Remove redundant clamp of smoothsteps return value. + (#3456) + - shaders: improve border rounding + - tearing: cleanup vars and avoid rendering before drm is ready + - watchdog: don't hang on exit + - watchdog: initialize after config + - watchdog: remove thread on destroy + - wsrules: check for workspace ID matches on numbered workspaces + ------------------------------------------------------------------- Sat Sep 23 08:11:28 UTC 2023 - Florian diff --git a/hyprland.spec b/hyprland.spec index 9a06f56..38634c7 100644 --- a/hyprland.spec +++ b/hyprland.spec @@ -20,13 +20,13 @@ %bcond_without devel Name: hyprland -Version: 0.30.0 +Version: 0.31.0 Release: 0 Summary: Dynamic tiling Wayland compositor License: BSD-3-Clause URL: https://hyprland.org/ Source0: %{name}-%{version}.tar.xz -Patch1: 0002-fix-patched-wlroots-build.patch +Patch1: 0001-fixed-patchd-wlroots-build.patch BuildRequires: cmake BuildRequires: gcc-c++ >= 11 BuildRequires: git From e287efa1e3f7685794f4ecfa6aa77338227a0b269b05152840b49af709ece5fa Mon Sep 17 00:00:00 2001 From: Florian Date: Sun, 22 Oct 2023 22:26:26 +0000 Subject: [PATCH 2/3] Accepting request 1119458 from home:sp1rit Added "fix_ia86_std_clamp.patch" that is required for Hyprland to build on ia86. OBS-URL: https://build.opensuse.org/request/show/1119458 OBS-URL: https://build.opensuse.org/package/show/X11:Wayland/hyprland?expand=0&rev=45 --- fix_ia86_std_clamp.patch | 31 +++++++++++++++++++++++++++++++ hyprland.changes | 6 ++++++ hyprland.spec | 2 ++ 3 files changed, 39 insertions(+) create mode 100644 fix_ia86_std_clamp.patch diff --git a/fix_ia86_std_clamp.patch b/fix_ia86_std_clamp.patch new file mode 100644 index 0000000..0074b3c --- /dev/null +++ b/fix_ia86_std_clamp.patch @@ -0,0 +1,31 @@ +From 913c8b81ad44e159e5f0b555a1254451065f317d Mon Sep 17 00:00:00 2001 +From: Jan Beich +Date: Mon, 16 Oct 2023 21:26:45 +0200 +Subject: [PATCH] renderer: cast std::clamp args to be of the same type + +src/render/OpenGL.cpp:1769:41: error: no matching function for call to 'clamp' + const auto FORCEWALLPAPER = std::clamp(*PFORCEWALLPAPER, -1L, 2L); + ^~~~~~~~~~ +/usr/include/c++/v1/__algorithm/clamp.h:38:1: note: candidate template ignored: deduced conflicting types for parameter '_Tp' ('int64_t' (aka 'long long') vs. 'long') +clamp(const _Tp& __v, const _Tp& __lo, const _Tp& __hi) +^ +/usr/include/c++/v1/__algorithm/clamp.h:27:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided +clamp(const _Tp& __v, const _Tp& __lo, const _Tp& __hi, _Compare __comp) +^ +--- + src/render/OpenGL.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/render/OpenGL.cpp b/src/render/OpenGL.cpp +index 8ad8e0c140..2d8ee92b2d 100644 +--- a/src/render/OpenGL.cpp ++++ b/src/render/OpenGL.cpp +@@ -1766,7 +1766,7 @@ void CHyprOpenGLImpl::createBGTextureForMonitor(CMonitor* pMonitor) { + static auto* const PFORCEHYPRCHAN = &g_pConfigManager->getConfigValuePtr("misc:force_hypr_chan")->intValue; + static auto* const PFORCEWALLPAPER = &g_pConfigManager->getConfigValuePtr("misc:force_default_wallpaper")->intValue; + +- const auto FORCEWALLPAPER = std::clamp(*PFORCEWALLPAPER, -1L, 2L); ++ const auto FORCEWALLPAPER = std::clamp(*PFORCEWALLPAPER, static_cast(-1L), static_cast(2L)); + + // release the last tex if exists + const auto PTEX = &m_mMonitorBGTextures[pMonitor]; diff --git a/hyprland.changes b/hyprland.changes index 56e7907..9d14cbb 100644 --- a/hyprland.changes +++ b/hyprland.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Sun Oct 22 22:21:49 UTC 2023 - Florian "spirit" + +- Added "fix_ia86_std_clamp.patch" that is required for Hyprland to + build on ia86. + ------------------------------------------------------------------- Thu Oct 19 14:12:29 UTC 2023 - Florian "spirit" diff --git a/hyprland.spec b/hyprland.spec index 38634c7..23b80e6 100644 --- a/hyprland.spec +++ b/hyprland.spec @@ -27,6 +27,8 @@ License: BSD-3-Clause URL: https://hyprland.org/ Source0: %{name}-%{version}.tar.xz Patch1: 0001-fixed-patchd-wlroots-build.patch +# Source: https://github.com/hyprwm/Hyprland/pull/3589. Will be included in the next release. +Patch2: fix_ia86_std_clamp.patch BuildRequires: cmake BuildRequires: gcc-c++ >= 11 BuildRequires: git From e34815aec185618cee9a9de6df0ec4bfe42bfe4fd32e4f0404fd88d20e6b716f Mon Sep 17 00:00:00 2001 From: Florian Date: Mon, 23 Oct 2023 14:27:51 +0000 Subject: [PATCH 3/3] Accepting request 1119680 from home:sp1rit Noted renaming of patch in changelog OBS-URL: https://build.opensuse.org/request/show/1119680 OBS-URL: https://build.opensuse.org/package/show/X11:Wayland/hyprland?expand=0&rev=46 --- hyprland.changes | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hyprland.changes b/hyprland.changes index 9d14cbb..4706926 100644 --- a/hyprland.changes +++ b/hyprland.changes @@ -114,6 +114,8 @@ Thu Oct 19 14:12:29 UTC 2023 - Florian "spirit" - watchdog: initialize after config - watchdog: remove thread on destroy - wsrules: check for workspace ID matches on numbered workspaces +- Renamed 0002-fix-patched-wlroots-build.patch to + 0001-fixed-patchd-wlroots-build.patch simply due to git doing this ------------------------------------------------------------------- Sat Sep 23 08:11:28 UTC 2023 - Florian