├── .gitignore ├── flathub.json ├── make ├── README.md ├── patches └── libxnvctrl_so_0.patch ├── org.freedesktop.Platform.VulkanLayer.MangoHud.metainfo.xml └── org.freedesktop.Platform.VulkanLayer.MangoHud.yml /.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | /repo 3 | /.flatpak-builder 4 | -------------------------------------------------------------------------------- /flathub.json: -------------------------------------------------------------------------------- 1 | { 2 | "skip-icons-check": true, 3 | "only-arches": ["x86_64"] 4 | } 5 | -------------------------------------------------------------------------------- /make: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | flatpak-builder --repo=repo --install-deps-from=flathub --force-clean build org.freedesktop.Platform.VulkanLayer.MangoHud.yml 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # MangoHUD 2 | 3 | ## Configuration 4 | 5 | MangoHud can be configured just like the [instructions](https://github.com/flightlessmango/MangoHud#hud-configuration) mentioned by the project, but you must give Flatpak apps access to the configuration files. That can be done with the following command: 6 | 7 | ``` 8 | flatpak override --user --filesystem=xdg-config/MangoHud:ro 9 | ``` 10 | 11 | ## Resources 12 | 13 | - [MangoHUD Homepage](https://github.com/flightlessmango/MangoHud) 14 | -------------------------------------------------------------------------------- /patches/libxnvctrl_so_0.patch: -------------------------------------------------------------------------------- 1 | diff -up nvidia-settings-435.17/src/libXNVCtrl/Makefile.shared nvidia-settings-435.17/src/libXNVCtrl/Makefile 2 | --- nvidia-settings-435.17/src/libXNVCtrl/Makefile.shared 2019-08-07 06:12:32.000000000 +0200 3 | +++ nvidia-settings-435.17/src/libXNVCtrl/Makefile 2019-08-26 16:23:41.921778088 +0200 4 | @@ -50,8 +50,9 @@ LDFLAGS += $(XNVCTRL_LDFLAGS) 5 | 6 | .PHONY: clean 7 | 8 | -all: $(LIBXNVCTRL) 9 | +all: $(LIBXNVCTRL) libXNVCtrl.so 10 | 11 | clean: 12 | rm -rf $(LIBXNVCTRL) *~ \ 13 | $(OUTPUTDIR)/*.o $(OUTPUTDIR)/*.d 14 | + rm -f libXNVCtrl.so libXNVCtrl.so.* 15 | diff -up nvidia-settings-435.17/src/Makefile.shared nvidia-settings-435.17/src/Makefile 16 | --- nvidia-settings-435.17/src/Makefile.shared 2019-08-07 06:12:31.000000000 +0200 17 | +++ nvidia-settings-435.17/src/Makefile 2019-08-26 16:17:31.133406921 +0200 18 | @@ -106,6 +106,9 @@ endif 19 | XNVCTRL_DIR ?= libXNVCtrl 20 | XCONFIG_PARSER_DIR ?= XF86Config-parser 21 | COMMON_UTILS_DIR ?= common-utils 22 | +XNVCTRL_SHARED ?= $(XNVCTRL_DIR)/libXNVCtrl.so.0 23 | +#XNVCTRL_LIB ?= $(XNVCTRL_ARCHIVE) 24 | +XNVCTRL_LIB ?= $(XNVCTRL_SHARED) 25 | COMMON_UNIX_DIR ?= common-unix 26 | VIRTUAL_RESOLUTIONS_DIR ?= $(COMMON_UNIX_DIR)/virtual-resolutions 27 | 28 | diff -up nvidia-settings-435.17/src/libXNVCtrl/xnvctrl.mk.shared nvidia-settings-435.17/src/libXNVCtrl/xnvctrl.mk 29 | --- nvidia-settings-435.17/src/libXNVCtrl/xnvctrl.mk.shared 2019-08-07 06:12:32.000000000 +0200 30 | +++ nvidia-settings-435.17/src/libXNVCtrl/xnvctrl.mk 2019-08-26 16:54:44.518016474 +0200 31 | @@ -47,3 +47,8 @@ $(eval $(call DEFINE_OBJECT_RULE,TARGET, 32 | 33 | $(LIBXNVCTRL) : $(LIBXNVCTRL_OBJ) 34 | $(call quiet_cmd,AR) ru $@ $(LIBXNVCTRL_OBJ) 35 | + 36 | +libXNVCtrl.so: $(LIBXNVCTRL_OBJ) 37 | + $(CC) -shared -Wl,-soname=$@.0 -o $@.0.0.0 $(LDFLAGS) $^ -lXext -lX11 38 | + ln -s $@.0.0.0 $@.0 39 | + ln -s $@.0 $@ 40 | -------------------------------------------------------------------------------- /org.freedesktop.Platform.VulkanLayer.MangoHud.metainfo.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | org.freedesktop.Platform.VulkanLayer.MangoHud 4 | org.freedesktop.Platform 5 | MangoHud 6 | Vulkan/OpenGL overlay for monitoring FPS, temperatures, CPU/GPU load and more 7 | Camada de sobreposição Vulkan/OpenGL para monitorar FPS, temperaturas, carga da CPU/GPU e muito mais 8 | Capa de recubrimiento Vulkan/OpenGL para monitorear FPS, temperaturas, carga de CPU/GPU y más 9 | FlightlessMango 10 | https://github.com/flightlessmango/MangoHud 11 | https://github.com/flightlessmango/MangoHud/issues 12 | https://www.paypal.me/flightlessmango 13 | MIT 14 | CC0-1.0 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /org.freedesktop.Platform.VulkanLayer.MangoHud.yml: -------------------------------------------------------------------------------- 1 | id: org.freedesktop.Platform.VulkanLayer.MangoHud 2 | branch: '25.08' 3 | sdk: org.freedesktop.Sdk 4 | runtime: org.freedesktop.Platform 5 | runtime-version: '25.08' 6 | build-extension: true 7 | sdk-extensions: 8 | - org.freedesktop.Sdk.Compat.i386 9 | - org.freedesktop.Sdk.Extension.toolchain-i386 10 | build-options: 11 | prefix: /usr/lib/extensions/vulkan/MangoHud 12 | prepend-path: /usr/lib/extensions/vulkan/MangoHud/bin 13 | prepend-pkg-config-path: /usr/lib/extensions/vulkan/MangoHud/share/pkgconfig 14 | env: 15 | PYTHONPATH: /usr/lib/extensions/vulkan/MangoHud/lib/python3.9/site-packages 16 | C_INCLUDE_PATH: /usr/lib/extensions/vulkan/MangoHud/include 17 | CPLUS_INCLUDE_PATH: /usr/lib/extensions/vulkan/MangoHud/include 18 | strip: true 19 | x-arch-build-options: 20 | x86_64: &x86_64-build-options 21 | libdir: /usr/lib/extensions/vulkan/MangoHud/lib/x86_64-linux-gnu 22 | prepend-pkg-config-path: /usr/lib/extensions/vulkan/MangoHud/lib/x86_64-linux-gnu/pkgconfig 23 | ldflags: -Wl,-rpath=/usr/lib/extensions/vulkan/MangoHud/lib/x86_64-linux-gnu 24 | env: 25 | FLATPAK_LIBDIR: /usr/lib/extensions/vulkan/MangoHud/lib/x86_64-linux-gnu 26 | i386: &i386-build-options 27 | libdir: /usr/lib/extensions/vulkan/MangoHud/lib/i386-linux-gnu 28 | prepend-pkg-config-path: /usr/lib/extensions/vulkan/MangoHud/lib/i386-linux-gnu/pkgconfig:/usr/lib/i386-linux-gnu/pkgconfig 29 | ldflags: -Wl,-rpath=/usr/lib/extensions/vulkan/MangoHud/lib/i386-linux-gnu 30 | append-path: /usr/lib/sdk/toolchain-i386/bin 31 | env: 32 | FLATPAK_LIBDIR: /usr/lib/extensions/vulkan/MangoHud/lib/i386-linux-gnu 33 | CC: ccache i686-unknown-linux-gnu-gcc 34 | CXX: ccache i686-unknown-linux-gnu-g++ 35 | cleanup: 36 | - /include 37 | - /share/cmake 38 | - /share/doc 39 | - /share/man 40 | - /share/pkgconfig 41 | - /lib/*/pkgconfig 42 | - /lib/*/cmake 43 | - /lib/*/*.a 44 | - /lib/*/*.la 45 | modules: 46 | - name: MangoHud 47 | build-options: 48 | arch: 49 | x86_64: *x86_64-build-options 50 | config-opts: 51 | - -Dmangoapp=true 52 | buildsystem: meson 53 | config-opts: &mangohud-config-opts 54 | - -Dappend_libdir_mangohud=false 55 | - -Dmangoplot=disabled 56 | sources: &mangohud-sources 57 | - type: archive 58 | url: https://github.com/flightlessmango/MangoHud/releases/download/v0.8.2/MangoHud-v0.8.2-Source.tar.xz 59 | sha256: 9fe98da24f790f4489efc1e0c8e3ad0291c80efd882a406797d54dab82f8765b 60 | x-checker-data: 61 | type: json 62 | url: https://api.github.com/repos/flightlessmango/MangoHud/releases 63 | url-query: | 64 | map(select(.tag_name | startswith("v"))) | first | 65 | .assets | map((select(.name | endswith("Source.tar.xz")))) | first | .browser_download_url 66 | version-query: | 67 | map(select(.tag_name | startswith("v"))) | first | 68 | .tag_name | sub("^[vV]"; "") 69 | modules: 70 | - name: glfw 71 | build-options: *x86_64-build-options 72 | buildsystem: cmake-ninja 73 | config-opts: &glfw-config-opts 74 | - -DGLFW_BUILD_EXAMPLES:BOOL=OFF 75 | - -DGLFW_BUILD_TESTS:BOOL=OFF 76 | - -DGLFW_BUILD_DOCS:BOOL=OFF 77 | sources: &glfw-sources 78 | - type: git 79 | url: https://github.com/glfw/glfw.git 80 | tag: '3.4' 81 | commit: 7b6aead9fb88b3623e3b3725ebb42670cbe4c579 82 | 83 | - name: libNVCtrl 84 | build-options: *x86_64-build-options 85 | no-autogen: true 86 | no-make-install: true 87 | build-commands: &libNVCtrl-build-commands 88 | - mkdir -p ${FLATPAK_LIBDIR} 89 | - cp -a libXNVCtrl.so* ${FLATPAK_LIBDIR} 90 | - install -D *.h -t ${FLATPAK_DEST}/include/NVCtrl 91 | subdir: src/libXNVCtrl 92 | sources: &libNVCtrl-sources 93 | - type: archive 94 | archive-type: tar 95 | url: https://api.github.com/repos/NVIDIA/nvidia-settings/tarball/refs/tags/470.63.01 96 | sha256: 0ede63515851d85ac0d1ed5f00e355f539968e6d1fd226120a27b2c66c3575de 97 | - type: patch 98 | path: patches/libxnvctrl_so_0.patch 99 | x-checker-data: 100 | type: json 101 | url: https://api.github.com/repos/NVIDIA/nvidia-settings/tags 102 | url-query: .[0].tarball_url 103 | version-query: .[0].name 104 | 105 | - name: MangoHud-32bit 106 | build-options: *i386-build-options 107 | buildsystem: meson 108 | config-opts: *mangohud-config-opts 109 | sources: *mangohud-sources 110 | modules: 111 | - name: glfw-32bit 112 | build-options: *i386-build-options 113 | buildsystem: cmake-ninja 114 | config-opts: *glfw-config-opts 115 | sources: *glfw-sources 116 | 117 | - name: libNVCtrl-32bit 118 | build-options: *i386-build-options 119 | no-autogen: true 120 | no-make-install: true 121 | build-commands: *libNVCtrl-build-commands 122 | subdir: src/libXNVCtrl 123 | sources: *libNVCtrl-sources 124 | 125 | - name: metadata 126 | buildsystem: simple 127 | build-commands: 128 | - install -Dm644 -t ${FLATPAK_DEST}/share/metainfo ${FLATPAK_ID}.metainfo.xml 129 | sources: 130 | - type: file 131 | path: org.freedesktop.Platform.VulkanLayer.MangoHud.metainfo.xml 132 | --------------------------------------------------------------------------------