diff options
author | Ilan Joselevich <personal@ilanjoselevich.com> | 2023-04-08 12:19:06 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-08 12:19:06 +0300 |
commit | d9f759f2ea8d265d974a6e1259bd510ac5844c5d (patch) | |
tree | 97665ce318651b5912fd1bea736f86edb2a31556 | |
parent | db87eaab76f01c4b07183c8c8664e25266532653 (diff) | |
parent | ee9df2c1a838f2f6905dd34d03b36926c55929e2 (diff) | |
download | nixpkgs-d9f759f2ea8d265d974a6e1259bd510ac5844c5d.tar nixpkgs-d9f759f2ea8d265d974a6e1259bd510ac5844c5d.tar.gz nixpkgs-d9f759f2ea8d265d974a6e1259bd510ac5844c5d.tar.bz2 nixpkgs-d9f759f2ea8d265d974a6e1259bd510ac5844c5d.tar.lz nixpkgs-d9f759f2ea8d265d974a6e1259bd510ac5844c5d.tar.xz nixpkgs-d9f759f2ea8d265d974a6e1259bd510ac5844c5d.tar.zst nixpkgs-d9f759f2ea8d265d974a6e1259bd510ac5844c5d.zip |
Merge pull request #224650 from Kranzes/vulkan-sdk-update-script
vulkan-headers: add update script
8 files changed, 68 insertions, 47 deletions
diff --git a/pkgs/development/libraries/vulkan-headers/default.nix b/pkgs/development/libraries/vulkan-headers/default.nix index e34cf98d510..dc102c7e678 100644 --- a/pkgs/development/libraries/vulkan-headers/default.nix +++ b/pkgs/development/libraries/vulkan-headers/default.nix @@ -12,6 +12,8 @@ stdenv.mkDerivation rec { hash = "sha256-mzxT6s4ZHShB9tGyyf8jDtVWVEclHPYW+9oKy7v0bC4="; }; + passthru.updateScript = ./update.sh; + meta = with lib; { description = "Vulkan Header files and API registry"; homepage = "https://www.lunarg.com"; diff --git a/pkgs/development/libraries/vulkan-headers/update.sh b/pkgs/development/libraries/vulkan-headers/update.sh new file mode 100755 index 00000000000..9857af699e2 --- /dev/null +++ b/pkgs/development/libraries/vulkan-headers/update.sh @@ -0,0 +1,23 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p curl jq nix-update + +set -euf -o pipefail + +NEW_VERSION=$(curl https://vulkan.lunarg.com/sdk/latest/linux.json | jq -r '.linux') + +VULKAN_SDK_PACKAGES=( + "vulkan-headers" + "spirv-headers" + "glslang" + "vulkan-loader" + "spirv-tools" + "spirv-cross" + "vulkan-validation-layers" + "vulkan-tools" + "vulkan-tools-lunarg" + "vulkan-extension-layer" +) + +for P in "${VULKAN_SDK_PACKAGES[@]}"; do + nix-update "$P" --version "$NEW_VERSION" --commit +done diff --git a/pkgs/development/libraries/vulkan-loader/default.nix b/pkgs/development/libraries/vulkan-loader/default.nix index b45bf4c66be..2c22211969d 100644 --- a/pkgs/development/libraries/vulkan-loader/default.nix +++ b/pkgs/development/libraries/vulkan-loader/default.nix @@ -5,13 +5,12 @@ stdenv.mkDerivation rec { pname = "vulkan-loader"; version = "1.3.239.0"; - src = (assert version == vulkan-headers.version; - fetchFromGitHub { - owner = "KhronosGroup"; - repo = "Vulkan-Loader"; - rev = "sdk-${version}"; - hash = "sha256-4oxynsbFLmsrpI5NEs7gI50g0XVcaUWuZRn6JKB/+hA="; - }); + src = fetchFromGitHub { + owner = "KhronosGroup"; + repo = "Vulkan-Loader"; + rev = "sdk-${version}"; + hash = "sha256-4oxynsbFLmsrpI5NEs7gI50g0XVcaUWuZRn6JKB/+hA="; + }; patches = [ ./fix-pkgconfig.patch ]; @@ -41,5 +40,6 @@ stdenv.mkDerivation rec { platforms = platforms.unix; license = licenses.asl20; maintainers = [ maintainers.ralith ]; + broken = (version != vulkan-headers.version); }; } diff --git a/pkgs/development/tools/spirv-tools/default.nix b/pkgs/development/tools/spirv-tools/default.nix index cc8b30ab18c..25253633593 100644 --- a/pkgs/development/tools/spirv-tools/default.nix +++ b/pkgs/development/tools/spirv-tools/default.nix @@ -4,14 +4,12 @@ stdenv.mkDerivation rec { pname = "spirv-tools"; version = "1.3.239.0"; - src = (assert version == spirv-headers.version; - fetchFromGitHub { - owner = "KhronosGroup"; - repo = "SPIRV-Tools"; - rev = "sdk-${version}"; - hash = "sha256-xLYykbCHb6OH5wUSgheAfReXhxZtI3RqBJ+PxDZx58s="; - } - ); + src = fetchFromGitHub { + owner = "KhronosGroup"; + repo = "SPIRV-Tools"; + rev = "sdk-${version}"; + hash = "sha256-xLYykbCHb6OH5wUSgheAfReXhxZtI3RqBJ+PxDZx58s="; + }; nativeBuildInputs = [ cmake python3 ]; @@ -43,5 +41,6 @@ stdenv.mkDerivation rec { license = licenses.asl20; platforms = platforms.unix; maintainers = [ maintainers.ralith ]; + broken = (version != spirv-headers.version); }; } diff --git a/pkgs/development/tools/vulkan-validation-layers/default.nix b/pkgs/development/tools/vulkan-validation-layers/default.nix index c2477ed02d5..65797d3c81c 100644 --- a/pkgs/development/tools/vulkan-validation-layers/default.nix +++ b/pkgs/development/tools/vulkan-validation-layers/default.nix @@ -30,13 +30,12 @@ stdenv.mkDerivation rec { outputs = ["out" "headers"]; outputInclude = "headers"; - src = (assert (lib.all (pkg: pkg.version == version) [vulkan-headers glslang spirv-tools spirv-headers]); - fetchFromGitHub { - owner = "KhronosGroup"; - repo = "Vulkan-ValidationLayers"; - rev = "sdk-${version}"; - hash = "sha256-k/A0TaERQAHSM0Fal2IOaRvTz3FV2Go/17P12FSBG1s="; - }); + src = fetchFromGitHub { + owner = "KhronosGroup"; + repo = "Vulkan-ValidationLayers"; + rev = "sdk-${version}"; + hash = "sha256-k/A0TaERQAHSM0Fal2IOaRvTz3FV2Go/17P12FSBG1s="; + }; nativeBuildInputs = [ cmake @@ -85,5 +84,6 @@ stdenv.mkDerivation rec { platforms = platforms.linux; license = licenses.asl20; maintainers = [ maintainers.ralith ]; + broken = (lib.all (pkg: pkg.version != version) [vulkan-headers glslang spirv-tools spirv-headers]); }; } diff --git a/pkgs/tools/graphics/vulkan-extension-layer/default.nix b/pkgs/tools/graphics/vulkan-extension-layer/default.nix index 63d763a893d..a398c4f0e98 100644 --- a/pkgs/tools/graphics/vulkan-extension-layer/default.nix +++ b/pkgs/tools/graphics/vulkan-extension-layer/default.nix @@ -4,13 +4,12 @@ stdenv.mkDerivation rec { pname = "vulkan-extension-layer"; version = "1.3.239.0"; - src = (assert version == vulkan-headers.version; - fetchFromGitHub { - owner = "KhronosGroup"; - repo = "Vulkan-ExtensionLayer"; - rev = "sdk-${version}"; - hash = "sha256-0t9HGyiYk3twYQLFCcWsrPiXY1dqjdCadjP4yMLoFwA="; - }); + src = fetchFromGitHub { + owner = "KhronosGroup"; + repo = "Vulkan-ExtensionLayer"; + rev = "sdk-${version}"; + hash = "sha256-0t9HGyiYk3twYQLFCcWsrPiXY1dqjdCadjP4yMLoFwA="; + }; nativeBuildInputs = [ cmake jq ]; @@ -41,5 +40,6 @@ stdenv.mkDerivation rec { platforms = platforms.linux; license = licenses.asl20; maintainers = with maintainers; [ expipiplus1 ]; + broken = (version != vulkan-headers.version); }; } diff --git a/pkgs/tools/graphics/vulkan-tools-lunarg/default.nix b/pkgs/tools/graphics/vulkan-tools-lunarg/default.nix index ec1862df9cd..c837e0d3061 100644 --- a/pkgs/tools/graphics/vulkan-tools-lunarg/default.nix +++ b/pkgs/tools/graphics/vulkan-tools-lunarg/default.nix @@ -27,14 +27,13 @@ stdenv.mkDerivation rec { # The version must match that in vulkan-headers version = "1.3.239.0"; - src = (assert version == vulkan-headers.version; - fetchFromGitHub { - owner = "LunarG"; - repo = "VulkanTools"; - rev = "sdk-${version}"; - hash = "sha256-zgkuTy9ccg8D/riA1CM/PnbXW1R0jWEINtcEVilETwk="; - fetchSubmodules = true; - }); + src = fetchFromGitHub { + owner = "LunarG"; + repo = "VulkanTools"; + rev = "sdk-${version}"; + hash = "sha256-zgkuTy9ccg8D/riA1CM/PnbXW1R0jWEINtcEVilETwk="; + fetchSubmodules = true; + }; nativeBuildInputs = [ cmake python3 jq which pkg-config ]; @@ -103,5 +102,6 @@ stdenv.mkDerivation rec { platforms = platforms.linux; license = licenses.asl20; maintainers = [ maintainers.expipiplus1 ]; + broken = (version != vulkan-headers.version); }; } diff --git a/pkgs/tools/graphics/vulkan-tools/default.nix b/pkgs/tools/graphics/vulkan-tools/default.nix index da84038fd0f..b3a2bca200e 100644 --- a/pkgs/tools/graphics/vulkan-tools/default.nix +++ b/pkgs/tools/graphics/vulkan-tools/default.nix @@ -23,16 +23,12 @@ stdenv.mkDerivation rec { pname = "vulkan-tools"; version = "1.3.239.0"; - # It's not strictly necessary to have matching versions here, however - # since we're using the SDK version we may as well be consistent with - # the rest of nixpkgs. - src = (assert (version) == vulkan-headers.version; - fetchFromGitHub { - owner = "KhronosGroup"; - repo = "Vulkan-Tools"; - rev = "sdk-${version}"; - hash = "sha256-DQGwxTZzS0eATKodMpeJaQdXADvomiqPOspDYoPFZjI="; - }); + src = fetchFromGitHub { + owner = "KhronosGroup"; + repo = "Vulkan-Tools"; + rev = "sdk-${version}"; + hash = "sha256-DQGwxTZzS0eATKodMpeJaQdXADvomiqPOspDYoPFZjI="; + }; nativeBuildInputs = [ cmake @@ -107,5 +103,6 @@ stdenv.mkDerivation rec { platforms = platforms.unix; license = licenses.asl20; maintainers = [ maintainers.ralith ]; + broken = (version != vulkan-headers.version); }; } |