python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / tools / networking / wget / default.nix
blob99fc6565b1ceb2f319d7f8cba8cf67dccb5cc593
1 { lib, stdenv, fetchurl, gettext, pkg-config, perlPackages
2 , libidn2, zlib, pcre, libuuid, libiconv, libintl
3 , python3, lzip
4 , withLibpsl ? false, libpsl
5 , withOpenssl ? true, openssl
6 }:
8 stdenv.mkDerivation rec {
9   pname = "wget";
10   version = "1.21.3";
12   src = fetchurl {
13     url = "mirror://gnu/wget/${pname}-${version}.tar.lz";
14     sha256 = "sha256-29L7XkcUnUdS0Oqg2saMxJzyDUbfT44yb/yPGLKvTqU=";
15   };
17   patches = [
18     ./remove-runtime-dep-on-openssl-headers.patch
19   ];
21   preConfigure = ''
22     patchShebangs doc
24   '' + lib.optionalString doCheck ''
25     # Work around lack of DNS resolution in chroots.
26     for i in "tests/"*.pm "tests/"*.px
27     do
28       sed -i "$i" -e's/localhost/127.0.0.1/g'
29     done
30   '';
32   nativeBuildInputs = [ gettext pkg-config perlPackages.perl lzip libiconv libintl ];
33   buildInputs = [ libidn2 zlib pcre libuuid ]
34     ++ lib.optionals doCheck [ perlPackages.IOSocketSSL perlPackages.LWP python3 ]
35     ++ lib.optional withOpenssl openssl
36     ++ lib.optional withLibpsl libpsl
37     ++ lib.optional stdenv.isDarwin perlPackages.perl;
39   configureFlags = [
40     (lib.withFeatureAs withOpenssl "ssl" "openssl")
41   ] ++ lib.optionals stdenv.isDarwin [
42     # https://lists.gnu.org/archive/html/bug-wget/2021-01/msg00076.html
43     "--without-included-regex"
44   ];
46   doCheck = false;
48   meta = with lib; {
49     description = "Tool for retrieving files using HTTP, HTTPS, and FTP";
50     longDescription =
51       '' GNU Wget is a free software package for retrieving files using HTTP,
52          HTTPS and FTP, the most widely-used Internet protocols.  It is a
53          non-interactive commandline tool, so it may easily be called from
54          scripts, cron jobs, terminals without X-Windows support, etc.
55       '';
56     license = licenses.gpl3Plus;
57     homepage = "https://www.gnu.org/software/wget/";
58     maintainers = with maintainers; [ fpletz ];
59     platforms = platforms.all;
60   };