Accepting request 1223885 from X11:Wayland
Update to version 0.45.0 OBS-URL: https://build.opensuse.org/request/show/1223885 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/hyprland?expand=0&rev=30
This commit is contained in:
commit
c74ee5ecc8
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:1ce5b9e6eddd57cde64fd0626cfd799550df6947883f795f5222d8d2b6725a0f
|
||||
size 51320696
|
3
hyprland-0.45.0.tar.xz
Normal file
3
hyprland-0.45.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:06d2122ef5bcbdde3bac0e2bd03c93c0419a7e4c1fe22bab539e53c46dac0419
|
||||
size 51332744
|
147
hyprland.changes
147
hyprland.changes
@ -1,3 +1,150 @@
|
||||
-------------------------------------------------------------------
|
||||
Sat Nov 9 16:26:26 UTC 2024 - Florian "spirit" <sp1rit@disroot.org>
|
||||
|
||||
- Update to version 0.45.0:
|
||||
+ A big update, with tons of fixes, improvements and new stuff!
|
||||
+ Breaking changes
|
||||
- no_gaps_when_only has been removed. See the wiki for equivalent
|
||||
workspace rules.
|
||||
- decoration:shadow_ variables have moved. See the wiki for the
|
||||
new names.
|
||||
+ New features:
|
||||
- feat: add a custom made treewide formatter (#7992)
|
||||
- groups: add group_on_movetoworkspace (#8159)
|
||||
- groups: add merge_groups_on_groupbar (#8362)
|
||||
- hyprctl: add caps/num lock state for keyboards (#8145)
|
||||
- hyprctl: add mirrorOf to hyprctl monitors
|
||||
- hyprpm: Add option to notify on fail and keep original notify
|
||||
(#8167)
|
||||
- input: add snapping to floating windows (#8088)
|
||||
- layout: add drag_into_group to control merging dragging windows
|
||||
(#8004)
|
||||
- layout: add merge_floated_into_tiled_on_groupbar (#8042)
|
||||
- pointer: add default auto for no_hw_cursors
|
||||
- protocols: Add support for hyprland-ctm-control-v1 (#8023)
|
||||
- renderer: Add a missing texture asset and a user check
|
||||
- renderer: add expand_undersized_textures
|
||||
- shadow: add sharp and refactor options
|
||||
- snap: add option border_overlap and other improvements (#8289)
|
||||
+ Fixes:
|
||||
- IME: Fixup IME popup candidate windows position when scale is
|
||||
not 1.0 (#8117)
|
||||
- Makefile: fix legacyrendererdebug typo (#8214)
|
||||
- Systemd fixes
|
||||
- config: fix generateConfig loop (#8164)
|
||||
- core: fix group members disappearing when you move the group to
|
||||
another monitor (#8237)
|
||||
- drm-lease: fix crashes and implementation (#8116)
|
||||
- drm-syncobj: fix crash on missing timelines
|
||||
- drm-timeline: Add check for conflicting acquire and release
|
||||
points (#8083)
|
||||
- group: fix moveWindowIntoGroup (#8297)
|
||||
- groups: fix swallowing (#8223)
|
||||
- hyprerror: fix height calc with bottom bar (#8043)
|
||||
- hyprpm: Fix crashes due to misplaced fmt argument(s) (#8140)
|
||||
- input: Fix VRR for constrained cursors (#6877)
|
||||
- internal: cleanup CMonitor usage and fix a few ref hogs
|
||||
- keybinds: fixup xkb_states for resolve_by_sym
|
||||
- layersurface: fixup brace style
|
||||
- layout: fix auto group when opening a new window in a
|
||||
non-focused workspace using window rules (#8006)
|
||||
- layout: window snapping cleanup + fixes
|
||||
- misc: Fix bad links to wiki (#8240)
|
||||
- monitors: fix vrr breaking monitor disconnect (#8314)
|
||||
- notif-overlay: add a bit of padding for icons
|
||||
- renderer: fix floating window damage (#8182)
|
||||
- renderer: minor fixup to window rendering logic (#8359)
|
||||
- screencopy: fix build with legacyrenderer
|
||||
- screencopy: fix screencopy frames not being cleaned up (#8017)
|
||||
- shaders: fixup jagged edges in texture rounded corners
|
||||
- shadow: fix double premultiplication
|
||||
- xwayland: minor cleanups and fixes (#8076)
|
||||
- xwayland: minor fixups for stability (#8323)
|
||||
+ Other:
|
||||
- Build with hyprland-session.service (#8251)
|
||||
- config/example: add optional smart gaps to the default config
|
||||
- defaultConfig: add a nofocus rule for weird X windows
|
||||
- Improve hyprland-session.service (#8225)
|
||||
- compositor: make sure we don't ret early on no surface
|
||||
- config/layout: nuke no_gaps_when_only (#8072)
|
||||
- config: give simple help for super+q not working
|
||||
- core: move internal structures to monitor pointers (#8266)
|
||||
- default/config: improve default animations
|
||||
- defaultConfig: improve smart gaps
|
||||
- defaultConfig: update default config values for shadows (#8360)
|
||||
- dispatchers: allow leading whitespace in window parameter
|
||||
(#8016)
|
||||
- example: update desktop file to include DesktopNames
|
||||
- example/hyprland-session.service: add support for xdg autostart
|
||||
(#8230)
|
||||
- foreign-toplevel-wlr: don't send updates to X11 OR windows
|
||||
- foreign-toplevel: don't send updates to X11 OR windows
|
||||
- gammactrl: guard pMonitor in setGamma
|
||||
- groupbar: set locked color when groups are globally locked
|
||||
(#8257)
|
||||
- hyprctl: convert std::cout and std::cerr to std::println()
|
||||
- hyprctl: move setprop into dispatchers (#8275)
|
||||
- hyprctl: reload windowrules on reloadAll
|
||||
- hyprerror: make hyprerror reserve space (#8040)
|
||||
- hyprland-systemd.desktop improvements (#8318)
|
||||
- hyprland-systemd.desktop: change name back to Hyprland (#8351)
|
||||
- hyprland: convert std::cout and std::cerr to std::println()
|
||||
- hyprpm: convert std::cout and std::cerr to std::println()
|
||||
- hyprpm: disallow shallow on unknown branch
|
||||
- input: Refocus window on scrolling if follows mouse (#8361)
|
||||
- input: cleanup device naming logic
|
||||
- input: ignore non-kb ls-es in refocusLastWindow
|
||||
- internal: Move CMonitor to SP (#8178)
|
||||
- internal: Remove some unused lambda captures (#8218)
|
||||
- internal: check size limit in layouts (#8298)
|
||||
- internal: few more marginal optimisations from profiling
|
||||
(#8271)
|
||||
- internal: improve version query and define HYPRLAND_VERSION
|
||||
(#8034)
|
||||
- internal: more profiling less calls and local copies (#8300)
|
||||
- internal: optimize cursor move a bit (#8264)
|
||||
- internal: use clampWindowSize to unify min/maxsize handling
|
||||
(#8014)
|
||||
- keyboard: update group state on change for the sym resolve
|
||||
state
|
||||
- layershell: check if workspace is valid in onMap
|
||||
- layershell: minor cleanups and improvements to focus
|
||||
- layersurface: round geom in arrangeLayerArray
|
||||
- layout: deny auto-grouping a new floating window into a tiled
|
||||
group (#8108)
|
||||
- layout: don't snap to self and allow same-pid snaps
|
||||
- layout: enable group rules for new floating windows (#8122)
|
||||
- layout: move applyGroupRules() to onWindowCreated() (#8139)
|
||||
- layout: remove unnecessary check after 45e8219 (#8037)
|
||||
- layout: simplify the conditions to autogroup (#8120)
|
||||
- layout: slight adjustments to snapping logic (#8273)
|
||||
- misc: refactor version command (#8027)
|
||||
- monitor: avoid crash on released buffer in surf
|
||||
- monitor: modernize/refactor last legacy-handled events
|
||||
- output/xdg-output: avoid sending events to released globals
|
||||
- output: send enter events on late wl_output binds
|
||||
- output: update state even if no owner exists (#8044)
|
||||
- pointer: expand sw cursor damage box
|
||||
- renderer: don't rely on datarootdir for local share
|
||||
- renderer: improve api around new framebuffer changes
|
||||
- renderer: reserve space for error at the bottom if that's set
|
||||
- renderer: safeguard against non-sampleable currentFB in
|
||||
blurMainFb
|
||||
- seat: avoid sending pointless 'keymap' and 'repeat_info' events
|
||||
(#8276)
|
||||
- security-context: avoid UB in C macro (#8229)
|
||||
- security-context: close client fds after disconnect
|
||||
- security-context: implement protocol
|
||||
- session-lock: reset seat grab on a new session lock (#8147)
|
||||
- shaders: improve corner AA in borders shader
|
||||
- swallow: check if swallow_regex doesn't exist (#8265)
|
||||
- tablet: use inputMgr unified naming scheme
|
||||
- window: properly break cycles in X11TransientFor
|
||||
- windowrules: allow specifying max size in size window rule
|
||||
(#8021)
|
||||
- xcursor: don't crash on broken permissions in X themes
|
||||
- xwm: avoid infinite parent lookup loop in lookupParentExists
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 9 15:11:23 UTC 2024 - Florian "sp1rit" <sp1rit@disroot.org>
|
||||
|
||||
|
@ -22,7 +22,7 @@
|
||||
%define shortname hypr
|
||||
|
||||
Name: hyprland
|
||||
Version: 0.44.1
|
||||
Version: 0.45.0
|
||||
Release: 0
|
||||
Summary: Dynamic tiling Wayland compositor
|
||||
License: BSD-3-Clause
|
||||
@ -37,7 +37,7 @@ BuildRequires: git
|
||||
BuildRequires: glslang-devel
|
||||
BuildRequires: meson
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: pkgconfig(aquamarine)
|
||||
BuildRequires: pkgconfig(aquamarine) >= 0.4.2
|
||||
BuildRequires: pkgconfig(cairo)
|
||||
BuildRequires: pkgconfig(egl)
|
||||
BuildRequires: pkgconfig(gbm) >= 17.1.0
|
||||
@ -53,6 +53,7 @@ BuildRequires: pkgconfig(libudev)
|
||||
BuildRequires: pkgconfig(pango)
|
||||
BuildRequires: pkgconfig(pangocairo)
|
||||
BuildRequires: pkgconfig(pixman-1) >= 0.42.0
|
||||
BuildRequires: pkgconfig(systemd)
|
||||
BuildRequires: pkgconfig(tomlplusplus)
|
||||
BuildRequires: pkgconfig(uuid)
|
||||
BuildRequires: pkgconfig(vulkan) >= 1.2.182
|
||||
@ -178,6 +179,7 @@ sed -i 's;REPLACE_ME_WITH_PREFIX;%{_prefix};' hyprpm/src/core/DataState.cpp
|
||||
%{_datadir}/%{shortname}/lockdead2.png
|
||||
%dir %{_datadir}/wayland-sessions/
|
||||
%{_datadir}/wayland-sessions/%{name}.desktop
|
||||
%{_datadir}/wayland-sessions/%{name}-systemd.desktop
|
||||
%dir %{_datadir}/xdg-desktop-portal
|
||||
%{_datadir}/xdg-desktop-portal/%{name}-portals.conf
|
||||
%{_mandir}/man1/Hyprland.*
|
||||
|
@ -1,4 +1,4 @@
|
||||
From c34dc954cc6388e9bc9ea608152ae4fc3f201bb1 Mon Sep 17 00:00:00 2001
|
||||
From 59baf7887afbb81fc56fc211571f50c6f6806be0 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Florian=20sp1rit=E2=80=8B?= <sp1rit@disroot.org>
|
||||
Date: Fri, 14 Jun 2024 23:43:46 +0200
|
||||
Subject: [PATCH] openSUSE: Use hyprland-devel instead of downloading from
|
||||
@ -17,11 +17,11 @@ It also adds a new check to ensure that the subpackage is instealled.
|
||||
Signed-off-by: Florian "sp1rit" <sp1rit@disroot.org>
|
||||
---
|
||||
hyprpm/src/core/DataState.cpp | 2 +-
|
||||
hyprpm/src/core/PluginManager.cpp | 140 +++++-------------------------
|
||||
2 files changed, 21 insertions(+), 121 deletions(-)
|
||||
hyprpm/src/core/PluginManager.cpp | 138 ++++--------------------------
|
||||
2 files changed, 20 insertions(+), 120 deletions(-)
|
||||
|
||||
diff --git a/hyprpm/src/core/DataState.cpp b/hyprpm/src/core/DataState.cpp
|
||||
index 61ad336..99dbadd 100644
|
||||
index fb8679d..a1c7026 100644
|
||||
--- a/hyprpm/src/core/DataState.cpp
|
||||
+++ b/hyprpm/src/core/DataState.cpp
|
||||
@@ -21,7 +21,7 @@ std::string DataState::getDataStatePath() {
|
||||
@ -34,10 +34,10 @@ index 61ad336..99dbadd 100644
|
||||
|
||||
void DataState::ensureStateStoreExists() {
|
||||
diff --git a/hyprpm/src/core/PluginManager.cpp b/hyprpm/src/core/PluginManager.cpp
|
||||
index 6988547..036c705 100644
|
||||
index 57c6764..7f2ca09 100644
|
||||
--- a/hyprpm/src/core/PluginManager.cpp
|
||||
+++ b/hyprpm/src/core/PluginManager.cpp
|
||||
@@ -14,6 +14,7 @@
|
||||
@@ -17,6 +17,7 @@
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
@ -45,26 +45,25 @@ index 6988547..036c705 100644
|
||||
#include <pwd.h>
|
||||
#include <unistd.h>
|
||||
|
||||
@@ -406,134 +407,20 @@ bool CPluginManager::updateHeaders(bool force) {
|
||||
@@ -412,141 +413,27 @@ bool CPluginManager::updateHeaders(bool force) {
|
||||
const auto HLVER = getHyprlandVersion();
|
||||
|
||||
if (!hasDeps()) {
|
||||
- std::cerr << "\n" << Colors::RED << "✖" << Colors::RESET << " Could not update. Dependencies not satisfied. Hyprpm requires: cmake, meson, cpio\n";
|
||||
+ std::cerr << "\n" << Colors::RED << "✖" << Colors::RESET << " Could not update. Dependencies not satisfied. Hyprpm requires: hyprland-devel, cmake, meson, cpio\n";
|
||||
- std::println("\n{}", failureString("Could not update. Dependencies not satisfied. Hyprpm requires: cmake, meson, cpio"));
|
||||
+ std::println("\n{}", failureString("Could not update. Dependencies not satisfied. Hyprpm requires: hyprland-devel, cmake, meson, cpio"));
|
||||
return false;
|
||||
}
|
||||
-
|
||||
|
||||
- if (!std::filesystem::exists("/tmp/hyprpm")) {
|
||||
- std::filesystem::create_directory("/tmp/hyprpm");
|
||||
- std::filesystem::permissions("/tmp/hyprpm", std::filesystem::perms::all, std::filesystem::perm_options::replace);
|
||||
- }
|
||||
-
|
||||
- if (!force && headersValid() == HEADERS_OK) {
|
||||
- std::cout << "\n" << std::string{Colors::GREEN} + "✔" + Colors::RESET + " Headers up to date.\n";
|
||||
- std::println("\n{}", successString("Headers up to date."));
|
||||
- return true;
|
||||
- }
|
||||
-
|
||||
+
|
||||
CProgressBar progress;
|
||||
- progress.m_iMaxSteps = 5;
|
||||
+ progress.m_iMaxSteps = 1;
|
||||
@ -76,74 +75,74 @@ index 6988547..036c705 100644
|
||||
- const auto WORKINGDIR = "/tmp/hyprpm/hyprland-" + USERNAME;
|
||||
-
|
||||
- if (!createSafeDirectory(WORKINGDIR)) {
|
||||
- std::cerr << "\n" << Colors::RED << "✖" << Colors::RESET << " Could not prepare working dir for hl\n";
|
||||
- std::println("\n{}", failureString("Could not prepare working dir for hl"));
|
||||
- return false;
|
||||
- }
|
||||
-
|
||||
- progress.printMessageAbove(std::string{Colors::YELLOW} + "!" + Colors::RESET + " Cloning https://github.com/hyprwm/hyprland, this might take a moment.");
|
||||
- progress.printMessageAbove(statusString("!", Colors::YELLOW, "Cloning https://github.com/hyprwm/Hyprland, this might take a moment."));
|
||||
-
|
||||
- const bool bShallow = (HLVER.branch == "main" || HLVER.branch == "") && !m_bNoShallow;
|
||||
- const bool bShallow = (HLVER.branch == "main") && !m_bNoShallow;
|
||||
-
|
||||
- // let us give a bit of leg-room for shallowing
|
||||
- // due to timezones, etc.
|
||||
- const std::string SHALLOW_DATE =
|
||||
- trim(HLVER.date).empty() ? "" : execAndGet("LC_TIME=\"en_US.UTF-8\" date --date='" + HLVER.date + " - 1 weeks' '+\%a \%b \%d \%H:\%M:\%S \%Y'");
|
||||
- const std::string SHALLOW_DATE = trim(HLVER.date).empty() ? "" : execAndGet("LC_TIME=\"en_US.UTF-8\" date --date='" + HLVER.date + " - 1 weeks' '+%a %b %d %H:%M:%S %Y'");
|
||||
-
|
||||
- if (m_bVerbose && bShallow)
|
||||
- progress.printMessageAbove(std::string{Colors::BLUE} + "[v] " + Colors::RESET + "will shallow since: " + SHALLOW_DATE);
|
||||
- progress.printMessageAbove(verboseString("will shallow since: {}", SHALLOW_DATE));
|
||||
-
|
||||
- std::string ret =
|
||||
- execAndGet("cd /tmp/hyprpm && git clone --recursive https://github.com/hyprwm/hyprland hyprland-" + USERNAME + (bShallow ? " --shallow-since='" + SHALLOW_DATE + "'" : ""));
|
||||
- execAndGet("cd /tmp/hyprpm && git clone --recursive https://github.com/hyprwm/Hyprland hyprland-" + USERNAME + (bShallow ? " --shallow-since='" + SHALLOW_DATE + "'" : ""));
|
||||
-
|
||||
- if (!std::filesystem::exists(WORKINGDIR)) {
|
||||
- progress.printMessageAbove(std::string{Colors::RED} + "✖" + Colors::RESET + " Clone failed. Retrying without shallow.");
|
||||
- progress.printMessageAbove(failureString("Clone failed. Retrying without shallow."));
|
||||
- ret = execAndGet("cd /tmp/hyprpm && git clone --recursive https://github.com/hyprwm/hyprland hyprland-" + USERNAME);
|
||||
- }
|
||||
-
|
||||
- if (!std::filesystem::exists(WORKINGDIR + "/.git")) {
|
||||
- std::cerr << "\n" << Colors::RED << "✖" << Colors::RESET << " Could not clone the hyprland repository. shell returned:\n" << ret << "\n";
|
||||
- std::println(stderr, "\n{}", failureString("Could not clone the Hyprland repository. shell returned:\n{}", ret));
|
||||
- return false;
|
||||
- }
|
||||
-
|
||||
- progress.printMessageAbove(std::string{Colors::GREEN} + "✔" + Colors::RESET + " cloned");
|
||||
- progress.printMessageAbove(successString("Hyprland cloned"));
|
||||
- progress.m_iSteps = 2;
|
||||
- progress.m_szCurrentMessage = "Checking out sources";
|
||||
- progress.print();
|
||||
-
|
||||
- if (m_bVerbose)
|
||||
- progress.printMessageAbove(std::string{Colors::BLUE} + "[v] " + Colors::RESET + "will run: " + "cd " + WORKINGDIR + " && git checkout " + HLVER.hash + " 2>&1");
|
||||
- progress.printMessageAbove(verboseString("will run: cd {} && git checkout {} 2>&1", WORKINGDIR, HLVER.hash));
|
||||
-
|
||||
- ret = execAndGet("cd " + WORKINGDIR + " && git checkout " + HLVER.hash + " 2>&1");
|
||||
-
|
||||
- if (ret.contains("fatal: unable to read tree")) {
|
||||
- std::cerr << "\n"
|
||||
- << Colors::RED << "✖" << Colors::RESET
|
||||
- << " Could not checkout the running Hyprland commit. If you are on -git, try updating.\nYou can also try re-running hyprpm update with --no-shallow.\n";
|
||||
- std::println(stderr, "\n{}",
|
||||
- failureString("Could not checkout the running Hyprland commit. If you are on -git, try updating.\n"
|
||||
- "You can also try re-running hyprpm update with --no-shallow."));
|
||||
- return false;
|
||||
- }
|
||||
-
|
||||
- if (m_bVerbose)
|
||||
- progress.printMessageAbove(std::string{Colors::BLUE} + "[v] " + Colors::RESET + "git returned (co): " + ret);
|
||||
- progress.printMessageAbove(verboseString("git returned (co): {}", ret));
|
||||
-
|
||||
- ret = execAndGet("cd " + WORKINGDIR + " ; git rm subprojects/tracy ; git submodule update --init 2>&1 ; git reset --hard --recurse-submodules " + HLVER.hash);
|
||||
-
|
||||
- if (m_bVerbose)
|
||||
- progress.printMessageAbove(std::string{Colors::BLUE} + "[v] " + Colors::RESET + "git returned (rs): " + ret);
|
||||
- progress.printMessageAbove(verboseString("git returned (rs): {}", ret));
|
||||
-
|
||||
- progress.printMessageAbove(std::string{Colors::GREEN} + "✔" + Colors::RESET + " checked out to running ver");
|
||||
- progress.printMessageAbove(successString("checked out to running ver"));
|
||||
- progress.m_iSteps = 3;
|
||||
- progress.m_szCurrentMessage = "Building Hyprland";
|
||||
- progress.print();
|
||||
-
|
||||
- progress.printMessageAbove(std::string{Colors::YELLOW} + "!" + Colors::RESET + " configuring Hyprland");
|
||||
+ progress.m_szCurrentMessage = "Checking headers";
|
||||
progress.print();
|
||||
|
||||
- progress.printMessageAbove(statusString("!", Colors::YELLOW, "configuring Hyprland"));
|
||||
-
|
||||
- if (m_bVerbose)
|
||||
- progress.printMessageAbove(std::string{Colors::BLUE} + "[v] " + Colors::RESET + "setting PREFIX for cmake to " + DataState::getHeadersPath());
|
||||
- progress.printMessageAbove(verboseString("setting PREFIX for cmake to {}", DataState::getHeadersPath()));
|
||||
-
|
||||
- ret = execAndGet(std::format("cd {} && cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX:STRING=\"{}\" -S . -B ./build -G Ninja", WORKINGDIR,
|
||||
- DataState::getHeadersPath()));
|
||||
- if (m_bVerbose)
|
||||
- progress.printMessageAbove(std::string{Colors::BLUE} + "[v] " + Colors::RESET + "cmake returned: " + ret);
|
||||
- progress.printMessageAbove(verboseString("cmake returned: {}", ret));
|
||||
-
|
||||
- if (ret.contains("CMake Error at")) {
|
||||
- // missing deps, let the user know.
|
||||
@ -152,49 +151,48 @@ index 6988547..036c705 100644
|
||||
- missing = missing.substr(0, missing.find("-- Configuring incomplete"));
|
||||
- missing = missing.substr(0, missing.find_last_of('\n'));
|
||||
-
|
||||
- std::cerr << "\n"
|
||||
- << Colors::RED << "✖" << Colors::RESET << " Could not configure the hyprland source, cmake complained:\n"
|
||||
- << missing << "\n\nThis likely means that you are missing the above dependencies or they are out of date.\n";
|
||||
- std::println(stderr, "\n{}",
|
||||
- failureString("Could not configure the hyprland source, cmake complained:\n{}\n\n"
|
||||
- "This likely means that you are missing the above dependencies or they are out of date.",
|
||||
- missing));
|
||||
- return false;
|
||||
- }
|
||||
-
|
||||
- progress.printMessageAbove(std::string{Colors::GREEN} + "✔" + Colors::RESET + " configured Hyprland");
|
||||
- progress.printMessageAbove(successString("configured Hyprland"));
|
||||
- progress.m_iSteps = 4;
|
||||
- progress.m_szCurrentMessage = "Installing sources";
|
||||
+ progress.m_szCurrentMessage = "Checking headers";
|
||||
progress.print();
|
||||
|
||||
- std::string cmd =
|
||||
- progress.print();
|
||||
-
|
||||
- const std::string& cmd =
|
||||
- std::format("sed -i -e \"s#PREFIX = /usr/local#PREFIX = {}#\" {}/Makefile && cd {} && make installheaders", DataState::getHeadersPath(), WORKINGDIR, WORKINGDIR);
|
||||
- if (m_bVerbose)
|
||||
- progress.printMessageAbove(std::string{Colors::BLUE} + "[v] " + Colors::RESET + "installation will run: " + cmd);
|
||||
- progress.printMessageAbove(verboseString("installation will run: {}", cmd));
|
||||
-
|
||||
- ret = execAndGet(cmd);
|
||||
-
|
||||
- if (m_bVerbose)
|
||||
- std::cout << Colors::BLUE << "[v] " << Colors::RESET << "installer returned: " << ret << "\n";
|
||||
- std::println("{}", verboseString("installer returned: {}", ret));
|
||||
-
|
||||
- // remove build files
|
||||
- std::filesystem::remove_all(WORKINGDIR);
|
||||
-
|
||||
auto HEADERSVALID = headersValid();
|
||||
if (HEADERSVALID == HEADERS_OK) {
|
||||
progress.printMessageAbove(std::string{Colors::GREEN} + "✔" + Colors::RESET + " installed headers");
|
||||
progress.printMessageAbove(successString("installed headers"));
|
||||
- progress.m_iSteps = 5;
|
||||
+ progress.m_iSteps = 1;
|
||||
progress.m_szCurrentMessage = "Done!";
|
||||
progress.print();
|
||||
|
||||
@@ -541,7 +428,7 @@ bool CPluginManager::updateHeaders(bool force) {
|
||||
std::print("\n");
|
||||
} else {
|
||||
progress.printMessageAbove(std::string{Colors::RED} + "✖" + Colors::RESET + " failed to install headers with error code " + std::to_string((int)HEADERSVALID) + " (" +
|
||||
headerErrorShort(HEADERSVALID) + ")");
|
||||
progress.printMessageAbove(failureString("failed to install headers with error code {} ({})", (int)HEADERSVALID, headerErrorShort(HEADERSVALID)));
|
||||
- progress.m_iSteps = 5;
|
||||
+ progress.m_iSteps = 1;
|
||||
progress.m_szCurrentMessage = "Failed";
|
||||
progress.print();
|
||||
|
||||
@@ -904,6 +791,19 @@ std::string CPluginManager::headerErrorShort(const eHeadersErrors err) {
|
||||
@@ -910,6 +797,19 @@ std::string CPluginManager::headerErrorShort(const eHeadersErrors err) {
|
||||
}
|
||||
|
||||
bool CPluginManager::hasDeps() {
|
||||
@ -215,5 +213,5 @@ index 6988547..036c705 100644
|
||||
for (auto const& d : deps) {
|
||||
if (!execAndGet("command -v " + d).contains("/"))
|
||||
--
|
||||
2.45.2
|
||||
2.47.0
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user