Closed AhJi26 closed 5 months ago
hyprpm add https://github.com/zakk4223/hyprland-easymotion -v [v] version returned: Hyprland, built from branch at commit cba1ade848feac44b2eda677503900639581c3f4 (props: bump version to 0.40.0). Date: Sat May 4 15:42:32 2024 Tag: v0.40.0, commits: 4606 flags: (if any) [v] parsed commit cba1ade848feac44b2eda677503900639581c3f4 at branch on Sat May 4 15:42:32 2024, commits 4606 ✔ adding a new plugin repository from https://github.com/zakk4223/hyprland-easymotion MAKE SURE that you trust the authors. DO NOT install random plugins without verifying the code and author. Are you sure? [Y/n] → Cloning https://github.com/zakk4223/hyprland-easymotion ✔ cloned ✔ found hyprpm manifest ✔ parsed manifest, found 1 plugins: → hyprEasymotion by Zakk version → Manifest has 2 pins, checking ✔ commit pin 414b6c5f7c05de0b76bf7e6e258160cab0c2230c matched hl, resetting ✔ Hyprland headers OK → Building hyprEasymotion ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╍━━━━━━━━━━━━━━━━━━━ 3 / 5 Building plugin(s)[v] shell returned: -> cd /tmp/hyprpm/ahji && PKG_CONFIG_PATH="/home/ahji/.local/share/hyprpm/headersRoot/share/pkgconfig" make all g++ -shared -Wall -fPIC --no-gnu-unique ./easymotionDeco.cpp ./main.cpp -g -DWLR_USE_UNSTABLE `pkg-config --cflags pixman-1 libdrm hyprland pangocairo` -std=c++23 -o hypreasymotion.so ./easymotionDeco.cpp: In member function ‘virtual void CHyprEasyLabel::draw(CMonitor*, float)’: ./easymotionDeco.cpp:136:51: warning: narrowing conversion of ‘((CHyprEasyLabel*)this)->CHyprEasyLabel::layoutWidth’ from ‘int’ to ‘double’ [-Wnarrowing] 136 | CBox motionBox = {DECOBOX.x, DECOBOX.y, layoutWidth, layoutHeight}; | ^~~~~~~~~~~ ./easymotionDeco.cpp:136:64: warning: narrowing conversion of ‘((CHyprEasyLabel*)this)->CHyprEasyLabel::layoutHeight’ from ‘int’ to ‘double’ [-Wnarrowing] 136 | CBox motionBox = {DECOBOX.x, DECOBOX.y, layoutWidth, layoutHeight}; | ^~~~~~~~~~~~ ./easymotionDeco.cpp:145:55: warning: narrowing conversion of ‘((CHyprEasyLabel*)this)->CHyprEasyLabel::layoutWidth’ from ‘int’ to ‘double’ [-Wnarrowing] 145 | CBox borderBox = {DECOBOX.x, DECOBOX.y, layoutWidth, layoutHeight}; | ^~~~~~~~~~~ ./easymotionDeco.cpp:145:68: warning: narrowing conversion of ‘((CHyprEasyLabel*)this)->CHyprEasyLabel::layoutHeight’ from ‘int’ to ‘double’ [-Wnarrowing] 145 | CBox borderBox = {DECOBOX.x, DECOBOX.y, layoutWidth, layoutHeight}; | ^~~~~~~~~~~~ ./main.cpp: In function ‘void easymotionDispatch(std::string)’: ./main.cpp:131:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 131 | for(int i = 0; i < emargs.size(); i++) | ~~^~~~~~~~~~~~~~~ ./main.cpp: In function ‘bool oneasymotionKeypress(void*, std::any)’: ./main.cpp:191:9: error: ‘SKeyboard’ was not declared in this scope; did you mean ‘IKeyboard’? 191 | SKeyboard *keyboard = std::any_cast<SKeyboard *>(kany); | ^~~~~~~~~ | IKeyboard ./main.cpp:191:20: error: ‘keyboard’ was not declared in this scope; did you mean ‘IKeyboard’? 191 | SKeyboard *keyboard = std::any_cast<SKeyboard *>(kany); | ^~~~~~~~ | IKeyboard ./main.cpp:191:36: error: parse error in template argument list 191 | SKeyboard *keyboard = std::any_cast<SKeyboard *>(kany); | ^~~~~~~~~~~~~~~~~~~~~ ./main.cpp:191:57: error: no matching function for call to ‘any_cast<<expression error> >(std::any&)’ 191 | SKeyboard *keyboard = std::any_cast<SKeyboard *>(kany); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ In file included from /usr/include/hyprlang.hpp:6, from /home/ahji/.local/share/hyprpm/headersRoot/include/hyprland/src/plugins/../helpers/Vector2D.hpp:6, from /home/ahji/.local/share/hyprpm/headersRoot/include/hyprland/src/plugins/../SharedDefs.hpp:3, from /home/ahji/.local/share/hyprpm/headersRoot/include/hyprland/src/plugins/PluginAPI.hpp:25, from ./main.cpp:1: /usr/include/c++/14.1.1/any:462:23: note: candidate: ‘template<class _ValueType> _ValueType std::any_cast(const any&)’ 462 | inline _ValueType any_cast(const any& __any) | ^~~~~~~~ /usr/include/c++/14.1.1/any:462:23: note: template argument deduction/substitution failed: ./main.cpp:191:57: error: template argument 1 is invalid 191 | SKeyboard *keyboard = std::any_cast<SKeyboard *>(kany); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ /usr/include/c++/14.1.1/any:488:23: note: candidate: ‘template<class _ValueType> _ValueType std::any_cast(any&)’ 488 | inline _ValueType any_cast(any& __any) | ^~~~~~~~ /usr/include/c++/14.1.1/any:488:23: note: template argument deduction/substitution failed: ./main.cpp:191:57: error: template argument 1 is invalid 191 | SKeyboard *keyboard = std::any_cast<SKeyboard *>(kany); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ /usr/include/c++/14.1.1/any:502:23: note: candidate: ‘template<class _ValueType> _ValueType std::any_cast(any&&)’ 502 | inline _ValueType any_cast(any&& __any) | ^~~~~~~~ /usr/include/c++/14.1.1/any:502:23: note: template argument deduction/substitution failed: ./main.cpp:191:57: error: template argument 1 is invalid 191 | SKeyboard *keyboard = std::any_cast<SKeyboard *>(kany); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ /usr/include/c++/14.1.1/any:555:30: note: candidate: ‘template<class _ValueType> const _ValueType* std::any_cast(const any*)’ 555 | inline const _ValueType* any_cast(const any* __any) noexcept | ^~~~~~~~ /usr/include/c++/14.1.1/any:555:30: note: template argument deduction/substitution failed: ./main.cpp:191:57: error: template argument 1 is invalid 191 | SKeyboard *keyboard = std::any_cast<SKeyboard *>(kany); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ /usr/include/c++/14.1.1/any:564:24: note: candidate: ‘template<class _ValueType> _ValueType* std::any_cast(any*)’ 564 | inline _ValueType* any_cast(any* __any) noexcept | ^~~~~~~~ /usr/include/c++/14.1.1/any:564:24: note: template argument deduction/substitution failed: ./main.cpp:191:57: error: template argument 1 is invalid 191 | SKeyboard *keyboard = std::any_cast<SKeyboard *>(kany); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ make: *** [Makefile:12: hypreasymotion.so] Error 1 ✖ Plugin hyprEasymotion failed to build. This likely means that the plugin is either outdated, not yet available for your version, or broken. If you are on -git, update first. Try re-running with -v to see more verbose output. ✔ all plugins built ✔ installed repository ✔ you can now enable the plugin(s) with hyprpm enable ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5 / 5 Done!
Try again. I think the commit pin for 0.40 was wrong/not needed, so I removed it.
Thanks a lot!!! Works very well!