Package Details: async-profiler 4.3-1

Git Clone URL: https://aur.archlinux.org/async-profiler.git (read-only, click to copy)
Package Base: async-profiler
Description: Sampling CPU and HEAP profiler for Java featuring AsyncGetCallTrace + perf_events
Upstream URL: https://github.com/async-profiler/async-profiler
Keywords: async java jvm profiler sampling
Licenses: Apache
Groups: async-profiler
Provides: async-profiler
Submitter: incubos
Maintainer: incubos
Last Packager: incubos
Votes: 10
Popularity: 0.042543
First Submitted: 2018-07-15 19:15 (UTC)
Last Updated: 2026-03-09 18:25 (UTC)

Dependencies (1)

Required by (0)

Sources (1)

Latest Comments

1 2 Next › Last »

incubos commented on 2026-03-09 18:26 (UTC)

Fixed dead links and released a new version. @mkurz, thanks for the patch!

mkurz commented on 2026-03-06 11:33 (UTC) (edited on 2026-03-06 11:35 (UTC) by mkurz)

This package currently places dead links into /usr/local/bin/

$ ls -la /usr/local/bin/
lrwxrwxrwx  1 root root   31  6. Mär 11:12 async-profiler -> /opt/async-profiler/profiler.sh
lrwxrwxrwx  1 root root   25  6. Mär 11:12 build -> /opt/async-profiler/build

However neither /opt/async-profiler/profiler.sh nor /opt/async-profiler/build exist.

Moreover, none of those links get correctly installed, so pacman does not even know this packages owns them:

$ pacman -Qo /usr/local/bin/*
error: No package owns /usr/local/bin/async-profiler
error: No package owns /usr/local/bin/build

correct would be to link to /opt/async-profiler/bin/asprof and /opt/async-profiler/bin/jfrconv instead - and have them correctly installed into /usr/bin/ - in way that pacman knows which packages owns them. So this must be done not in an *.install file but within the package() function. Actually, this is quite normal how to build a package... Also: The Arch packaging guidelines explicitly state that packages should use /usr/bin. /usr/local/bin is reserved for software installed manually outside of pacman.

To make things easy I already fixed that in my own fork: https://github.com/archlinux/aur/compare/async-profiler...mkurz:aur:async-profiler_fix-links?expand=1

To pull in my fixed you can just do:

git remote add mkurz git@github.com:mkurz/aur.git
git fetch mkurz async-profiler_fix-links
git merge mkurz/async-profiler_fix-links

You can check that the links are correctly owned by pacman now:

pacman -Qo /usr/bin/asprof /usr/bin/jfrconv

incubos commented on 2021-11-16 10:37 (UTC)

Updated. Thanks for the patch!

jcaesar commented on 2021-11-16 07:55 (UTC) (edited on 2021-11-16 07:55 (UTC) by jcaesar)

Flagged out of date. Please make sure to also add fdtransfer to the install binaries when updating.

diff --git a/PKGBUILD b/PKGBUILD
index 27b5e37..5534f4e 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,8 +1,8 @@
 # Maintainer: Vadim Tsesko <incubos at yandex dot com>

 pkgname=async-profiler
-pkgver=2.0
-pkgrel=2
+pkgver=2.5
+pkgrel=1
 pkgdesc='Sampling CPU and HEAP profiler for Java featuring AsyncGetCallTrace + perf_events'
 arch=('x86_64')
 url='https://github.com/jvm-profiling-tools/async-profiler'
@@ -11,7 +11,7 @@ provides=('async-profiler')
 groups=('jvm-profiling-tools' 'odnoklassniki')
 depends=('java-environment')
 source=("$pkgname-$pkgver.tar.gz::https://github.com/jvm-profiling-tools/async-profiler/archive/refs/tags/v$pkgver.tar.gz")
-sha256sums=('b5922c89524235855cd1810ffaacd032376e749dba7b33dafc57b3ea1814a409')
+sha256sums=('4edeadde01368f89efe3a880b24db7dbe9f96aca258de7cf0ddf13a0a83bde64')
 install=async-profiler.install

 build() {
@@ -23,6 +23,6 @@ package() {
   cd "$pkgname-$pkgver"
   install -d "$pkgdir/opt/async-profiler/build"
   install -m 644 build/async-profiler.jar build/converter.jar "$pkgdir/opt/async-profiler/build"
-  install build/libasyncProfiler.so build/jattach "$pkgdir/opt/async-profiler/build"
+  install build/libasyncProfiler.so build/jattach build/fdtransfer "$pkgdir/opt/async-profiler/build"
   install profiler.sh "$pkgdir/opt/async-profiler/profiler.sh"
 }

incubos commented on 2019-01-11 09:32 (UTC)

Sure, IDEA Ultimate does.

asm0dey commented on 2019-01-10 18:23 (UTC)

Did you know that IDEA starting from 2018.3 supports async-profiler OOTB?

incubos commented on 2019-01-10 14:45 (UTC)

@asm0dey it takes half an hour to compile java-openjdk on my laptop.

asm0dey commented on 2019-01-10 14:28 (UTC)

Regrding lagging behind: we both support several packages, so we know that software can lag. But when you subscribe on releases RSS somewhere it becomes easier to minimize gap.

asm0dey commented on 2019-01-10 14:22 (UTC)

@incubos any ideas on how long it takes tom compile?

incubos commented on 2019-01-09 16:42 (UTC)

Thanks, specifying options in PKGBUILD also works! But still I don't think that supporting java-openjdk debug package set in AUR is a good idea, because it always will be lagging behind. Do you want to do it yourself?

P.S. Hm, it doesn't look quite stable yet: https://git.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD?h=packages/java-openjdk