# Copyright 2022-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit cmake toolchain-funcs DESCRIPTION="A dynamic tiling Wayland compositor that doesn't sacrifice on its looks" HOMEPAGE="https://github.com/hyprwm/Hyprland/releases" if [[ "${PV}" == *9999* ]]; then inherit git-r3 EGIT_REPO_URI="https://github.com/hyprwm/Hyprland" else PROTOCOMMIT=301733ae466b229066ba15a53e6d8b91c5dcef5b WLRCOMMIT=dc7cc98cf21a8dc19ab8895505500e3700646af0 SRC_URI="https://github.com/hyprwm/Hyprland/archive/v${PV}beta.tar.gz -> ${P}.tar.gz https://github.com/hyprwm/hyprland-protocols/archive/${PROTOCOMMIT}.tar.gz -> hyprland-protocols.tar.gz https://gitlab.freedesktop.org/wlroots/wlroots/-/archive/${WLRCOMMIT}/wlroots-${WLRCOMMIT}.tar.bz2 -> wlr.tar.bz2" KEYWORDS="~amd64" S="${WORKDIR}/Hyprland-${PV}beta" fi LICENSE="BSD" SLOT="0" IUSE="X systemd" RDEPEND=" dev-libs/libevdev dev-libs/libinput dev-libs/wayland >=dev-libs/wayland-protocols-1.31 dev-utils/glslang dev-util/vulkan-headers dev-util/wayland-scanner gui-libs/gtk-layer-shell media-libs/libglvnd[X?] media-libs/mesa[gles2,wayland,X?] media-libs/vulkan-loader sys-apps/hwdata sys-auth/seatd x11-base/xcb-proto x11-libs/cairo x11-libs/libdrm x11-libs/libxkbcommon x11-libs/pixman virtual/libudev X? ( x11-base/xwayland x11-libs/libxcb x11-libs/xcb-util-image x11-libs/xcb-util-wm ) " DEPEND="${RDEPEND}" src_unpack() { default if [[ "${PV}" != *9999* ]]; then rmdir "${S}/subprojects/wlroots" rmdir "${S}/subprojects/hyprland-protocols" mv "${WORKDIR}/wlroots-${WLRCOMMIT}" "${S}/subprojects/wlroots" || die mv "${WORKDIR}/hyprland-protocols-${PROTOCOMMIT}" "${S}/subprojects/hyprland-protocols" || die fi } src_configure() { if ! (tc-is-gcc && [[ $(gcc-major-version) -ge 12 ]] && [[ $(gcc-minor-version) -ge 1 ]]) \ && ! (tc-is-clang && [[ $(clang-major-version) -ge 15 ]]); then die "Hyprland requires >=sys-devel/gcc-12.1.0 or >=sys-devel/clang-15.0.0 to build" fi mycmakeargs+=( -DNO_XWAYLAND:STRING=$(usex X false true) ) mycmakeargs+=( -DNO_SYSTEMD:STRING=$(usex systemd false true) ) cmake_src_configure }