summaryrefslogtreecommitdiff
path: root/hyprpm/src/core/PluginManager.cpp
diff options
context:
space:
mode:
authorVaxry <vaxry@vaxry.net>2024-06-13 11:33:20 +0200
committerVaxry <vaxry@vaxry.net>2024-06-13 11:33:20 +0200
commitd677ac6f87acf97103327e321f7a05a0ce5774d6 (patch)
treed8eb5ff6e29b74b54e689bbfee0e6b8e8236809b /hyprpm/src/core/PluginManager.cpp
parenta9d7befc36f2890f080d02b8c04b678778ded080 (diff)
hyprpm: print all types of cmake errors during configure
Diffstat (limited to 'hyprpm/src/core/PluginManager.cpp')
-rw-r--r--hyprpm/src/core/PluginManager.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/hyprpm/src/core/PluginManager.cpp b/hyprpm/src/core/PluginManager.cpp
index 446d6af3..f9e9664a 100644
--- a/hyprpm/src/core/PluginManager.cpp
+++ b/hyprpm/src/core/PluginManager.cpp
@@ -479,13 +479,16 @@ bool CPluginManager::updateHeaders(bool force) {
if (m_bVerbose)
progress.printMessageAbove(std::string{Colors::BLUE} + "[v] " + Colors::RESET + "cmake returned: " + ret);
- if (ret.contains("required packages were not found")) {
+ if (ret.contains("CMake Error at")) {
// missing deps, let the user know.
- std::string missing = ret.substr(ret.find("The following required packages were not found:"));
- missing = missing.substr(0, missing.find("Call Stack"));
+ std::string missing = ret.substr(ret.find("CMake Error at"));
+ missing = ret.substr(ret.find_first_of('\n') + 1);
+ 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";
+ 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";
return false;
}