diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/libpsl')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/libpsl/default.nix | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/libpsl/default.nix b/nixpkgs/pkgs/development/libraries/libpsl/default.nix new file mode 100644 index 000000000000..ac00920d054c --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libpsl/default.nix @@ -0,0 +1,56 @@ +{ stdenv, fetchurl, autoreconfHook, docbook_xsl, docbook_xml_dtd_43, gtk-doc, lzip +, libidn2, libunistring, libxslt, pkgconfig, python3, valgrind +, publicsuffix-list +}: + +stdenv.mkDerivation rec { + pname = "libpsl"; + version = "0.21.0"; + + src = fetchurl { + url = "https://github.com/rockdaboot/${pname}/releases/download/${pname}-${version}/${pname}-${version}.tar.lz"; + sha256 = "183hadbira0d2zvv8272lspy31dgm9x26z35c61s5axcd5wd9g9i"; + }; + + nativeBuildInputs = [ autoreconfHook docbook_xsl docbook_xml_dtd_43 gtk-doc lzip pkgconfig python3 valgrind ]; + buildInputs = [ libidn2 libunistring libxslt ]; + propagatedBuildInputs = [ publicsuffix-list ]; + + postPatch = '' + patchShebangs src/psl-make-dafsa + ''; + + preAutoreconf = '' + gtkdocize + ''; + + configureFlags = [ + "--disable-static" + "--enable-gtk-doc" + "--enable-man" + "--enable-valgrind-tests" + "--with-psl-distfile=${publicsuffix-list}/share/publicsuffix/public_suffix_list.dat" + "--with-psl-file=${publicsuffix-list}/share/publicsuffix/public_suffix_list.dat" + "--with-psl-testfile=${publicsuffix-list}/share/publicsuffix/test_psl.txt" + ]; + + enableParallelBuilding = true; + + doCheck = true; + + meta = with stdenv.lib; { + description = "C library for the Publix Suffix List"; + longDescription = '' + libpsl is a C library for the Publix Suffix List (PSL). A "public suffix" + is a domain name under which Internet users can directly register own + names. Browsers and other web clients can use it to avoid privacy-leaking + "supercookies" and "super domain" certificates, for highlighting parts of + the domain in a user interface or sorting domain lists by site. + ''; + homepage = "https://rockdaboot.github.io/libpsl/"; + changelog = "https://raw.githubusercontent.com/rockdaboot/${pname}/${pname}-${version}/NEWS"; + license = licenses.mit; + platforms = platforms.unix; + maintainers = [ maintainers.c0bw3b ]; + }; +} |