# Maintainer: nezu@nezu.cc pkgname=ida-pro-patched _pkgname=ida-pro pkgver=9.1.250226 pkgrel=2 pkgdesc="Hex-Rays IDA Pro" arch=('x86_64') url="https://hex-rays.com/ida-pro/" license=('custom') makedepends=('fakechroot') depends=( 'libgl' 'libx11' 'libxext' 'libxrender' 'glib2' 'qt5-base' 'python-rpyc' ) provides=("$_pkgname") conflicts=("$_pkgname") options=('!strip') _name="$_pkgname-$pkgver" _release_url="https://vaclive.party/software/$_pkgname/releases/download/$pkgver" source=( "$_name.run::$_release_url/ida-pro_91_x64linux.run" "$_name.run.sig::$_release_url/ida-pro_91_x64linux.run.sig" "patch.py::$_release_url/keygen.py" "patch.py.sig::$_release_url/keygen.py.sig" "com.hex-rays.ida.desktop" "com.hex-rays.hvui.desktop" "qwingraph.desktop" "ida-pro.xml" ) sha256sums=('8ff08022be3a0ef693a9e3ea01010d1356b26cfdcbbe7fdd68d01b3c9700f9e2' 'SKIP' 'f1459fd512ac44d589f020ba71e0de20ebf8798df26f167db6fe4c087c7cd0d6' 'SKIP' '9490296e773cda6b03d4bbfbd1e9a398756e074f3574cffdfb31e5d40b2f956d' '3010186d85f0ffc12da572be8688e3cfb5fb9b86ac7c4ec7284c4c9a17c17c14' '1e4b2ec71111b102ecbfa78ec8d7f03506d5726a19d087b59c643572f4e50af6' '58bb9f10b90bc6a7368629a5577852b4f21f8f44e9b2101b24b7f4fc87dff529') validpgpkeys=('09BE40243217978201A0440E101BA3F4C612AA41') # nezu prepare() { mkdir -p "$_name/tmp" # chroot is needed to prevent the installer from creating a single file outside of prefix # have to copy the installer due to chroot cp "$srcdir"/$_name.run "$_name/" chmod +x "$_name/$_name.run" # IDA Pro 9.0 SP1 (and newer) installer now tries to copy the .desktop files to $HOME even if you specify a prefix. Very annoying. mkdir -p "$srcdir"/$_name/"$HOME"/.local/share/applications fakechroot chroot "$srcdir"/$_name "/$_name.run" --mode unattended --prefix "/opt/$_name" rm "$_name/$_name.run" cd "$_name/opt/$_name" python3 "$srcdir"/patch.py mv -v libida32.so.patched libida32.so mv -v libida.so.patched libida.so rm uninstall* Uninstall* } package() { install -dm755 "$pkgdir"/opt/$_pkgname install -dm755 "$pkgdir"/usr/bin install -dm755 "$pkgdir"/usr/share/{icons,applications,licenses/$pkgname} cp --preserve=mode,timestamps -r "$srcdir"/$_name/opt/$_name/* "$pkgdir"/opt/$_pkgname/ ln -s "/opt/$_pkgname/ida" "$pkgdir"/usr/bin/ida ln -s "/opt/$_pkgname/hvui" "$pkgdir"/usr/bin/hvui ln -s "/opt/$_pkgname/qwingraph" "$pkgdir"/usr/bin/qwingraph ln -s "/opt/$_pkgname/idapyswitch" "$pkgdir"/usr/bin/idapyswitch ln -s "/opt/$_pkgname/appico.png" "$pkgdir"/usr/share/icons/$_pkgname.png ln -s "/opt/$_pkgname/hvui.png" "$pkgdir"/usr/share/icons/$_pkgname-teams.png ln -s /opt/$_pkgname/license.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE install -Dm644 "$_pkgname.xml" "$pkgdir"/usr/share/mime/packages/$_pkgname.xml install -Dm644 "$srcdir"/com.hex-rays.ida.desktop "$pkgdir"/usr/share/applications/com.hex-rays.ida.desktop install -Dm644 "$srcdir"/com.hex-rays.hvui.desktop "$pkgdir"/usr/share/applications/com.hex-rays.hvui.desktop install -Dm644 "$srcdir"/qwingraph.desktop "$pkgdir"/usr/share/applications/qwingraph.desktop }