Skip to content

Instantly share code, notes, and snippets.

@fnxln
Created September 20, 2022 16:07
Show Gist options
  • Save fnxln/aa27895f193e0590960d0680629b63f3 to your computer and use it in GitHub Desktop.
Save fnxln/aa27895f193e0590960d0680629b63f3 to your computer and use it in GitHub Desktop.
amdgpu-pro-installer 22.20.3
# Author: Janusz Lewandowski <[email protected]>
# Contributor: David McFarland <[email protected]>
# Maintainer: Andrew Shark <ashark @at@ linuxcomp.ru>
# Autogenerated from AMD's Packages file
# with https://github.com/Ashark/archlinux-amdgpu-pro/blob/master/gen-PKGBUILD.py
major=22.20.3
major_minor=22.20
minor=1462318
ubuntu_ver=22.04
pkgbase=amdgpu-pro-installer
pkgname=(
amf-amdgpu-pro
amdgpu-pro-libgl
lib32-amdgpu-pro-libgl
vulkan-amdgpu-pro
lib32-vulkan-amdgpu-pro
)
pkgver=${major}_${minor}
pkgrel=1
arch=('x86_64')
url=https://www.amd.com/en/support/kb/release-notes/rn-amdgpu-unified-linux-22-10-2
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-10-2 -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}-${minor}\~${ubuntu_ver}_i386.deb
http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libegl1-amdgpu-pro_${major_minor}-${minor}\~${ubuntu_ver}_amd64.deb
http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/a/appprofiles-amdgpu-pro/libgl1-amdgpu-pro-appprofiles_${major_minor}-${minor}\~${ubuntu_ver}_all.deb
http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libgl1-amdgpu-pro-dri_${major_minor}-${minor}\~${ubuntu_ver}_i386.deb
http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libgl1-amdgpu-pro-dri_${major_minor}-${minor}\~${ubuntu_ver}_amd64.deb
http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libgl1-amdgpu-pro-ext_${major_minor}-${minor}\~${ubuntu_ver}_i386.deb
http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libgl1-amdgpu-pro-ext_${major_minor}-${minor}\~${ubuntu_ver}_amd64.deb
http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libgl1-amdgpu-pro-glx_${major_minor}-${minor}\~${ubuntu_ver}_i386.deb
http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libgl1-amdgpu-pro-glx_${major_minor}-${minor}\~${ubuntu_ver}_amd64.deb
http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libglapi1-amdgpu-pro_${major_minor}-${minor}\~${ubuntu_ver}_i386.deb
http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libglapi1-amdgpu-pro_${major_minor}-${minor}\~${ubuntu_ver}_amd64.deb
http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libgles2-amdgpu-pro_${major_minor}-${minor}\~${ubuntu_ver}_i386.deb
http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/o/opengl-amdgpu-pro/libgles2-amdgpu-pro_${major_minor}-${minor}\~${ubuntu_ver}_amd64.deb
http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/v/vulkan-amdgpu-pro/vulkan-amdgpu-pro_${major_minor}-${minor}\~${ubuntu_ver}_i386.deb
http://repo.radeon.com/amdgpu/${major}/ubuntu/pool/proprietary/v/vulkan-amdgpu-pro/vulkan-amdgpu-pro_${major_minor}-${minor}\~${ubuntu_ver}_amd64.deb)
sha256sums=('feb74796c3152cbafaba89d96e68a152f209bd3058c7eb0413cbe1ab0764e96f'
'e32801c38b475cd8df17a407726b86db3de26410f563d688325b4d4314fc5354'
'c9109b2e2e7a164587e45fd872c51822bd849622c1ec9521bd850c35a8496d3c'
'59c33ced1b92fb8a5502d668be82e99d66f091b98cd278d8180cf79f24feca77'
'856444235f72d50beb3abd1833fec42f1f62269b9f275a2b78d2f3c04d6bfc81'
'6f7d4418ffa1d8eb910375efb7001c2eb431f49645cc03eb31de6ae41c4f7305'
'beabd9f8d667cedc7016373825af8c7c08aae9c68f89490bc92d3ad97add1410'
'906222a4ce3bc9cf37e8afda12e88b30530c94a850a754c73e0c8ec82937d560'
'4cff49c754da82e15af16f18cda9ab79df20695bf62b1d9a9faccb219c2e33b9'
'8028ae91ce406b74a6daffd44214da24eb5d7a3e77e6b415ea358ca8bc8a5b65'
'b6b183ed43112d2bf3ae21c4c3c9c9d26992e85c7d8cffcee08bcd68ada50675'
'594607da689fc267a4e1b6f33790aec262752d5029ea3c591b8375e4f0d2b011'
'68b5bc54f7697ebaee5dff304f9689afd7e7975b740792a170e22f4ece16ffac'
'921c3bb7fad2c3406f639ba3947838a90b46d6520ce3ba4a193597cdf5029420'
'e30bb681e2c5412db26a3a811b712c3b2064c90c733d5643c27d4a062362f26e'
'b4594905ab0d2e7173535f3f7d8c3527911d8c5904fb75c1cdb3c3c9c941b523'
'f650fcdbf5f15de5c23026602deab305d126fc55a94ede60085d2fb38f2612c8'
'0176761780eed3127031b9dfcbc11d97a7dad04dad84311fcaa9f36b2e88c6fe'
'd31975ec084ec2c934f372685a091d79cd713415e171c2b07749ff1ed51a192d')
# 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 () {
pkgdesc="AMDGPU Pro Advanced Multimedia Framework"
license=('custom: AMDGPU-PRO EULA')
depends=("libdrm" "vulkan-amdgpu-pro=${major}_${minor}-${pkgrel}")
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 () {
pkgdesc="AMDGPU Pro OpenGL driver"
license=('custom: AMDGPU-PRO EULA')
provides=('libgl')
depends=("libdrm" "libx11" "libxcb" "libxdamage" "libxext" "libxfixes" "libxxf86vm")
backup=(etc/amd/amdapfxx.blb)
extract_deb "${srcdir}"/libegl1-amdgpu-pro_${major_minor}-${minor}\~${ubuntu_ver}_amd64.deb
extract_deb "${srcdir}"/libgl1-amdgpu-pro-appprofiles_${major_minor}-${minor}\~${ubuntu_ver}_all.deb
extract_deb "${srcdir}"/libgl1-amdgpu-pro-dri_${major_minor}-${minor}\~${ubuntu_ver}_amd64.deb
extract_deb "${srcdir}"/libgl1-amdgpu-pro-ext_${major_minor}-${minor}\~${ubuntu_ver}_amd64.deb
extract_deb "${srcdir}"/libgl1-amdgpu-pro-glx_${major_minor}-${minor}\~${ubuntu_ver}_amd64.deb
extract_deb "${srcdir}"/libglapi1-amdgpu-pro_${major_minor}-${minor}\~${ubuntu_ver}_amd64.deb
extract_deb "${srcdir}"/libgles2-amdgpu-pro_${major_minor}-${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 () {
pkgdesc="AMDGPU Pro OpenGL driver (32-bit)"
license=('custom: AMDGPU-PRO EULA')
provides=('lib32-libgl')
depends=("amdgpu-pro-libgl=${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}-${minor}\~${ubuntu_ver}_i386.deb
extract_deb "${srcdir}"/libgl1-amdgpu-pro-dri_${major_minor}-${minor}\~${ubuntu_ver}_i386.deb
extract_deb "${srcdir}"/libgl1-amdgpu-pro-ext_${major_minor}-${minor}\~${ubuntu_ver}_i386.deb
extract_deb "${srcdir}"/libgl1-amdgpu-pro-glx_${major_minor}-${minor}\~${ubuntu_ver}_i386.deb
extract_deb "${srcdir}"/libglapi1-amdgpu-pro_${major_minor}-${minor}\~${ubuntu_ver}_i386.deb
extract_deb "${srcdir}"/libgles2-amdgpu-pro_${major_minor}-${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 () {
pkgdesc="AMDGPU Pro Vulkan driver"
license=('custom: AMDGPU-PRO EULA')
provides=('vulkan-driver')
depends=("vulkan-icd-loader")
optdepends=("openssl: Warning unspecified optdep description")
extract_deb "${srcdir}"/vulkan-amdgpu-pro_${major_minor}-${minor}\~${ubuntu_ver}_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 () {
pkgdesc="AMDGPU Pro Vulkan driver (32-bit)"
license=('custom: AMDGPU-PRO EULA')
provides=('lib32-vulkan-driver')
depends=("lib32-vulkan-icd-loader")
optdepends=("lib32-openssl: Warning unspecified optdep description")
extract_deb "${srcdir}"/vulkan-amdgpu-pro_${major_minor}-${minor}\~${ubuntu_ver}_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
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment