diff --git a/games-util/mangohud/Manifest b/games-util/mangohud/Manifest new file mode 100644 index 0000000..bbdc3e8 --- /dev/null +++ b/games-util/mangohud/Manifest @@ -0,0 +1,3 @@ +DIST mangohud-0.7.2.tar.gz 14906751 BLAKE2B a88e6497d8a8bcd899fc41d555dec429a69c864a10476c1d549acead58a7fc7c5f5d14d901b75bd2aed1d8c8088a027417a74480b89501d947333d665d0567c0 SHA512 edc3e380f9f58b65ae04c970e84eec9ff3458eafb2d89b2208c0afa6978a745a634aab6b0e025996175981e80c66475ef92ffe326d31a67055895b8fd1213e63 +DIST vulkan-headers-1.2.158-2-meson-wrap.zip 1107 BLAKE2B 35e4bb1f7410a009243fe7d4a4ba6cede7f01e0b56ad6ff72ad30c00c2452bd6d2a4fb44ab92c296147e2506a92acc6de1f817cb5433b96d66652cbcd8885595 SHA512 30cbbb90580399839e1bba8881b9b8cc33fdeead93f37d5f3398c9d53fb3ab050ca2562fd68f376fa4ee0825ee3787f560d70d55a170c780dd575ff2eeb66efd +DIST vulkan-headers-1.2.158.tar.gz 831647 BLAKE2B 792d7e895e27c4a8fbc93fc4d9c9e696d2ceb946e745709c050c0693b77afbeb6411a4267fc59508ddeb58167d469349fedc1c5d4b4a7415b590c97248b244bc SHA512 f7aa9222f9deb1316d22deacc2c6cd85c409f0f2b2d37ecd55e0fc8466d381bbe3bed287881b993a01c5f33736e1607014f820980b7a54a3721fab6980960c91 diff --git a/games-util/mangohud/mangohud-0.7.2-r2.ebuild b/games-util/mangohud/mangohud-0.7.2-r2.ebuild new file mode 100644 index 0000000..f3f9d28 --- /dev/null +++ b/games-util/mangohud/mangohud-0.7.2-r2.ebuild @@ -0,0 +1,151 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) + +inherit flag-o-matic python-single-r1 meson-multilib + +MY_PV=$(ver_cut 1-3) +[[ -n "$(ver_cut 4)" ]] && MY_PV_REV="-$(ver_cut 4)" + +DESCRIPTION="Vulkan and OpenGL overlay for monitoring FPS, sensors, system load and more" +HOMEPAGE="https://github.com/flightlessmango/MangoHud" + +VK_HEADERS_VER="1.2.158" +VK_HEADERS_MESON_WRAP_VER="2" + +SRC_URI=" + https://github.com/KhronosGroup/Vulkan-Headers/archive/v${VK_HEADERS_VER}.tar.gz + -> vulkan-headers-${VK_HEADERS_VER}.tar.gz + https://wrapdb.mesonbuild.com/v2/vulkan-headers_${VK_HEADERS_VER}-${VK_HEADERS_MESON_WRAP_VER}/get_patch + -> vulkan-headers-${VK_HEADERS_VER}-${VK_HEADERS_MESON_WRAP_VER}-meson-wrap.zip +" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/flightlessmango/MangoHud.git" +else + SRC_URI+=" + https://github.com/flightlessmango/MangoHud/archive/v${MY_PV}${MY_PV_REV}.tar.gz + -> ${P}.tar.gz + " + KEYWORDS="~amd64" + S="${WORKDIR}/MangoHud-${PV}" +fi + +LICENSE="MIT" +SLOT="0" +IUSE="+dbus debug +X xnvctrl wayland mangoapp mangohudctl mangoplot video_cards_nvidia video_cards_amdgpu test" +RESTRICT="!test? ( test )" + +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} + || ( X wayland ) + xnvctrl? ( video_cards_nvidia ) +" + +BDEPEND=" + app-arch/unzip + dev-util/glslang + test? ( dev-util/cmocka ) + $(python_gen_cond_dep 'dev-python/mako[${PYTHON_USEDEP}]') +" + +DEPEND=" + ${PYTHON_DEPS} + =media-libs/imgui-1*:=[opengl,vulkan,${MULTILIB_USEDEP}] + =media-libs/implot-0.16*:=[${MULTILIB_USEDEP}] + dev-libs/spdlog:=[${MULTILIB_USEDEP}] + dev-libs/libfmt:=[${MULTILIB_USEDEP}] + dev-cpp/nlohmann_json + x11-libs/libxkbcommon + dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] ) + X? ( x11-libs/libX11[${MULTILIB_USEDEP}] ) + video_cards_nvidia? ( + x11-drivers/nvidia-drivers[${MULTILIB_USEDEP}] + xnvctrl? ( x11-drivers/nvidia-drivers[static-libs] ) + ) + wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] ) + mangoapp? ( + =media-libs/imgui-1.89.9*[glfw] + media-libs/glfw[X(+)?,wayland(+)?] + media-libs/glew + ) +" + +RDEPEND=" + ${DEPEND} + media-libs/libglvnd[${MULTILIB_USEDEP}] + media-libs/vulkan-loader[${MULTILIB_USEDEP}] + mangoplot? ( + media-fonts/lato + $(python_gen_cond_dep ' + || ( + dev-python/matplotlib[gtk3,${PYTHON_USEDEP}] + dev-python/matplotlib[qt5(-),${PYTHON_USEDEP}] + dev-python/matplotlib[qt6(-),${PYTHON_USEDEP}] + dev-python/matplotlib[wxwidgets,${PYTHON_USEDEP}] + ) + ') + ) +" + +src_unpack() { + default + + [[ -n "${MY_PV_REV}" ]] && ( mv "${WORKDIR}/MangoHud-${MY_PV}${MY_PV_REV}" "${WORKDIR}/MangoHud-${PV}" || die ) + + if [[ $PV == 9999 ]]; then + git-r3_src_unpack + fi + + unpack vulkan-headers-${VK_HEADERS_VER}.tar.gz + unpack vulkan-headers-${VK_HEADERS_VER}-${VK_HEADERS_MESON_WRAP_VER}-meson-wrap.zip + mv "${WORKDIR}/Vulkan-Headers-${VK_HEADERS_VER}" "${S}/subprojects/" || die +} + +src_prepare() { + default + # replace all occurences of "#include " to "#include " + find . -type f -exec sed -i 's|||g' {} \; || die + find . -type f -exec sed -i 's|"imgui.h"||g' {} \; || die + find . -type f -exec sed -i 's|||g' {} \; || die + find . -type f -exec sed -i 's|"imgui_internal.h"||g' {} \; || die + find . -type f -exec sed -i 's|"imgui_impl_glfw.h"||g' {} \; || die + find . -type f -exec sed -i 's|"imgui_impl_opengl3.h"||g' {} \; || die +} + +multilib_src_configure() { + # workaround for lld + # https://github.com/flightlessmango/MangoHud/issues/1240 + append-ldflags $(test-flags-CCLD -Wl,--undefined-version) + + local emesonargs=( + -Dappend_libdir_mangohud=false + -Dinclude_doc=false + -Duse_system_spdlog=enabled + $(meson_feature video_cards_nvidia with_nvml) + $(meson_feature xnvctrl with_xnvctrl) + $(meson_feature X with_x11) + $(meson_feature wayland with_wayland) + $(meson_feature dbus with_dbus) + $(meson_use mangoapp mangoapp) + $(meson_use mangoapp mangoapp_layer) + $(meson_use mangohudctl mangohudctl) + $(meson_feature mangoplot mangoplot) + ) + meson_src_configure +} + +pkg_postinst() { + if ! use xnvctrl; then + einfo "" + einfo "If mangohud can't get GPU load, or other GPU information," + einfo "and you have an older Nvidia device." + einfo "" + einfo "Try enabling the 'xnvctrl' useflag." + einfo "" + fi +} diff --git a/games-util/mangohud/metadata.xml b/games-util/mangohud/metadata.xml new file mode 100644 index 0000000..59686cb --- /dev/null +++ b/games-util/mangohud/metadata.xml @@ -0,0 +1,23 @@ + + + + + adel.ks@zegrapher.com + Adel KARA SLIMANE + + + gonegrier.duarte@gmail.com + Gonçalo Negrier Duarte + + + flightlessmango/MangoHud + https://github.com/flightlessmango/MangoHud/issues + + + Use XNVctrl as fall back for older Nvidia devices. + Run mangohud tests + Build and install mangoapp and mangoapp layer + Build and install mangohudctl + Install mangoplot python script + + diff --git a/metadata/md5-cache/gui-libs/hyprcursor-0.1.5 b/metadata/md5-cache/gui-libs/hyprcursor-0.1.5 index 406085d..605f4a1 100644 --- a/metadata/md5-cache/gui-libs/hyprcursor-0.1.5 +++ b/metadata/md5-cache/gui-libs/hyprcursor-0.1.5 @@ -10,5 +10,5 @@ RDEPEND=>=dev-libs/hyprlang-0.4.2 dev-libs/libzip gnome-base/librsvg:2 x11-libs/ RESTRICT=test SLOT=0 SRC_URI=https://github.com/hyprwm/hyprcursor/archive/v0.1.5.tar.gz -> hyprcursor-0.1.5.gh.tar.gz -_eclasses_=toolchain-funcs fa554cc3cff825d21dfe3f24841e29cf multilib b2a329026f2e404e9e371097dda47f96 flag-o-matic f14aba975c94ccaa9f357a27e3b17ffe multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 10a50dfaf728b802fcfd37f8d0da9056 +_eclasses_=toolchain-funcs 14648d8795f7779e11e1bc7cf08b7536 multilib b2a329026f2e404e9e371097dda47f96 flag-o-matic f14aba975c94ccaa9f357a27e3b17ffe multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 10a50dfaf728b802fcfd37f8d0da9056 _md5_=15fad8130df7c3315bbf3d6420f52c8f diff --git a/metadata/md5-cache/gui-wm/hyprland-0.43.0 b/metadata/md5-cache/gui-wm/hyprland-0.43.0 index ff0825e..f63e170 100644 --- a/metadata/md5-cache/gui-wm/hyprland-0.43.0 +++ b/metadata/md5-cache/gui-wm/hyprland-0.43.0 @@ -11,5 +11,5 @@ LICENSE=BSD RDEPEND=app-alternatives/ninja dev-build/cmake dev-build/meson dev-vcs/git virtual/pkgconfig dev-cpp/tomlplusplus dev-libs/glib:2 dev-libs/libinput >=dev-libs/wayland-1.20.0 gui-libs/aquamarine >=gui-libs/hyprcursor-0.1.9 media-libs/libglvnd x11-libs/cairo x11-libs/libdrm x11-libs/libxkbcommon x11-libs/pango x11-libs/pixman x11-libs/libXcursor X? ( x11-libs/libxcb:0= x11-base/xwayland x11-libs/xcb-util-errors x11-libs/xcb-util-wm ) SLOT=0 SRC_URI=https://github.com/hyprwm/Hyprland/releases/download/v0.43.0/source-v0.43.0.tar.gz -> hyprland-0.43.0.gh.tar.gz -_eclasses_=toolchain-funcs fa554cc3cff825d21dfe3f24841e29cf multilib b2a329026f2e404e9e371097dda47f96 flag-o-matic f14aba975c94ccaa9f357a27e3b17ffe multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 python-utils-r1 42c5abe4a656a4993a06a4fc61dbdd12 meson 99466844dd8d4fcfb07578a76f5a9922 +_eclasses_=toolchain-funcs 14648d8795f7779e11e1bc7cf08b7536 multilib b2a329026f2e404e9e371097dda47f96 flag-o-matic f14aba975c94ccaa9f357a27e3b17ffe multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 python-utils-r1 42c5abe4a656a4993a06a4fc61dbdd12 meson 99466844dd8d4fcfb07578a76f5a9922 _md5_=0e0554f6d2d545544263090b138564ec diff --git a/metadata/md5-cache/gui-wm/hyprland-9999 b/metadata/md5-cache/gui-wm/hyprland-9999 index 7e2d7cd..2bb4d6d 100644 --- a/metadata/md5-cache/gui-wm/hyprland-9999 +++ b/metadata/md5-cache/gui-wm/hyprland-9999 @@ -10,5 +10,5 @@ LICENSE=BSD3-Clause PROPERTIES=live RDEPEND=app-alternatives/ninja >=dev-build/cmake-3.30 dev-build/meson dev-vcs/git virtual/pkgconfig dev-cpp/tomlplusplus dev-libs/glib:2 dev-libs/libinput >=dev-libs/udis86-1.7.2 >=dev-libs/wayland-1.22.90 >=gui-libs/aquamarine-0.4.2 >=gui-libs/hyprcursor-0.1.9 media-libs/libglvnd x11-libs/cairo x11-libs/libdrm x11-libs/libxkbcommon x11-libs/pango x11-libs/pixman x11-libs/libXcursor X? ( x11-libs/libxcb:0= x11-base/xwayland x11-libs/xcb-util-errors x11-libs/xcb-util-wm ) dev-libs/re2 dev-libs/hyprgraphics SLOT=0 -_eclasses_=toolchain-funcs fa554cc3cff825d21dfe3f24841e29cf multilib b2a329026f2e404e9e371097dda47f96 flag-o-matic f14aba975c94ccaa9f357a27e3b17ffe multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 python-utils-r1 42c5abe4a656a4993a06a4fc61dbdd12 meson 99466844dd8d4fcfb07578a76f5a9922 git-r3 875eb471682d3e1f18da124be97dcc81 +_eclasses_=toolchain-funcs 14648d8795f7779e11e1bc7cf08b7536 multilib b2a329026f2e404e9e371097dda47f96 flag-o-matic f14aba975c94ccaa9f357a27e3b17ffe multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 python-utils-r1 42c5abe4a656a4993a06a4fc61dbdd12 meson 99466844dd8d4fcfb07578a76f5a9922 git-r3 875eb471682d3e1f18da124be97dcc81 _md5_=95c8292a72c61a99981ddb9d9407f587 diff --git a/metadata/md5-cache/sys-kernel/xanmod-sources-9999 b/metadata/md5-cache/sys-kernel/xanmod-sources-9999 new file mode 100644 index 0000000..5942bab --- /dev/null +++ b/metadata/md5-cache/sys-kernel/xanmod-sources-9999 @@ -0,0 +1,15 @@ +BDEPEND=>=dev-vcs/git-1.8.2.1[curl] +DEFINED_PHASES=compile install postinst postrm preinst prepare setup test unpack +DESCRIPTION=Sources based on the Linux Kernel +EAPI=8 +HOMEPAGE=https://www.kernel.org/ https://wiki.gentoo.org/wiki/Kernel https://xanmod.org/ +INHERIT=git-r3 kernel-2 +IUSE=experimental symlink build +KEYWORDS=~amd64 +LICENSE=GPL-2 +PROPERTIES=live +RDEPEND=sys-kernel/linux-headers sys-kernel/linux-firmware !build? ( app-alternatives/cpio dev-lang/perl app-alternatives/bc dev-build/make sys-devel/bison sys-devel/flex >=sys-libs/ncurses-5.2 virtual/libelf virtual/pkgconfig ) +RESTRICT=binchecks strip +SLOT=0 +_eclasses_=git-r3 875eb471682d3e1f18da124be97dcc81 toolchain-funcs 14648d8795f7779e11e1bc7cf08b7536 multilib b2a329026f2e404e9e371097dda47f96 crossdev f04338ff78f213a4a55c5c37b3c6563e estack c61c368a76fdf3a82fdf8dbaebea3804 multiprocessing 1e32df7deee68372153dca65f4a7c21f optfeature 222cb475c5a4f7ae7cfb0bf510a6fe54 kernel-2 0e01377cce73a7a06321d0ef97388d31 +_md5_=833c7d702e5bfb7c250e5a12b1c80594