1
Repository layout
clem edited this page 2026-08-27 15:12:07 +00:00
Table of contents
Repository layout
| Path | Purpose |
|---|---|
PKGBUILD |
Arch package definition. Holds pkgver, pkgrel, sha256sums, dependencies, and the package() logic. |
patches/keygen.js |
Node script run during package(): generates idapro.hexlic and patches libida*.so. Version-specific. |
ida-pro.desktop |
Desktop entry, installed to /usr/share/applications. |
.forgejo/workflows/build.yml |
On push to main: build + clean-root install test. No publish. |
.forgejo/workflows/release.yml |
On tag push: build, test, changelog, Forgejo release, push to Arch registry. |
cliff.toml |
git-cliff config — conventional commits, grouped changelog. |
README.md |
Short version of this wiki. |
.gitignore |
Ignores *.run, build output (pkg/, src/, *.pkg.tar.*), *.log, .env. |
Not in git
ida-pro_94_x64linux.run— the installer. Lives in the generic registry; CI downloads it per build. A local copy may be present for manual builds.idapro.hexlic— generated at build time bykeygen.js..env— local only, not read by CI.
package() steps (PKGBUILD)
- Copy the
.runinto$pkgdir, run it unattended viafakechroot chrootwith--prefix /opt/ida-pro, then delete it. - Run
patches/keygen.jsfrom inside$pkgdir/opt/ida-pro(it resolves all paths relative to its CWD). - Fail the build if
idapro.hexlicis missing/empty, if the keygen logsPattern not found, or if nolibida*was patched. - Strip execute bits from data files, restore them on the real binaries
(
ida,idat,hv,lc, …), fixdocs/permissions. - Remove the bundled uninstaller.
- Install the
.desktopfile, symlink/usr/bin/ida, the icon, and the license.