Huggle expects to find extensions in /usr/local/share/huggle/extensions. This path is hardcoded in src/huggle_core/definitions_prod.hpp, which is then copied to definitions.hpp and included. The CMakeLists.txt file for each extension and Huggle itself also hardcodes that extensions should be installed to share/huggle/extensions unless it's building for a snapfile.
I help maintain the Arch Linux User Repository package for huggle. The Arch package guidelines prohibit installing to /usr/local/ and strongly recommend installing executable plugins to subdirectories of /usr/lib/. Putting ELF files in /usr/share/* is considered a packaging error. To comply with these guidelines, I must patch 9 separate files across 8 different Git repositories. While the patch for definitions_prod.hpp is reasonable enough, patching across Git submodules gets messy fast.
It would make Huggle easier to package if the extension directory in the CMakeLists.txt files could be configured with a cmake parameter.