Package Details: mangohud-git

Git Clone URL: (read-only, click to copy)
Package Base: mangohud-git
Description: A Vulkan overlay layer for monitoring FPS, temperatures, CPU/GPU load and more
Upstream URL:
Keywords: benchmark hud opengl overlay performance vulkan
Licenses: MIT
Conflicts: mangohud
Provides: mangohud
Replaces: vulkan-mesa-layer-mango
Submitter: dnmodder
Maintainer: dnmodder (jackun)
Last Packager: jackun
Votes: 12
Popularity: 0.80
First Submitted: 2020-02-06 22:40 (UTC)
Last Updated: 2022-07-14 22:55 (UTC)

Required by (10)

Sources (1)

Latest Comments

dnmodder commented on 2022-07-14 16:10 (UTC)

@jackun I don't have much time lately to review this, I made you co-manager.

jackun commented on 2022-07-14 14:49 (UTC) (edited on 2022-07-14 15:29 (UTC) by jackun)

Updated master to use meson 0.60 install_tag. Uses mostly default tags except scriptsfor mangohud shell script and mangoapp for mangoapp stuff.

diff --git a/PKGBUILD b/PKGBUILD
index be438e2..bfd9c16 100644
@@ -51,8 +51,7 @@ package_mangohud-git() {
     optdepends=('bash: mangohud helper script'
                 'libxnvctrl: support for older NVIDIA GPUs')

-    DESTDIR="$pkgdir" ninja -C build64 install
-    rm -r "$pkgdir/usr/bin" "$pkgdir/usr/share/doc" "$pkgdir/usr/share/man"  "$pkgdir/usr/share/vulkan/implicit_layer.d/libMangoApp.json"
+    meson install --destdir="$pkgdir" -C build64 --tags runtime

 package_lib32-mangohud-git() {
@@ -63,8 +62,7 @@ package_lib32-mangohud-git() {
     optdepends=('lib32-libxnvctrl: support for older NVIDIA GPUs')

-    DESTDIR="$pkgdir" ninja -C build32 install
-    rm -r "$pkgdir/usr/bin" "$pkgdir/usr/share/doc" "$pkgdir/usr/share/man" "$pkgdir/usr/share/vulkan/implicit_layer.d/libMangoApp.json"
+    meson install --destdir="$pkgdir" -C build32 --tags runtime
     mv "$pkgdir/usr/share/vulkan/implicit_layer.d/MangoHud.json" "$pkgdir/usr/share/vulkan/implicit_layer.d/MangoHud.x86.json"

@@ -73,8 +71,7 @@ package_mangohud-common-git() {

-    DESTDIR="$pkgdir" ninja -C build64 install
-    rm -r "$pkgdir/usr/lib" "$pkgdir/usr/share/vulkan"
+    meson install --destdir="$pkgdir" -C build64 --tags man,doc,scripts

     install -Dm664 "$_pkgbase/LICENSE" "$pkgdir/usr/share/licenses/$_pkgbase/LICENSE"

Maybe mangohud-control too... (argh, needs separate build() too i guess)

build() {
    python -m build --wheel --no-isolation "$_pkgbase/control"

package_mangohud-control-git() {
    pkgdesc='A Vulkan overlay layer for monitoring FPS, temperatures, CPU/GPU load and more'

    python -m installer --destdir="$pkgdir" "$_pkgbase"/control/dist/*.whl

italoghost commented on 2022-07-14 03:15 (UTC) (edited on 2022-07-14 03:16 (UTC) by italoghost)


I am receiving an error of conflicting svg and xml files:

erro: falha ao efetuar a transação (arquivos conflitantes)
/usr/share/icons/hicolor/scalable/apps/io.github.flightlessmango.mangohud.svg existe tanto em "mangohud-common-git" como em "lib32-mangohud-git"
/usr/share/metainfo/io.github.flightlessmango.mangohud.metainfo.xml existe tanto em "mangohud-common-git" como em "lib32-mangohud-git"
/usr/share/icons/hicolor/scalable/apps/io.github.flightlessmango.mangohud.svg existe tanto em "mangohud-common-git" como em "mangohud-git"
/usr/share/metainfo/io.github.flightlessmango.mangohud.metainfo.xml existe tanto em "mangohud-common-git" como em "mangohud-git"
/usr/share/icons/hicolor/scalable/apps/io.github.flightlessmango.mangohud.svg existe tanto em "lib32-mangohud-git" como em "mangohud-git"
/usr/share/metainfo/io.github.flightlessmango.mangohud.metainfo.xml existe tanto em "lib32-mangohud-git" como em "mangohud-git"
Ocorreram erros e, portanto, nenhum pacote foi atualizado.

I suspect that it has something related to this commit as I was prompted with an warning that "appstreamcli" could not been found.

But even after installing the appstream package I couldn't install mangohud due to the errors above.

churro commented on 2022-05-05 19:00 (UTC)

From what I see here dbus and libxnvctrl should be marked as optional dependencies (the latter is marked as optional here but also as a make dependency anyway).

dnmodder commented on 2022-03-17 03:46 (UTC)

The problem is now fixed, thanks to Mubashshir, he made some useful changes and mailed them to me. I don't understand what Mangoapp is for outside of GameScope and Steam Deck so for now it's not enabled in this package.

Billli11 commented on 2022-03-16 07:27 (UTC) (edited on 2022-03-16 08:14 (UTC) by Billli11)



mv "$pkgdir/usr/share/vulkan/implicit_layer.d/libMangoApp.json" "$pkgdir/usr/share/vulkan/implicit_layer.d/libMangoApp.x86.json"


mv "$pkgdir/usr/share/vulkan/implicit_layer.d/MangoHud.json" "$pkgdir/usr/share/vulkan/implicit_layer.d/MangoHud.x86.json"

should fix it.

Also there are a PKBUILD in the repo now. Should we update the file base on that?

zany130 commented on 2022-03-16 00:51 (UTC)

when trying to install alongside mangohud-git it gives this

error lib32-mangohud-git: /usr/share/vulkan/implicit_layer.d/libMangoApp.json exists in filesystem (owned by mangohud-git)

Billli11 commented on 2022-02-23 03:53 (UTC) (edited on 2022-02-23 22:53 (UTC) by Billli11)


From mangohud 0.6.6 pre release log.

This an application that is designed to be run together with gamescope and rendered on top of gamescope.

It can be test by running

gamescope -- sh -c "vkcube & mangoapp"

dnmodder commented on 2022-02-20 15:24 (UTC)

@Billli11 what's the use of that?

Billli11 commented on 2022-02-16 12:46 (UTC)

Would it be possible to add meson config


in to PKGBUILD for building mangoapp?


yochananmarqos commented on 2021-08-01 17:17 (UTC)

@PedroHC: Providing and conflicting with mangohud is enough, no need for the pkgver.

PedroHLC commented on 2021-08-01 16:07 (UTC)

@yochananmarqos - nope, it does: if some package needs to "depends" on "mangohud", be it Lutris, Steam, or a custom script, then pacman will be satisfied if the person has either the "stable" mangohud, or the VCS one installed.

yochananmarqos commented on 2021-08-01 15:26 (UTC)

@PedroHLC: That makes no sense for a VCS package.

PedroHLC commented on 2021-08-01 15:17 (UTC)

Please add:

  • provides=("mangohud=$pkgver") to package_mangohud-git()

  • provides=("lib32-mangohud=$pkgver") to package_lib32-mangohud-git()

  • provides=("mangohud-common=$pkgver") to package_mangohud-common-git()

dnmodder commented on 2021-01-09 22:34 (UTC)

@DefaultSpatula Arreglado.

DefaultSpatula commented on 2021-01-09 18:28 (UTC)

git and dbus are missing from makedepends

dnmodder commented on 2021-01-09 17:42 (UTC)

@iwonbigbro @PedroHLC it is fixed.

PedroHLC commented on 2021-01-05 16:03 (UTC) (edited on 2021-01-05 16:08 (UTC) by PedroHLC)

What about migrating to the author's PKGBUILD?:

EDIT: Sorry, it's broken too.

iwonbigbro commented on 2021-01-03 20:13 (UTC)

Here's a patch to workaround the problem...

Apply it by running...

$ cd mangohud-git
$ patch -p1 <<PATCH
diff --git a/PKGBUILD b/PKGBUILD
index a074961..03cd2b4 100644
@@ -3,7 +3,7 @@
 pkgname=('mangohud-git' 'lib32-mangohud-git' 'mangohud-common-git')
@@ -15,6 +15,10 @@ replaces=('vulkan-mesa-layer-mango' 'lib32-vulkan-mesa-layer-mango')

+arch-meson() {
+    /usr/bin/arch-meson --wrap-mode default "$@"
 pkgver() {
     cd "$_pkgbase"
     git describe --tags | sed -r 's/^v//;s/([^-]*-g)/r\1/;s/-/./g'

iwonbigbro commented on 2021-01-03 19:59 (UTC)

imgui is purely sourcecode. There are no build artefacts, so no need to create an AUR package.

According to meson docs...

Since 0.49.0 if source_filename or patch_filename is found in the project's subprojects/packagecache directory, it will be used instead of downloading the file, even if --wrap-mode option is set to nodownload. The file's hash will be checked.

So it's likely that anyone who has previously fetched the repo and built into AUR package, has a cached version of the imgui subproject. This will be used regardless of the wrap-mode, so you won't get this error. Pretty sure if you delete your clone and reclone the repo, you'll get this error.

iwonbigbro commented on 2021-01-03 18:24 (UTC)

Okay, so this error is defined by arch-meson hard coding the wrap mode.

$ grep nodownload /usr/bin/arch-meson
  --wrap-mode     nodownload \

The workaround is to install imgui, but there's no AUR PKGBUILD defined for this yet. Let me see if I can create one...

iwonbigbro commented on 2021-01-03 18:12 (UTC)

I get the same error...

Compiler for C supports arguments -Woverride-init: YES 
Compiler for C supports arguments -Winitializer-overrides: NO 
Checking for function "dlopen" : NO 
Library dl found: YES
Checking for function "clock_gettime" : YES 
Checking for size of "void*" : 8

mangohud/ ERROR: Automatic wrap-based subproject downloading is disabled

A full log can be found at /tmp/tmp.CmpQHDlAUD/aur/mangohud-git/src/build64/meson-logs/meson-log.txt
==> ERROR: A failure occurred in build().

Pretty sure it's a missing dependency, but this error is awful and meson provides no stack trace. Anyway, the error originates from this line...

Which defines a non-downloadable subproject of dearimgui

Broken by blame diff...

If you want this to work, then you need to remove the nodownload wrap-mode and allow subproject downloading.

BujuArena commented on 2021-01-01 21:54 (UTC)

I said I did that in my previous comment. For now, I've removed mangohud-git and installed mangohud, which is working.

yochananmarqos commented on 2021-01-01 21:27 (UTC)

@BujuArena: I can't reproduce that, make sure you do a clean build.

BujuArena commented on 2021-01-01 21:22 (UTC)

I'm getting this error, and no matter what I do, including removing the package completely and clean-building it, I see the same error:

mangohud/ ERROR: Automatic wrap-based subproject downloading is disabled

Therefore, I can't update this package any more.

yochananmarqos commented on 2020-08-10 03:58 (UTC) (edited on 2021-01-03 19:47 (UTC) by yochananmarqos)

@dnmodder: The submodule is no longer needed, it was imported as a subproject.

PedroHLC commented on 2020-08-09 15:54 (UTC)

@dnmodder, now there are more:

/usr/bin/mangohud exists in both 'lib32-mangohud-git' and 'mangohud-git'
/usr/share/vulkan/implicit_layer.d/MangoHud.json exists in both 'lib32-mangohud-git' and 'mangohud-git'

dnmodder commented on 2020-08-01 14:57 (UTC)

@PedroHLC I've just removed it from lib32-mangohud-git, later I'll consider adding it to mangohud-common, which is where it should be

PedroHLC commented on 2020-07-28 12:58 (UTC)

Please add rm "$pkgdir/usr/share/man/man1/mangohud.1" to both lib32 and x86_64 packages, and if you want add to common!

xenu commented on 2020-07-25 19:01 (UTC)

Getting the following: error: failed to commit transaction (conflicting files) /usr/share/man/man1/mangohud.1.gz exists in both 'lib32-mangohud-git' and 'mangohud-git'

rtentser commented on 2020-06-05 11:38 (UTC) (edited on 2020-06-06 19:35 (UTC) by rtentser)

I have the same problem with this package (mangohud-git). libxnvctrl installed, hud works fine. Looks like it searches for the library in wrong place, then founds it. Maybe an upstream problem.

UPD: Was fixed with lib32-libxnvctrl.

czapnaper commented on 2020-04-05 14:25 (UTC)

Fails to build:

`mangohud/ ERROR: Automatic wrap-based subproject downloading is disabled

A full log can be found at /home/czapnaper/Dokumenty/linux/mangohud-git/src/build64/meson-logs/meson-log.txt ==> ERROR: A failure occurred in build(). Aborting...`

To fix add -Duse_system_vulkan=enabled option.

FlightlessMango commented on 2020-03-15 16:30 (UTC)

@dnmodder sorry I'm just blind

dnmodder commented on 2020-03-15 16:20 (UTC)

@FlightlessMango I did that

FlightlessMango commented on 2020-03-15 16:12 (UTC)

You want to change to the develop branch, all changes are committed there and then merged into master for releases

Cybolic commented on 2020-03-15 12:13 (UTC) (edited on 2020-03-15 12:14 (UTC) by Cybolic)

I got it installed by doing the following:

@@ -54,7 +54,7 @@ package_mangohud-git() {

     DESTDIR="$pkgdir" ninja -C build64 install
-    sed -i -e 's||/usr/lib/&|g' "$pkgdir/usr/share/vulkan/implicit_layer.d/mangohud.json"
+    sed -i -e 's||/usr/lib/&|g' "$pkgdir/usr/share/vulkan/implicit_layer.d/"[Mm]ango[Hh]ud*.json
     install -Dm644 "$_pkgbase/LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE"

@@ -64,8 +64,9 @@ package_lib32-mangohud-git() {

     DESTDIR="$pkgdir" ninja -C build32 install
-    mv "$pkgdir/usr/share/vulkan/implicit_layer.d/"mangohud{,32}.json
+    mv "$pkgdir/usr/share/vulkan/implicit_layer.d/"[Mm]ango[Hh]ud*.json "$pkgdir/usr/share/vulkan/implicit_layer.d/mangohud32.json"
     sed -i -e 's||/usr/lib32/&|g' -e 's|64bit|32bit|g' "$pkgdir/usr/share/vulkan/implicit_layer.d/mangohud32.json"

+    rm -r "$pkgdir/usr/share/doc/mangohud" # this already exists in the main package
     install -Dm644 "$_pkgbase/LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE"

Askannz commented on 2020-03-14 23:36 (UTC)

Fails to build:

sed: can't read /home/robin/tmp/mangohud-git/pkg/mangohud-git/usr/share/vulkan/implicit_layer.d/mangohud.json: No such file or directory

Shished commented on 2020-03-14 13:52 (UTC)

Package fails to build, error appears during prepare()

error: Server does not allow request for unadvertised object e628122da006c0e9f7e695592765696d8253cf6f Fetched in submodule path 'modules/ImGui/src', but it did not contain e628122da006c0e9f7e695592765696d8253cf6f. Direct fetching of that commit failed.