Unverified Commit 25d6d8e5 authored by Jenny's avatar Jenny Committed by GitHub
Browse files

libHX: 3.22 -> 5.2; pam_mount: 2.20 -> 2.22; hxtools: 20250309 -> 20251011 (#470640)

parents 4026dc52 b7b5bb22
Loading
Loading
Loading
Loading
+22 −19
Original line number Diff line number Diff line
{
  lib,
  stdenv,
  fetchFromGitea,
  pkg-config,
  autoreconfHook,
  bash,
  fetchurl,
  libHX,
  makeWrapper,
  perl,
  perlPackages,
  stdenv,
  pkg-config,
  zstd,
  libHX,
  nix-update-script,
}:

stdenv.mkDerivation (finalAttrs: {
  pname = "hxtools";
  version = "20250309";
  version = "20251011";

  src = fetchurl {
    url = "https://inai.de/files/hxtools/hxtools-${finalAttrs.version}.tar.zst";
    hash = "sha256-2ItcEiMe0GzgJ3MxZ28wjmXGSbZtc7BHpkpKIAodAwA=";
  src = fetchFromGitea {
    domain = "codeberg.org";
    tag = "rel-${finalAttrs.version}";
    owner = "jengelh";
    repo = "hxtools";
    hash = "sha256-qwo8QfC1ZEvMTU7g2ZnIX3WQM+xjSPb6Y/inPI20x/g=";
  };

  nativeBuildInputs = [
    makeWrapper
    autoreconfHook
    pkg-config
    zstd
  ];

  buildInputs = [
@@ -31,15 +33,13 @@ stdenv.mkDerivation (finalAttrs: {
    perl
    bash
    libHX
  ];

  postInstall = ''
    wrapProgram $out/bin/man2html \
      --prefix PERL5LIB : "${with perlPackages; makePerlPath [ TextCSV_XS ]}"
  '';
  ]
  ++ (with perlPackages; [ TextCSV_XS ]);

  strictDeps = true;

  passthru.updateScript = nix-update-script { };

  meta = {
    homepage = "https://inai.de/projects/hxtools/";
    description = "Collection of small tools over the years by j.eng";
@@ -50,7 +50,10 @@ stdenv.mkDerivation (finalAttrs: {
      lgpl21Plus
      gpl2Plus
    ];
    maintainers = with lib.maintainers; [ meator ];
    maintainers = with lib.maintainers; [
      meator
      chillcicada
    ];
    platforms = lib.platforms.all;
  };
})
+18 −23
Original line number Diff line number Diff line
{
  lib,
  stdenv,
  fetchurl,
  autoconf,
  automake,
  libtool,
  fetchFromGitea,
  autoreconfHook,
  nix-update-script,
}:

stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
  pname = "libHX";
  version = "3.22";
  version = "5.2";

  src = fetchurl {
    url = "mirror://sourceforge/libhx/libHX/${version}/${pname}-${version}.tar.xz";
    sha256 = "18w39j528lyg2026dr11f2xxxphy91cg870nx182wbd8cjlqf86c";
  src = fetchFromGitea {
    domain = "codeberg.org";
    tag = "v${finalAttrs.version}";
    owner = "jengelh";
    repo = "libhx";
    hash = "sha256-z1/D5dkcDc2VIoGCvunUYsLGq3AV6jZ01Edf1vuUx9o=";
  };

  patches = [ ];
  nativeBuildInputs = [ autoreconfHook ];

  nativeBuildInputs = [
    autoconf
    automake
    libtool
  ];

  preConfigure = ''
    sh autogen.sh
  '';
  passthru.updateScript = nix-update-script { };

  meta = {
    homepage = "https://libhx.sourceforge.net/";
    homepage = "https://inai.de/projects/libhx/";
    longDescription = ''
      libHX is a C library (with some C++ bindings available) that provides data structures
      and functions commonly needed, such as maps, deques, linked lists, string formatting
      and autoresizing, option and config file parsing, type checking casts and more.
    '';
    maintainers = [ ];
    changelog = "https://codeberg.org/jengelh/libhx/src/branch/master/doc/changelog.rst";
    maintainers = with lib.maintainers; [ chillcicada ];
    platforms = lib.platforms.linux;
    license = with lib.licenses; [
      gpl3
      lgpl21Plus
      wtfpl
      mit
    ];
  };
}
})
+19 −15
Original line number Diff line number Diff line
{
  lib,
  stdenv,
  fetchurl,
  fetchFromGitea,
  autoreconfHook,
  perl,
  pkg-config,
  libtool,
  pam,
  libHX,
  libxml2,
  pcre2,
  perl,
  openssl,
  cryptsetup,
  util-linux,
  nix-update-script,
}:

stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
  pname = "pam_mount";
  version = "2.20";
  version = "2.22";

  src = fetchurl {
    url = "https://inai.de/files/pam_mount/${pname}-${version}.tar.xz";
    hash = "sha256-VCYgekhWgPjhdkukBbs4w5pODIMGvIJxkQ8bgZozbO0=";
  src = fetchFromGitea {
    domain = "codeberg.org";
    tag = "v${finalAttrs.version}";
    owner = "jengelh";
    repo = "pam_mount";
    hash = "sha256-13vAYIulkOdq0u6xyYgVFmFo31yLmL5Ip79ZTo3Zhn0=";
  };

  patches = [
    ./insert_utillinux_path_hooks.patch
    ./resolve_build_failure_with_gcc-13.patch
  ];

  postPatch = ''
@@ -35,7 +39,6 @@ stdenv.mkDerivation rec {

  nativeBuildInputs = [
    autoreconfHook
    libtool
    perl
    pkg-config
  ];
@@ -60,20 +63,21 @@ stdenv.mkDerivation rec {
    "--with-slibdir=${placeholder "out"}/lib"
  ];

  postInstall = ''
    rm -r $out/var
  '';
  passthru.updateScript = nix-update-script { };

  meta = {
    description = "PAM module to mount volumes for a user session";
    homepage = "https://pam-mount.sourceforge.net/";
    homepage = "https://inai.de/projects/pam_mount/";
    license = with lib.licenses; [
      gpl2Plus
      gpl3
      lgpl21
      lgpl3
    ];
    maintainers = with lib.maintainers; [ netali ];
    maintainers = with lib.maintainers; [
      netali
      chillcicada
    ];
    platforms = lib.platforms.linux;
  };
}
})
+24 −0
Original line number Diff line number Diff line
From 64dfcc87ccb6f7b0243b206524f7ea9aa9c59bc8 Mon Sep 17 00:00:00 2001
From: Jan Engelhardt <jengelh@inai.de>
Date: Thu, 30 Oct 2025 12:22:01 +0100
Subject: [PATCH] build: resolve build failure with gcc-13

nullptr is a C23-ism.
---
 src/pam_mount.h | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/pam_mount.h b/src/pam_mount.h
index 61395f7..f547d8c 100644
--- a/src/pam_mount.h
+++ b/src/pam_mount.h
@@ -14,6 +14,9 @@
 #else
 #	define EXPORT_SYMBOL
 #endif
+#if defined(__STDC_VERSION__) && __STDC_VERSION__ < 202300L
+#	define nullptr NULL
+#endif
 
 #define sizeof_z(x) (sizeof(x) - 1)