# Maintainer: kerriganx # Based on aur/amdgpu-pro-installer, patched version to enable AMF on RX 6000 series cards # Workaround is to keep vulkan-pro files from 21.40.2 and use the amf and libamdenc from latest version # https://github.com/GPUOpen-LibrariesAndSDKs/AMF/issues/334 # Author: Janusz Lewandowski # Contributor: David McFarland # Maintainer: Andrew Shark # Autogenerated from AMD's Packages file # with https://github.com/Ashark/archlinux-amdgpu-pro/blob/master/gen-PKGBUILD.py major=22.20.3 major_=22.20 major1=21.40.2 minor=1462318 minor1=1350683 ubuntu_ver=22.04 pkgbase=amdgpu-pro-installer-fix pkgname=( amf-amdgpu-pro-fix amdgpu-pro-libgl-fix lib32-amdgpu-pro-libgl-fix vulkan-amdgpu-pro-fix lib32-vulkan-amdgpu-pro-fix ) pkgver=${major}_${minor} pkgrel=1 arch=('x86_64') url=https://www.amd.com/en/support/kb/release-notes/rn-amdgpu-unified-linux-22-20 license=('custom: multiple') groups=('Radeon_Software_for_Linux') makedepends=('wget') DLAGENTS='https::/usr/bin/wget --referer https://www.amd.com/en/support/kb/release-notes/rn-amdgpu-unified-linux-22-20 -N %u' source=(progl progl.bash-completion http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/a/amf-amdgpu-pro/amf-amdgpu-pro_1.4.26-${minor}~${ubuntu_ver}_amd64.deb http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/liba/libamdenc-amdgpu-pro/libamdenc-amdgpu-pro_1.0-${minor}~${ubuntu_ver}_amd64.deb http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libegl1-amdgpu-pro_${major_}-${minor}~${ubuntu_ver}_i386.deb http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libegl1-amdgpu-pro_${major_}-${minor}~${ubuntu_ver}_amd64.deb http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/a/appprofiles-amdgpu-pro/libgl1-amdgpu-pro-appprofiles_${major_}-${minor}~${ubuntu_ver}_all.deb http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libgl1-amdgpu-pro-dri_${major_}-${minor}~${ubuntu_ver}_i386.deb http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libgl1-amdgpu-pro-dri_${major_}-${minor}~${ubuntu_ver}_amd64.deb http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libgl1-amdgpu-pro-ext_${major_}-${minor}~${ubuntu_ver}_i386.deb http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libgl1-amdgpu-pro-ext_${major_}-${minor}~${ubuntu_ver}_amd64.deb http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libgl1-amdgpu-pro-glx_${major_}-${minor}~${ubuntu_ver}_i386.deb http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libgl1-amdgpu-pro-glx_${major_}-${minor}~${ubuntu_ver}_amd64.deb http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libglapi1-amdgpu-pro_${major_}-${minor}~${ubuntu_ver}_i386.deb http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libglapi1-amdgpu-pro_${major_}-${minor}~${ubuntu_ver}_amd64.deb http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libgles2-amdgpu-pro_${major_}-${minor}~${ubuntu_ver}_i386.deb http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libgles2-amdgpu-pro_${major_}-${minor}~${ubuntu_ver}_amd64.deb https://repo.radeon.com/amdgpu/${major1}/ubuntu/pool/proprietary/v/vulkan-amdgpu-pro/vulkan-amdgpu-pro_${major1}-${minor1}_i386.deb https://repo.radeon.com/amdgpu/${major1}/ubuntu/pool/proprietary/v/vulkan-amdgpu-pro/vulkan-amdgpu-pro_${major1}-${minor1}_amd64.deb) sha256sums=(feb74796c3152cbafaba89d96e68a152f209bd3058c7eb0413cbe1ab0764e96f e32801c38b475cd8df17a407726b86db3de26410f563d688325b4d4314fc5354 c9109b2e2e7a164587e45fd872c51822bd849622c1ec9521bd850c35a8496d3c 59c33ced1b92fb8a5502d668be82e99d66f091b98cd278d8180cf79f24feca77 856444235f72d50beb3abd1833fec42f1f62269b9f275a2b78d2f3c04d6bfc81 6f7d4418ffa1d8eb910375efb7001c2eb431f49645cc03eb31de6ae41c4f7305 beabd9f8d667cedc7016373825af8c7c08aae9c68f89490bc92d3ad97add1410 906222a4ce3bc9cf37e8afda12e88b30530c94a850a754c73e0c8ec82937d560 4cff49c754da82e15af16f18cda9ab79df20695bf62b1d9a9faccb219c2e33b9 8028ae91ce406b74a6daffd44214da24eb5d7a3e77e6b415ea358ca8bc8a5b65 b6b183ed43112d2bf3ae21c4c3c9c9d26992e85c7d8cffcee08bcd68ada50675 594607da689fc267a4e1b6f33790aec262752d5029ea3c591b8375e4f0d2b011 68b5bc54f7697ebaee5dff304f9689afd7e7975b740792a170e22f4ece16ffac 921c3bb7fad2c3406f639ba3947838a90b46d6520ce3ba4a193597cdf5029420 e30bb681e2c5412db26a3a811b712c3b2064c90c733d5643c27d4a062362f26e b4594905ab0d2e7173535f3f7d8c3527911d8c5904fb75c1cdb3c3c9c941b523 f650fcdbf5f15de5c23026602deab305d126fc55a94ede60085d2fb38f2612c8 8213fc0829262c2d0299cf4f6d1412d092d0eeda5ef4714f0022a447d79e88f5 5e8e8387da1272f34f7bf9357609f473db2aad4c8d8ce19e3d803795abdc8133) # extracts a debian package # $1: deb file to extract extract_deb() { local tmpdir="$(basename "${1%.deb}")" rm -Rf "$tmpdir" mkdir "$tmpdir" cd "$tmpdir" ar x "$1" tar -C "${pkgdir}" -xf data.tar.xz } # move ubuntu specific /usr/lib/x86_64-linux-gnu to /usr/lib # $1: debian package library dir (goes from opt/amdgpu or opt/amdgpu-pro and from x86_64 or i386) # $2: arch package library dir (goes to usr/lib or usr/lib32) move_libdir() { local deb_libdir="$1" local arch_libdir="$2" if [ -d "${pkgdir}/${deb_libdir}" ]; then if [ ! -d "${pkgdir}/${arch_libdir}" ]; then mkdir -p "${pkgdir}/${arch_libdir}" fi mv -t "${pkgdir}/${arch_libdir}/" "${pkgdir}/${deb_libdir}"/* find ${pkgdir} -type d -empty -delete fi } # move copyright file to proper place and remove debian changelog move_copyright() { find ${pkgdir}/usr/share/doc -name "changelog.Debian.gz" -delete mkdir -p ${pkgdir}/usr/share/licenses/${pkgname} find ${pkgdir}/usr/share/doc -name "copyright" -exec mv {} ${pkgdir}/usr/share/licenses/${pkgname} \; find ${pkgdir}/usr/share/doc -type d -empty -delete } package_amf-amdgpu-pro-fix () { pkgdesc="AMDGPU Pro Advanced Multimedia Framework, patched version to enable AMF on RX 6000 series cards" license=('custom: AMDGPU-PRO EULA') depends=("libdrm" "vulkan-amdgpu-pro-fix=${major}_${minor}-${pkgrel}") conflicts=('amf-amdgpu-pro') optdepends=("rocm-opencl-runtime: Warning unspecified optdep description") extract_deb "${srcdir}"/amf-amdgpu-pro_1.4.26-${minor}~${ubuntu_ver}_amd64.deb extract_deb "${srcdir}"/libamdenc-amdgpu-pro_1.0-${minor}~${ubuntu_ver}_amd64.deb move_libdir "opt/amdgpu-pro/lib/x86_64-linux-gnu" "usr/lib" move_copyright } package_amdgpu-pro-libgl-fix () { pkgdesc="AMDGPU Pro OpenGL driver, patched version to enable AMF on RX 6000 series cards" license=('custom: AMDGPU-PRO EULA') provides=('libgl') conflicts=('amdgpu-pro-libgl') depends=("libdrm" "libx11" "libxcb" "libxdamage" "libxext" "libxfixes" "libxxf86vm") backup=(etc/amd/amdapfxx.blb) extract_deb "${srcdir}"/libegl1-amdgpu-pro_${major_}-${minor}~${ubuntu_ver}_amd64.deb extract_deb "${srcdir}"/libgl1-amdgpu-pro-appprofiles_${major_}-${minor}~${ubuntu_ver}_all.deb extract_deb "${srcdir}"/libgl1-amdgpu-pro-dri_${major_}-${minor}~${ubuntu_ver}_amd64.deb extract_deb "${srcdir}"/libgl1-amdgpu-pro-ext_${major_}-${minor}~${ubuntu_ver}_amd64.deb extract_deb "${srcdir}"/libgl1-amdgpu-pro-glx_${major_}-${minor}~${ubuntu_ver}_amd64.deb extract_deb "${srcdir}"/libglapi1-amdgpu-pro_${major_}-${minor}~${ubuntu_ver}_amd64.deb extract_deb "${srcdir}"/libgles2-amdgpu-pro_${major_}-${minor}~${ubuntu_ver}_amd64.deb move_copyright # extra_commands: move_libdir "usr/lib/x86_64-linux-gnu" "usr/lib" move_libdir "opt/amdgpu-pro/lib/x86_64-linux-gnu" "usr/lib/amdgpu-pro" move_libdir "opt/amdgpu-pro/lib/xorg" "usr/lib/amdgpu-pro/xorg" move_libdir "opt/amdgpu/share/drirc.d" "usr/share/drirc.d" sed -i "s|/opt/amdgpu-pro/lib/x86_64-linux-gnu|#/usr/lib/amdgpu-pro # commented to prevent problems of booting with amdgpu-pro, use progl script|" "${pkgdir}"/etc/ld.so.conf.d/10-amdgpu-pro-x86_64.conf install -Dm755 "${srcdir}"/progl "${pkgdir}"/usr/bin/progl install -Dm755 "${srcdir}"/progl.bash-completion "${pkgdir}"/usr/share/bash-completion/completions/progl # For some reason, applications started with normal OpenGL (i.e. without ag pro) crashes at launch if this conf file is presented, so hide it for now, until I find out the reason of that. mv "${pkgdir}"/usr/share/drirc.d/10-amdgpu-pro.conf "${pkgdir}"/usr/share/drirc.d/10-amdgpu-pro.conf.hide } package_lib32-amdgpu-pro-libgl-fix () { pkgdesc="AMDGPU Pro OpenGL driver (32-bit), patched version to enable AMF on RX 6000 series cards" license=('custom: AMDGPU-PRO EULA') provides=('lib32-libgl') conflicts=('lib32-amdgpu-pro-libgl') depends=("amdgpu-pro-libgl-fix=${major}_${minor}-${pkgrel}" "lib32-libdrm" "lib32-libx11" "lib32-libxcb" "lib32-libxdamage" "lib32-libxext" "lib32-libxfixes" "lib32-libxxf86vm") backup=(etc/amd/amdrc etc/ld.so.conf.d/10-amdgpu-pro-i386.conf) extract_deb "${srcdir}"/libegl1-amdgpu-pro_${major_}-${minor}~${ubuntu_ver}_i386.deb extract_deb "${srcdir}"/libgl1-amdgpu-pro-dri_${major_}-${minor}~${ubuntu_ver}_i386.deb extract_deb "${srcdir}"/libgl1-amdgpu-pro-ext_${major_}-${minor}~${ubuntu_ver}_i386.deb extract_deb "${srcdir}"/libgl1-amdgpu-pro-glx_${major_}-${minor}~${ubuntu_ver}_i386.deb extract_deb "${srcdir}"/libglapi1-amdgpu-pro_${major_}-${minor}~${ubuntu_ver}_i386.deb extract_deb "${srcdir}"/libgles2-amdgpu-pro_${major_}-${minor}~${ubuntu_ver}_i386.deb move_copyright # extra_commands: rm "${pkgdir}"/etc/amd/amdrc "${pkgdir}"/opt/amdgpu-pro/lib/xorg/modules/extensions/libglx.so "${pkgdir}"/opt/amdgpu/share/drirc.d/10-amdgpu-pro.conf move_libdir "usr/lib/i386-linux-gnu" "usr/lib32" move_libdir "opt/amdgpu-pro/lib/i386-linux-gnu" "usr/lib32/amdgpu-pro" sed -i "s|/opt/amdgpu-pro/lib/i386-linux-gnu|#/usr/lib32/amdgpu-pro # commented to prevent problems of booting with amdgpu-pro, use progl32 script|" "${pkgdir}"/etc/ld.so.conf.d/10-amdgpu-pro-i386.conf } package_vulkan-amdgpu-pro-fix () { pkgdesc="AMDGPU Pro Vulkan driver, patched version to enable AMF on RX 6000 series cards" license=('custom: AMDGPU-PRO EULA') provides=('vulkan-driver') conflicts=('vulkan-amdgpu-pro') depends=("vulkan-icd-loader") optdepends=("openssl: Warning unspecified optdep description") extract_deb "${srcdir}"/vulkan-amdgpu-pro_${major1}-${minor1}_amd64.deb move_libdir "opt/amdgpu-pro/lib/x86_64-linux-gnu" "usr/lib" move_copyright # extra_commands: mkdir -p "${pkgdir}"/usr/share/vulkan/icd.d/ mv "${pkgdir}"/opt/amdgpu-pro/etc/vulkan/icd.d/amd_icd64.json "${pkgdir}"/usr/share/vulkan/icd.d/amd_pro_icd64.json mv "${pkgdir}"/usr/lib/amdvlk64.so "${pkgdir}"/usr/lib/amdvlkpro64.so sed -i "s#/opt/amdgpu-pro/lib/x86_64-linux-gnu/amdvlk64.so#/usr/lib/amdvlkpro64.so#" "${pkgdir}"/usr/share/vulkan/icd.d/amd_pro_icd64.json find ${pkgdir} -type d -empty -delete } package_lib32-vulkan-amdgpu-pro-fix () { pkgdesc="AMDGPU Pro Vulkan driver (32-bit), patched version to enable AMF on RX 6000 series cards" license=('custom: AMDGPU-PRO EULA') provides=('lib32-vulkan-driver') conflicts=('lib32-vulkan-amdgpu-pro') depends=("lib32-vulkan-icd-loader") optdepends=("lib32-openssl: Warning unspecified optdep description") extract_deb "${srcdir}"/vulkan-amdgpu-pro_${major1}-${minor1}_i386.deb move_libdir "opt/amdgpu-pro/lib/i386-linux-gnu" "usr/lib32" move_copyright # extra_commands: mkdir -p "${pkgdir}"/usr/share/vulkan/icd.d/ mv "${pkgdir}"/opt/amdgpu-pro/etc/vulkan/icd.d/amd_icd32.json "${pkgdir}"/usr/share/vulkan/icd.d/amd_pro_icd32.json mv "${pkgdir}"/usr/lib32/amdvlk32.so "${pkgdir}"/usr/lib32/amdvlkpro32.so sed -i "s#/opt/amdgpu-pro/lib/i386-linux-gnu/amdvlk32.so#/usr/lib32/amdvlkpro32.so#" "${pkgdir}"/usr/share/vulkan/icd.d/amd_pro_icd32.json find ${pkgdir} -type d -empty -delete }