Files
whispers fa666582c5 libsoup_3: drop patches incorporated in 3.6.6
This package currently fails to build during the patch application step
as it includes patches that were incorporated into libsoup 3.6.6. These
patches were introduced in #468891 and #489681. Since they are now part
of a regular release, we thus drop these patches.

The List of commits where these changes are present can be seen at
https://gitlab.gnome.org/GNOME/libsoup/-/compare/3.6.5...3.6.6.
2026-02-25 00:23:38 -05:00

119 lines
2.5 KiB
Nix

{
stdenv,
lib,
fetchurl,
glib,
meson,
ninja,
pkg-config,
gnome,
libsysprof-capture,
sqlite,
buildPackages,
gobject-introspection,
withIntrospection ?
lib.meta.availableOn stdenv.hostPlatform gobject-introspection
&& stdenv.hostPlatform.emulatorAvailable buildPackages,
vala,
libpsl,
python3,
gi-docgen,
brotli,
libnghttp2,
}:
stdenv.mkDerivation rec {
pname = "libsoup";
version = "3.6.6";
outputs = [
"out"
"dev"
]
++ lib.optional withIntrospection "devdoc";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
hash = "sha256-Ue0K4G+dWkD0Af9Fni5fZS+aUQt3MOE1nuZtFNSHJ0A=";
};
depsBuildBuild = [
pkg-config
];
nativeBuildInputs = [
meson
ninja
pkg-config
glib
python3
]
++ lib.optionals withIntrospection [
gi-docgen
gobject-introspection
vala
];
buildInputs = [
sqlite
libpsl
glib.out
brotli
libnghttp2
]
++ lib.optionals stdenv.hostPlatform.isLinux [
libsysprof-capture
];
propagatedBuildInputs = [
glib
];
mesonFlags = [
"-Dtls_check=false" # glib-networking is a runtime dependency, not a compile-time dependency
"-Dgssapi=disabled"
"-Dntlm=disabled"
# Requires wstest from autobahn-testsuite.
"-Dautobahn=disabled"
# Requires gnutls, not added for closure size.
"-Dpkcs11_tests=disabled"
(lib.mesonEnable "docs" withIntrospection)
(lib.mesonEnable "introspection" withIntrospection)
(lib.mesonEnable "sysprof" stdenv.hostPlatform.isLinux)
(lib.mesonEnable "vapi" withIntrospection)
];
# TODO: For some reason the pkg-config setup hook does not pick this up.
env.PKG_CONFIG_PATH = "${libnghttp2.dev}/lib/pkgconfig";
# HSTS tests fail.
doCheck = false;
separateDebugInfo = true;
postPatch = ''
patchShebangs libsoup/
'';
postFixup = ''
# Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
moveToOutput "share/doc" "$devdoc"
'';
passthru = {
updateScript = gnome.updateScript {
attrPath = "libsoup_3";
packageName = "libsoup";
versionPolicy = "odd-unstable";
};
};
meta = {
description = "HTTP client/server library for GNOME";
homepage = "https://gitlab.gnome.org/GNOME/libsoup";
license = lib.licenses.lgpl2Plus;
changelog = "https://gitlab.gnome.org/GNOME/libsoup/-/blob/${version}/NEWS";
inherit (glib.meta) maintainers platforms teams;
};
}