zakk4223 / hyprland-easymotion

Easymotion, for hyprland
BSD 3-Clause "New" or "Revised" License
70 stars 8 forks source link

Fail to install use hyprpm #8

Closed AhJi26 closed 5 months ago

AhJi26 commented 6 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! 
zakk4223 commented 6 months ago

Try again. I think the commit pin for 0.40 was wrong/not needed, so I removed it.

AhJi26 commented 6 months ago

Try again. I think the commit pin for 0.40 was wrong/not needed, so I removed it.

Thanks a lot!!! Works very well!