diff options
| author | Vaxry <43317083+vaxerski@users.noreply.github.com> | 2025-10-21 22:47:50 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-10-21 22:47:50 +0100 |
| commit | 892f642f58e6fcab7c69ecba79afb2d6ab461c89 (patch) | |
| tree | 985c0d2dd62c09ae7b21111e41493b02653ad890 /src/plugins/PluginAPI.cpp | |
| parent | d560c26419adc62559559014a90db312dc436918 (diff) | |
plugins: incorporate hyprdep ABI into plugin info (#12001)
Diffstat (limited to 'src/plugins/PluginAPI.cpp')
| -rw-r--r-- | src/plugins/PluginAPI.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/plugins/PluginAPI.cpp b/src/plugins/PluginAPI.cpp index 004788b9..66b0c74e 100644 --- a/src/plugins/PluginAPI.cpp +++ b/src/plugins/PluginAPI.cpp @@ -17,7 +17,18 @@ #include <sstream> APICALL const char* __hyprland_api_get_hash() { - return GIT_COMMIT_HASH; + static auto stripPatch = [](const char* ver) -> std::string { + std::string_view v = ver; + if (!v.contains('.')) + return std::string{v}; + + return std::string{v.substr(0, v.find_last_of('.'))}; + }; + + static const std::string ver = (std::string{GIT_COMMIT_HASH} + "_aq_" + stripPatch(AQUAMARINE_VERSION) + "_hu_" + stripPatch(HYPRUTILS_VERSION) + "_hg_" + + stripPatch(HYPRGRAPHICS_VERSION) + "_hc_" + stripPatch(HYPRCURSOR_VERSION) + "_hlg_" + stripPatch(HYPRLANG_VERSION)); + + return ver.c_str(); } APICALL SP<HOOK_CALLBACK_FN> HyprlandAPI::registerCallbackDynamic(HANDLE handle, const std::string& event, HOOK_CALLBACK_FN fn) { |
