amdvlk: 2021.Q4.1 -> 2021.Q4.2

This commit is contained in:
Sebastian Neubauer 2021-12-14 12:32:55 +01:00 committed by Neubauer, Sebastian
parent d995f2abb9
commit 1769ca8b7e

View file

@ -1,6 +1,7 @@
{ stdenv { stdenv
, lib , lib
, fetchRepoProject , fetchRepoProject
, writeScript
, cmake , cmake
, ninja , ninja
, patchelf , patchelf
@ -21,17 +22,18 @@ let
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
pname = "amdvlk"; pname = "amdvlk";
version = "2021.Q4.1"; version = "2021.Q4.2";
src = fetchRepoProject { src = fetchRepoProject {
name = "${pname}-src"; name = "${pname}-src";
manifest = "https://github.com/GPUOpen-Drivers/AMDVLK.git"; manifest = "https://github.com/GPUOpen-Drivers/AMDVLK.git";
rev = "refs/tags/v-${version}"; rev = "refs/tags/v-${version}";
sha256 = "sha256-yvpHLreBNhiSxnZis5+XcTOSZPRLq5K8YNJsjpYqD6s="; sha256 = "DpylZjIqWmCnUI0lEvd/HQcY+lr8asMurt1K9MI3qQw=";
}; };
buildInputs = [ buildInputs = [
expat expat
libdrm
ncurses ncurses
openssl openssl
wayland wayland
@ -66,16 +68,36 @@ in stdenv.mkDerivation rec {
cmakeDir = "../drivers/xgl"; cmakeDir = "../drivers/xgl";
installPhase = '' installPhase = ''
runHook preInstall
install -Dm755 -t $out/lib icd/amdvlk${suffix}.so install -Dm755 -t $out/lib icd/amdvlk${suffix}.so
install -Dm644 -t $out/share/vulkan/icd.d icd/amd_icd${suffix}.json install -Dm644 -t $out/share/vulkan/icd.d icd/amd_icd${suffix}.json
install -Dm644 -t $out/share/vulkan/implicit_layer.d icd/amd_icd${suffix}.json install -Dm644 -t $out/share/vulkan/implicit_layer.d icd/amd_icd${suffix}.json
patchelf --set-rpath "$rpath" $out/lib/amdvlk${suffix}.so patchelf --set-rpath "$rpath" $out/lib/amdvlk${suffix}.so
runHook postInstall
''; '';
# Keep the rpath, otherwise vulkaninfo and vkcube segfault # Keep the rpath, otherwise vulkaninfo and vkcube segfault
dontPatchELF = true; dontPatchELF = true;
passthru.updateScript = writeScript "update.sh" ''
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p coreutils curl gnused jq common-updater-scripts
function setHash() {
sed -i "pkgs/development/libraries/amdvlk/default.nix" -e 's,sha256 = "[^.'"'"']*",sha256 = "'"$1"'",'
}
version="$(curl -sL "https://api.github.com/repos/GPUOpen-Drivers/AMDVLK/releases?per_page=1" | jq '.[0].tag_name | split("-") | .[1]' --raw-output)"
sed -i "pkgs/development/libraries/amdvlk/default.nix" -e 's/version = "[^.'"'"']*"/version = "'"$version"'"/'
setHash "$(nix-instantiate --eval -A lib.fakeSha256 | xargs echo)"
hash="$(nix to-base64 $(nix-build -A amdvlk 2>&1 | tail -n3 | grep 'got:' | cut -d: -f2- | xargs echo || true))"
setHash "$hash"
'';
meta = with lib; { meta = with lib; {
description = "AMD Open Source Driver For Vulkan"; description = "AMD Open Source Driver For Vulkan";
homepage = "https://github.com/GPUOpen-Drivers/AMDVLK"; homepage = "https://github.com/GPUOpen-Drivers/AMDVLK";