From 5e268c85a072c7ea469c197393b2b495d9efccc6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?PedroHLC=20=E2=98=AD?= Date: Mon, 8 Aug 2022 15:04:17 -0300 Subject: [PATCH] vulkan-caps-viewer: init at 3.24 --- .../graphics/vulkan-caps-viewer/default.nix | 58 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 60 insertions(+) create mode 100644 pkgs/tools/graphics/vulkan-caps-viewer/default.nix diff --git a/pkgs/tools/graphics/vulkan-caps-viewer/default.nix b/pkgs/tools/graphics/vulkan-caps-viewer/default.nix new file mode 100644 index 000000000000..8b206c7b301b --- /dev/null +++ b/pkgs/tools/graphics/vulkan-caps-viewer/default.nix @@ -0,0 +1,58 @@ +{ lib +, stdenv +, fetchFromGitHub +, qmake +, vulkan-loader +, wrapQtAppsHook +, withX11 ? true +, qtx11extras +}: + +stdenv.mkDerivation rec { + pname = "vulkan-caps-viewer"; + version = "3.24"; + + src = fetchFromGitHub { + owner = "SaschaWillems"; + repo = "VulkanCapsViewer"; + rev = "${version}"; + hash = "sha256-BSydAPZ74rGzW4UA/aqL2K/86NTK/eZqc3MZUbdq7iU="; + # Note: this derivation strictly requires vulkan-header to be the same it was developed against. + # To help they put in a git-submodule. + # It works with older vulkan-loaders. + fetchSubmodules = true; + }; + + nativeBuildInputs = [ + qmake + wrapQtAppsHook + ]; + + buildInputs = [ + vulkan-loader + ] ++ lib.lists.optionals withX11 [ qtx11extras ]; + + patchPhase = '' + substituteInPlace vulkanCapsViewer.pro \ + --replace '/usr/' "/" + ''; + + qmakeFlags = [ + "DEFINES+=wayland" + "CONFIG+=release" + ] ++ lib.lists.optionals withX11 [ "DEFINES+=X11" ]; + + installFlags = [ "INSTALL_ROOT=$(out)" ]; + + meta = with lib; { + description = "Vulkan hardware capability viewer"; + longDescription = '' + Client application to display hardware implementation details for GPUs supporting the Vulkan API by Khronos. + The hardware reports can be submitted to a public online database that allows comparing different devices, browsing available features, extensions, formats, etc. + ''; + homepage = "https://vulkan.gpuinfo.org/"; + platforms = platforms.unix; + license = licenses.gpl2Only; + maintainers = with maintainers; [ pedrohlc ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 54a82c162f71..da66024b75d2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -21634,6 +21634,8 @@ with pkgs; vtk = vtk_8; vtkWithQt5 = vtk_8_withQt5; + vulkan-caps-viewer = libsForQt5.callPackage ../tools/graphics/vulkan-caps-viewer { }; + vulkan-extension-layer = callPackage ../tools/graphics/vulkan-extension-layer { }; vulkan-headers = callPackage ../development/libraries/vulkan-headers { }; vulkan-loader = callPackage ../development/libraries/vulkan-loader { inherit (darwin) moltenvk; };