From 96349f4b00899c20e3e796e515da19bfd23d769d Mon Sep 17 00:00:00 2001 From: quantenzitrone Date: Mon, 18 Aug 2025 15:54:50 +0200 Subject: [PATCH] libxt: refactor, move to pkgs/by-name and rename from xorg.libXt relevant changes: - removes the `sed 's,^as_dummy.*,as_dummy="\$PATH",' -i configure` because as in libx11 it probably doesn't do anything --- pkgs/by-name/li/libxt/package.nix | 82 +++++++++++++++++++ pkgs/servers/x11/xorg/default.nix | 42 +--------- .../x11/xorg/generate-expr-from-tarballs.pl | 3 + pkgs/servers/x11/xorg/overrides.nix | 22 ----- pkgs/servers/x11/xorg/tarballs.list | 1 - 5 files changed, 87 insertions(+), 63 deletions(-) create mode 100644 pkgs/by-name/li/libxt/package.nix diff --git a/pkgs/by-name/li/libxt/package.nix b/pkgs/by-name/li/libxt/package.nix new file mode 100644 index 000000000000..67cce20e315f --- /dev/null +++ b/pkgs/by-name/li/libxt/package.nix @@ -0,0 +1,82 @@ +{ + lib, + stdenv, + fetchurl, + buildPackages, + pkg-config, + xorgproto, + libx11, + libsm, + writeScript, + testers, +}: +stdenv.mkDerivation (finalAttrs: { + pname = "libxt"; + version = "1.3.1"; + + outputDoc = "devdoc"; + outputs = [ + "out" + "dev" + "devdoc" + ]; + + src = fetchurl { + url = "mirror://xorg/individual/lib/libXt-${finalAttrs.version}.tar.xz"; + hash = "sha256-4Kd0szMk9NTAWxmepFBQ+HIGWG2BZV+L7026Q02TEog="; + }; + + strictDeps = true; + + depsBuildBuild = [ buildPackages.stdenv.cc ]; + + nativeBuildInputs = [ pkg-config ]; + + buildInputs = [ + xorgproto + libx11 + libsm + ]; + + propagatedBuildInputs = [ + xorgproto + libx11 + # needs to be propagated because of header file dependencies + libsm + ]; + + configureFlags = + lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) "--enable-malloc0returnsnull" + ++ lib.optional (stdenv.targetPlatform.useLLVM or false) "ac_cv_path_RAWCPP=cpp"; + + env = { + CPP = if stdenv.hostPlatform.isDarwin then "clang -E -" else "${stdenv.cc.targetPrefix}cc -E -"; + }; + + passthru = { + updateScript = writeScript "update-${finalAttrs.pname}" '' + #!/usr/bin/env nix-shell + #!nix-shell -i bash -p common-updater-scripts + version="$(list-directory-versions --pname libXt \ + --url https://xorg.freedesktop.org/releases/individual/lib/ \ + | sort -V | tail -n1)" + update-source-version ${finalAttrs.pname} "$version" + ''; + tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + }; + + meta = { + description = "X Toolkit Intrinsics library"; + homepage = "https://gitlab.freedesktop.org/xorg/lib/libxt"; + license = with lib.licenses; [ + mit + hpndSellVariant + hpnd + mitOpenGroup + x11 + ]; + maintainers = [ ]; + pkgConfigModules = [ "xt" ]; + platforms = lib.platforms.unix; + }; +}) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index 01f005f90afb..bfa495696b4f 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -25,6 +25,7 @@ libxfixes, libxrandr, libxrender, + libxt, libxv, lndir, luit, @@ -102,6 +103,7 @@ self: with self; { libXfixes = libxfixes; libXrandr = libxrandr; libXrender = libxrender; + libXt = libxt; libXv = libxv; utilmacros = util-macros; xcbproto = xcb-proto; @@ -2395,46 +2397,6 @@ self: with self; { }) ) { }; - # THIS IS A GENERATED FILE. DO NOT EDIT! - libXt = callPackage ( - { - stdenv, - pkg-config, - fetchurl, - libICE, - xorgproto, - libSM, - libX11, - testers, - }: - stdenv.mkDerivation (finalAttrs: { - pname = "libXt"; - version = "1.3.1"; - builder = ./builder.sh; - src = fetchurl { - url = "mirror://xorg/individual/lib/libXt-1.3.1.tar.xz"; - sha256 = "120jjd6l7fjdxy5myrc1dmc0cwpqa18a97hrbg0d9x146frp99z0"; - }; - hardeningDisable = [ - "bindnow" - "relro" - ]; - strictDeps = true; - nativeBuildInputs = [ pkg-config ]; - buildInputs = [ - libICE - xorgproto - libSM - libX11 - ]; - passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; - meta = { - pkgConfigModules = [ "xt" ]; - platforms = lib.platforms.unix; - }; - }) - ) { }; - # THIS IS A GENERATED FILE. DO NOT EDIT! libXtst = callPackage ( { diff --git a/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl b/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl index 3a01c1b4c213..7720fd27b547 100755 --- a/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl +++ b/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl @@ -55,6 +55,7 @@ $pcMap{"xext"} = "libXext"; $pcMap{"xfixes"} = "libXfixes"; $pcMap{"xrandr"} = "libXrandr"; $pcMap{"xrender"} = "libXrender"; +$pcMap{"xt"} = "libXt"; $pcMap{"xtrans"} = "xtrans"; $pcMap{"xv"} = "libXv"; $pcMap{"\$PIXMAN"} = "pixman"; @@ -320,6 +321,7 @@ print OUT <