summaryrefslogtreecommitdiff
path: root/hyprpm/src/main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'hyprpm/src/main.cpp')
-rw-r--r--hyprpm/src/main.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/hyprpm/src/main.cpp b/hyprpm/src/main.cpp
index c8b3bce0..47a557e2 100644
--- a/hyprpm/src/main.cpp
+++ b/hyprpm/src/main.cpp
@@ -101,9 +101,19 @@ int main(int argc, char** argv, char** envp) {
if (command.size() >= 3)
rev = command[2];
+ const auto HLVER = g_pPluginManager->getHyprlandVersion();
+ auto GLOBALSTATE = DataState::getGlobalState();
+
+ if (GLOBALSTATE.headersHashCompiled != HLVER.hash) {
+ std::println(stderr, "{}", failureString("Headers outdated, please run hyprpm update."));
+ return 1;
+ }
+
NSys::root::cacheSudo();
CScopeGuard x([] { NSys::root::dropSudo(); });
+ g_pPluginManager->updateHeaders(false);
+
return g_pPluginManager->addNewPluginRepo(command[1], rev) ? 0 : 1;
} else if (command[0] == "remove") {
if (command.size() < 2) {