1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
# NOT compatible with AUR helpers!
#
# To install:
# git clone https://aur.archlinux.org/ida-pro.git && cd ida-pro
# Download the `ida-pro_VERSION_x64linux.run` installer from the IDA download center at https://my.hex-rays.com/, and place it in the same directory
# makepkg -sicf
# Maintainer: patchouli
pkgver=9.0.1.sp1
pkgname="ida-pro"
pkgrel=1
pkgdesc="Hex-Rays IDA Pro"
url="https://www.hex-rays.com/products/ida/${pkgver}/index.shtml"
license=('custom')
makedepends=('fakechroot')
depends=('libgl'
'libx11'
'libxext'
'libxrender'
'glib2'
'qt5-base'
'python-rpyc'
)
options=('!strip')
_installer='ida-pro_90sp1_x64linux.run'
source=("file://${_installer}"
"${pkgname}.desktop"
"${pkgname}-teams.desktop")
sha256sums=('c0e2d5f410f8a4a3745bb219d821d690ce1768a5ce0a25e86e0c30c1fe599c71'
'662478dbcb939db8a36f89170246c2187b1086bff840dd96bd4d8f72eac3cad5'
'437fc36a8edd8dd6adadd773dd777966797640d93f499892bdd1217afaf1b636')
arch=('x86_64')
package() {
install -d "${pkgdir}"/opt/${pkgname}
install -d "${pkgdir}"/usr/bin
install -d "${pkgdir}"/usr/share/{icons,applications,licenses/${pkgname}}
install -d "${pkgdir}"/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}"/${_installer} "${pkgdir}"/
chmod +x "${pkgdir}"/${_installer}
# IDA Pro 9.0 SP1 installer now tries to copy the .desktop files to $HOME even if you specify a prefix. Very annoying.
mkdir -p $pkgdir/$HOME/.local/share/applications
fakechroot chroot "${pkgdir}" /${_installer} --mode unattended --prefix "/opt/${pkgname}"
rm "${pkgdir}"/${_installer}
rm -Rf "${pkgdir}"/{tmp,home}
# the installer needlessly makes a lot of files executable
find "${pkgdir}"/opt/${pkgname} -type f -exec chmod -x {} \;
chmod +x "${pkgdir}"/opt/${pkgname}/{assistant,hv,hvui,ida,idapyswitch,idat,picture_decoder,qwingraph,upg32}
rm "${pkgdir}"/opt/${pkgname}/{uninstall*,Uninstall*}
install "${srcdir}"/${pkgname}*.desktop "${pkgdir}"/usr/share/applications
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
ln -s /opt/${pkgname}/ida "${pkgdir}"/usr/bin/ida
}
|