uftrace icon indicating copy to clipboard operation
uftrace copied to clipboard

Maintenance of Packages of uftrace for users: Linuxbrew and Debian/Ubuntu

Open bernhardkaindl opened this issue 2 years ago • 4 comments

As uftrace now has a brewable formula in LinuxBrew, I guess it would be nice for users to add it as an option to INSTALL.md. Yes/No/Ideas?

PS: A submission as a package for the spack build system and package manager is also ready to be reviewed: https://github.com/spack/spack/pull/25710

PPS: Debian and Ubuntu are still on v0.9.4, which has been superceeded by v0.10, and as it has not been attended for quite some time, it has been removed from debian-testing a year ago. Is anybody willing to step in and update it to v0.10 for Debian (and thereby the entire Debian/Ubuntu ecosystem)?

Discussed in https://github.com/namhyung/uftrace/discussions/1327 :

Originally posted by bernhardkaindl August 31, 2021 To build uftrace using LinuxBrew/Homebrew on Linux, do this:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" and follow the instructions shown there. Then, you run simply:

brew install -s uftrace

This downloads all dependencies of uftrace (already pre-built) and builds uftrace from source with all features (luajit support is coming soon).

If you want the latest uftrace from the git HEAD, you can build it from the master branch using:

brew install -s --HEAD uftrace

The full set of uftrace manual pages are provided as well.

The best thing is: If you don't have to have sudo privileges on the machine, it simply installs into your home directory, if you don't.

In case you have sudo privileges, it will install below /home/linuxbrew/.linuxbrew, so it does not pollute your /usr/local.

In any case, any Linuxbrew-built tools are only in your PATH as long as you source the output of brew shellenv as described into the installation instructions. If you remove the corresponding line from you ~/.profile, or don't even add it, you can call the installed tools like uftrace using the direct path or by a symlink to it.

The "formula" to brew uftrace can be maintained by anyone who has a github account, just create a fork of homebrew-core on github, commit your changes to a new branch and create a pull request. Here is my currently-active pull request which adds support for luajit: https://github.com/Homebrew/homebrew-core/pull/84316

In case you have questions, just write a comment here in the discussion!

bernhardkaindl avatar Aug 31 '21 21:08 bernhardkaindl

Thanks for your effort! But the INSTALL.md file is mainly for how to build (and install) it from source. I think most users are familiar with the packaging system they use to install the binary package.

I agree that it'd be really nice if we can update the package in Debian! Also I'm willing to release it more frequently and actually plan to get v0.11 soon.

namhyung avatar Sep 01 '21 06:09 namhyung

Agreed, getting uftrace updated in debian should be the next priority.

To get the ball rolling, I've taken thepaul's commit history for the debian subdirectory from his repo, rebased it and updated it to the current Debian build environment, and added libunwind and libluajit.

In the sbuild, which is the enviroment used to build the binary packages, the autotest (which thepaul activated to run make test) after the compilation appears to hang sometime after testcase 143 recv_kernel, but otherwise, it looks ok.

At least something which builds is better than no package at all (it has been removed from testing because if fails to build and used python2 which they have prohibited apparently for sid), see:

https://tracker.debian.org/pkg/uftrace and https://qa.debian.org/excuses.php?package=uftrace

bernhardkaindl avatar Sep 02 '21 21:09 bernhardkaindl

debian just got 0.11 into experimental. that release is getting half a year old. is a new release planned?

alexmyczko avatar Mar 15 '22 17:03 alexmyczko

Yep, I plan to have a new release soon, maybe this or next month.

namhyung avatar Mar 16 '22 21:03 namhyung