# Autogenerated from vk-cts-sources.py
{ fetchurl, fetchFromGitHub }:
rec {
  amber = fetchFromGitHub {
    owner = "google";
    repo = "amber";
    rev = "0f003c2785489f59cd01bb2440fcf303149100f2";
    hash = "sha256-Q3LP8hQrKeM8J0qmJyTeC8Hq949Fe0wOjnkiia+UDag=";
  };

  glslang = fetchFromGitHub {
    owner = "KhronosGroup";
    repo = "glslang";
    rev = "b9b8fd917b195f680a1ce3f3f663c03e1c82579d";
    hash = "sha256-85kHk1KqhhOqLodRVVpQMhE44IQnzLoFXf/YPNY8aUI=";
  };

  jsoncpp = fetchFromGitHub {
    owner = "open-source-parsers";
    repo = "jsoncpp";
    rev = "9059f5cad030ba11d37818847443a53918c327b1";
    hash = "sha256-m0tz8w8HbtDitx3Qkn3Rxj/XhASiJVkThdeBxIwv3WI=";
  };

  nvidia-video-samples = fetchFromGitHub {
    owner = "Igalia";
    repo = "vk_video_samples";
    rev = "6821adf11eb4f84a2168264b954c170d03237699";
    hash = "sha256-prshOzxUHLYi64Pbyytsp+XvmtIIyhx/3n5IVimYH64=";
  };

  spirv-headers = fetchFromGitHub {
    owner = "KhronosGroup";
    repo = "SPIRV-Headers";
    rev = "4f7b471f1a66b6d06462cd4ba57628cc0cd087d7";
    hash = "sha256-CAmDDqeMVKNdV/91VQYAKyCc+e+H99PRYZzt5WjswBI=";
  };

  spirv-tools = fetchFromGitHub {
    owner = "KhronosGroup";
    repo = "SPIRV-Tools";
    rev = "dd4b663e13c07fea4fbb3f70c1c91c86731099f7";
    hash = "sha256-at3krE0torhjg7G+NkX0/ewc26Sg/1t2xW7wghAAuZo=";
  };

  vulkan-docs = fetchFromGitHub {
    owner = "KhronosGroup";
    repo = "Vulkan-Docs";
    rev = "dedb71a7edc6d5af3f9bfd5e2ef53814de999ef7";
    hash = "sha256-A61qx7sdcRipX4mHpGJVhd9Qlcv1xcjeGGnfyblMxUg=";
  };

  vulkan-validationlayers = fetchFromGitHub {
    owner = "KhronosGroup";
    repo = "Vulkan-ValidationLayers";
    rev = "f589bc456545fbab97caf49380b102b8aafe1f40";
    hash = "sha256-ZNJGGrUwTw3I0MQl9nKqGhb2bdPZZl+AR3YH3T+cn+c=";
  };


  prePatch = ''
    mkdir -p external/amber external/glslang external/jsoncpp external/nvidia-video-samples external/spirv-headers external/spirv-tools external/vulkan-docs external/vulkan-validationlayers

    cp -r ${amber} external/amber/src
    cp -r ${glslang} external/glslang/src
    cp -r ${jsoncpp} external/jsoncpp/src
    cp -r ${nvidia-video-samples} external/nvidia-video-samples/src
    cp -r ${spirv-headers} external/spirv-headers/src
    cp -r ${spirv-tools} external/spirv-tools/src
    cp -r ${vulkan-docs} external/vulkan-docs/src
    cp -r ${vulkan-validationlayers} external/vulkan-validationlayers/src
  '';
}
