diff --git a/sdata/dist-gentoo/README.md b/sdata/dist-gentoo/README.md index 630a3a178..84153c779 100644 --- a/sdata/dist-gentoo/README.md +++ b/sdata/dist-gentoo/README.md @@ -52,3 +52,29 @@ end - The Hyprland live ebuild sometimes has linkage issues, deleting _Hyprland_ and _hyprland_ from `/usr/bin/` and then re-emerging usually fixes this. - When emerging Hyprland if you get an issue relating to `undefined reference to ``Hyprutils::Math::Vector2D::˜Vector2D()`` ` - Clear the cache folder (`rm -fr /var/tmp/portage/gui-wm/hyprland*`) then try again +- If emerging ``hyprland-qtutils`` fails and gives you something like this... + ```cmake + CMake Error at utils/dialog/CMakeLists.txt:26 (target_link_libraries): + Target "hyprland-dialog" links to: + Qt6::WaylandClientPrivate + but the target was not found. Possible reasons include: + * There is a typo in the target name. + * A find_package call is missing for an IMPORTED target. + * An ALIAS target is missing. + CMake Error at utils/update-screen/CMakeLists.txt:34 (target_link_libraries): + Target "hyprland-update-screen" links to: + Qt6::WaylandClientPrivate + but the target was not found. Possible reasons include: + * There is a typo in the target name. + * A find_package call is missing for an IMPORTED target. + * An ALIAS target is missing. + CMake Error at utils/donate-screen/CMakeLists.txt:32 (target_link_libraries): + Target "hyprland-donate-screen" links to: + Qt6::WaylandClientPrivate + but the target was not found. Possible reasons include: + * There is a typo in the target name. + * A find_package call is missing for an IMPORTED target. + * An ALIAS target is missing. + ``` + Try putting ``sdata/dist-gentoo/hyprland-qtutils-private.patch`` into ``/etc/portage/patches/gui-libs/hyprland-qtutils/``. + - Patch Credit: fedeliallalinea on https://forums.gentoo.org/viewtopic-p-8874098.html diff --git a/sdata/dist-gentoo/hyprland-qtutils-private.patch b/sdata/dist-gentoo/hyprland-qtutils-private.patch new file mode 100644 index 000000000..6ca55104f --- /dev/null +++ b/sdata/dist-gentoo/hyprland-qtutils-private.patch @@ -0,0 +1,33 @@ +--- a/utils/dialog/CMakeLists.txt ++++ b/utils/dialog/CMakeLists.txt +@@ -8,7 +8,7 @@ + set(CMAKE_CXX_STANDARD 23) + set(CMAKE_CXX_STANDARD_REQUIRED ON) + +-find_package(Qt6 6.5 REQUIRED COMPONENTS Widgets Quick QuickControls2 WaylandClient) ++find_package(Qt6 6.5 REQUIRED COMPONENTS Widgets Quick QuickControls2 WaylandClient WaylandClientPrivate) + find_package(PkgConfig REQUIRED) + + pkg_check_modules(hyprutils REQUIRED IMPORTED_TARGET hyprutils) +--- a/utils/donate-screen/CMakeLists.txt ++++ b/utils/donate-screen/CMakeLists.txt +@@ -8,7 +8,7 @@ + set(CMAKE_CXX_STANDARD 23) + set(CMAKE_CXX_STANDARD_REQUIRED ON) + +-find_package(Qt6 6.5 REQUIRED COMPONENTS Widgets Quick QuickControls2 WaylandClient) ++find_package(Qt6 6.5 REQUIRED COMPONENTS Widgets Quick QuickControls2 WaylandClient WaylandClientPrivate) + find_package(PkgConfig REQUIRED) + + pkg_check_modules(hyprutils REQUIRED IMPORTED_TARGET hyprutils) +--- a/utils/update-screen/CMakeLists.txt ++++ b/utils/update-screen/CMakeLists.txt +@@ -8,7 +8,7 @@ + set(CMAKE_CXX_STANDARD 23) + set(CMAKE_CXX_STANDARD_REQUIRED ON) + +-find_package(Qt6 6.5 REQUIRED COMPONENTS Widgets Quick QuickControls2 WaylandClient) ++find_package(Qt6 6.5 REQUIRED COMPONENTS Widgets Quick QuickControls2 WaylandClient WaylandClientPrivate) + find_package(PkgConfig REQUIRED) + + pkg_check_modules(hyprutils REQUIRED IMPORTED_TARGET hyprutils) diff --git a/sdata/dist-gentoo/install-deps.sh b/sdata/dist-gentoo/install-deps.sh index 0aadbf81b..9d79c157a 100644 --- a/sdata/dist-gentoo/install-deps.sh +++ b/sdata/dist-gentoo/install-deps.sh @@ -1,23 +1,12 @@ printf "${STY_YELLOW}" printf "============WARNING/NOTE (1)============\n" -printf "GCC in use: $(which gcc)\n" -printf "GCC version info: $(gcc --version | grep gcc)\n" -printf "GCC version number: $(gcc --version | grep gcc | awk '{print $3}')\n" -printf "GCC-15>= is required for Hyprland\n" -printf "If you have GCC-15>= and it's currently set then you can safely ignore this\n" -printf "If not, you must ensure you are using the correct GCC version and set it (gcc-config )\n" -printf "It is heavily recommended to re-emerge @world with an empty tree after changing GCC version (emerge -e @world)\n\n" -printf "${STY_RST}" -pause - -printf "${STY_YELLOW}" -printf "============WARNING/NOTE (2)============\n" printf "Ensure you have a global use flag for elogind or systemd in your make.conf for simplicity\n" printf "Or you can manually add the use flags for each package that requires it\n" printf "${STY_RST}" pause printf "${STY_YELLOW}" +printf "============WARNING/NOTE (2)============\n" printf "https://github.com/end-4/dots-hyprland/blob/main/sdata/dist-gentoo/README.md\n" printf "Checkout the above README for potential bug fixes or additional information\n\n" printf "${STY_RST}"