From 9fd64b6fb8668f53c3c863831de08c7bede0b806 Mon Sep 17 00:00:00 2001 From: Stefan Frijters Date: Mon, 2 Jun 2025 23:38:29 +0200 Subject: [PATCH 1/6] lttng-ust: 2.13.8 -> 2.13.9 --- pkgs/by-name/lt/lttng-ust/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/lt/lttng-ust/package.nix b/pkgs/by-name/lt/lttng-ust/package.nix index 4b5cb17a9c7f..10f43f3b2b31 100644 --- a/pkgs/by-name/lt/lttng-ust/package.nix +++ b/pkgs/by-name/lt/lttng-ust/package.nix @@ -21,11 +21,11 @@ stdenv.mkDerivation rec { pname = "lttng-ust"; - version = "2.13.8"; + version = "2.13.9"; src = fetchurl { url = "https://lttng.org/files/lttng-ust/${pname}-${version}.tar.bz2"; - sha256 = "sha256-1O+Y2rmjetT1JMyv39UK9PJmA5tSjdWvq8545JAk2Tc="; + sha256 = "sha256-KtbWmlSh2STBikqnojPbEE48wzK83SQOGWv3rb7T9xI="; }; outputs = [ From cb5a21dee40ce77bdc61f1ec69ed5564760696f7 Mon Sep 17 00:00:00 2001 From: Stefan Frijters Date: Mon, 2 Jun 2025 23:38:42 +0200 Subject: [PATCH 2/6] lttng-ust: modernize derivation --- pkgs/by-name/lt/lttng-ust/package.nix | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/pkgs/by-name/lt/lttng-ust/package.nix b/pkgs/by-name/lt/lttng-ust/package.nix index 10f43f3b2b31..6da923e81f63 100644 --- a/pkgs/by-name/lt/lttng-ust/package.nix +++ b/pkgs/by-name/lt/lttng-ust/package.nix @@ -19,13 +19,13 @@ # # Debian builds with std.h (systemtap). -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "lttng-ust"; version = "2.13.9"; src = fetchurl { - url = "https://lttng.org/files/lttng-ust/${pname}-${version}.tar.bz2"; - sha256 = "sha256-KtbWmlSh2STBikqnojPbEE48wzK83SQOGWv3rb7T9xI="; + url = "https://lttng.org/files/lttng-ust/lttng-ust-${finalAttrs.version}.tar.bz2"; + hash = "sha256-KtbWmlSh2STBikqnojPbEE48wzK83SQOGWv3rb7T9xI="; }; outputs = [ @@ -36,6 +36,9 @@ stdenv.mkDerivation rec { ]; nativeBuildInputs = [ pkg-config ]; + + propagatedBuildInputs = [ liburcu ]; + buildInputs = [ numactl python3 @@ -49,21 +52,21 @@ stdenv.mkDerivation rec { configureFlags = [ "--disable-examples" ]; - propagatedBuildInputs = [ liburcu ]; + strictDeps = true; enableParallelBuilding = true; - meta = with lib; { + meta = { description = "LTTng Userspace Tracer libraries"; mainProgram = "lttng-gen-tp"; homepage = "https://lttng.org/"; - license = with licenses; [ + changelog = "https://github.com/lttng/lttng-ust/blob/v${finalAttrs.version}/ChangeLog"; + license = with lib.licenses; [ lgpl21Only gpl2Only mit ]; - platforms = lib.intersectLists platforms.linux liburcu.meta.platforms; - maintainers = [ maintainers.bjornfor ]; + platforms = lib.intersectLists lib.platforms.linux liburcu.meta.platforms; + maintainers = [ lib.maintainers.bjornfor ]; }; - -} +}) From 47ba72e4404e79a95933d83a142bb70489f37cad Mon Sep 17 00:00:00 2001 From: Stefan Frijters Date: Tue, 3 Jun 2025 00:17:45 +0200 Subject: [PATCH 3/6] lttng-ust: remove unnecessary hardeningDisable --- pkgs/by-name/lt/lttng-ust/package.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/by-name/lt/lttng-ust/package.nix b/pkgs/by-name/lt/lttng-ust/package.nix index 6da923e81f63..689c71cbb601 100644 --- a/pkgs/by-name/lt/lttng-ust/package.nix +++ b/pkgs/by-name/lt/lttng-ust/package.nix @@ -48,8 +48,6 @@ stdenv.mkDerivation (finalAttrs: { patchShebangs . ''; - hardeningDisable = [ "trivialautovarinit" ]; - configureFlags = [ "--disable-examples" ]; strictDeps = true; From c9b33290bbe33e0362ae9a88ea9ac4d75779be75 Mon Sep 17 00:00:00 2001 From: Stefan Frijters Date: Tue, 3 Jun 2025 00:19:14 +0200 Subject: [PATCH 4/6] lttng-ust: improve pkg-config support --- pkgs/by-name/lt/lttng-ust/package.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/by-name/lt/lttng-ust/package.nix b/pkgs/by-name/lt/lttng-ust/package.nix index 689c71cbb601..2568630c2d8e 100644 --- a/pkgs/by-name/lt/lttng-ust/package.nix +++ b/pkgs/by-name/lt/lttng-ust/package.nix @@ -6,6 +6,7 @@ liburcu, numactl, python3, + testers, }: # NOTE: @@ -54,6 +55,10 @@ stdenv.mkDerivation (finalAttrs: { enableParallelBuilding = true; + passthru = { + tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + }; + meta = { description = "LTTng Userspace Tracer libraries"; mainProgram = "lttng-gen-tp"; @@ -65,6 +70,10 @@ stdenv.mkDerivation (finalAttrs: { mit ]; platforms = lib.intersectLists lib.platforms.linux liburcu.meta.platforms; + pkgConfigModules = [ + "lttng-ust-ctl" + "lttng-ust" + ]; maintainers = [ lib.maintainers.bjornfor ]; }; }) From 0ad0abebcea7c4096292e80ff86ccbf4cf23559b Mon Sep 17 00:00:00 2001 From: Stefan Frijters Date: Tue, 3 Jun 2025 00:31:45 +0200 Subject: [PATCH 5/6] lttng-ust: enable testing --- pkgs/by-name/lt/lttng-ust/package.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/by-name/lt/lttng-ust/package.nix b/pkgs/by-name/lt/lttng-ust/package.nix index 2568630c2d8e..cf50c17f57c4 100644 --- a/pkgs/by-name/lt/lttng-ust/package.nix +++ b/pkgs/by-name/lt/lttng-ust/package.nix @@ -51,6 +51,8 @@ stdenv.mkDerivation (finalAttrs: { configureFlags = [ "--disable-examples" ]; + doCheck = true; + strictDeps = true; enableParallelBuilding = true; From a24c1126ea5438e4a95b954248999b215c7a2c94 Mon Sep 17 00:00:00 2001 From: Stefan Frijters Date: Tue, 3 Jun 2025 00:18:56 +0200 Subject: [PATCH 6/6] lttng-ust: use GitHub source instead of tarball, add updateScript --- pkgs/by-name/lt/lttng-ust/package.nix | 34 +++++++++++++++++++++++---- 1 file changed, 29 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/lt/lttng-ust/package.nix b/pkgs/by-name/lt/lttng-ust/package.nix index cf50c17f57c4..b2f4b71e4535 100644 --- a/pkgs/by-name/lt/lttng-ust/package.nix +++ b/pkgs/by-name/lt/lttng-ust/package.nix @@ -1,12 +1,16 @@ { lib, stdenv, - fetchurl, + fetchFromGitHub, + autoreconfHook, pkg-config, + asciidoc, + xmlto, liburcu, numactl, python3, testers, + nix-update-script, }: # NOTE: @@ -24,9 +28,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "lttng-ust"; version = "2.13.9"; - src = fetchurl { - url = "https://lttng.org/files/lttng-ust/lttng-ust-${finalAttrs.version}.tar.bz2"; - hash = "sha256-KtbWmlSh2STBikqnojPbEE48wzK83SQOGWv3rb7T9xI="; + src = fetchFromGitHub { + owner = "lttng"; + repo = "lttng-ust"; + tag = "v${finalAttrs.version}"; + hash = "sha256-iwMhXUH569ey16C8F4HzU1ebZbn1oyDWOGpSIIokuGA="; }; outputs = [ @@ -36,7 +42,12 @@ stdenv.mkDerivation (finalAttrs: { "devdoc" ]; - nativeBuildInputs = [ pkg-config ]; + nativeBuildInputs = [ + autoreconfHook + pkg-config + asciidoc + xmlto + ]; propagatedBuildInputs = [ liburcu ]; @@ -45,6 +56,13 @@ stdenv.mkDerivation (finalAttrs: { python3 ]; + postPatch = '' + # to build the manpages, xmlto uses xmllint which tries to fetch a dtd schema + # from the internet - just don't validate to work around this + substituteInPlace doc/man/Makefile.am \ + --replace-fail '$(XMLTO)' '$(XMLTO) --skip-validation' + ''; + preConfigure = '' patchShebangs . ''; @@ -59,6 +77,12 @@ stdenv.mkDerivation (finalAttrs: { passthru = { tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + updateScript = nix-update-script { + extraArgs = [ + "--version-regex" + "v(.+)" + ]; + }; }; meta = {