nixpkgs/pkgs/os-specific/linux/iputils/default.nix
Michael Weiss b6e50e4921
iputils: 20180629 -> 20190324
Important changes:
- Two files where removed in [0]:
  - bin/ipg
  - share/man/man8/pg3.8.gz
- The build system changed from Autotools to Meson.
- New: systemd units and Japanese translations
- "It is probable that within in many many changes a regression may have
  slipped in" [1]

[0]: 45a1d39b0c
[1]: https://github.com/iputils/iputils/releases/tag/s20190324

Co-authored-by: Will Dietz <github@wdtz.org>
2019-03-26 11:38:48 +01:00

62 lines
2.2 KiB
Nix

{ stdenv, fetchFromGitHub, fetchpatch
, meson, ninja, pkgconfig, gettext, libxslt, docbook_xsl_ns
, libcap, nettle, libidn2, openssl, systemd
}:
with stdenv.lib;
let
time = "20190324";
# ninfod probably could build on cross, but the Makefile doesn't pass --host
# etc to the sub configure...
withNinfod = stdenv.hostPlatform == stdenv.buildPlatform;
sunAsIsLicense = {
fullName = "AS-IS, SUN MICROSYSTEMS license";
url = "https://github.com/iputils/iputils/blob/s${time}/rdisc.c";
};
in stdenv.mkDerivation {
name = "iputils-${time}";
src = fetchFromGitHub {
owner = "iputils";
repo = "iputils";
rev = "s${time}";
sha256 = "0b755gv3370c0rrphx14mrsqjb396zqnsm9lsws842a4k4zrqmvi";
};
# ninfod cannot be build with nettle yet:
patches =
[ ./build-ninfod-with-openssl.patch
(fetchpatch { # tracepath: fix musl build, again
url = "https://github.com/iputils/iputils/commit/c9aca1b53324bcd1b5a2de5c645813f80eccd016.patch";
sha256 = "0faqgkqbi57cyx1zgzzy6xgd24xr0iawix7mjs47j92ra9gw90cz";
})
(fetchpatch { # doc: Use namespace correctly
url = "https://github.com/iputils/iputils/commit/c503834519d21973323980850431101f90e663ef.patch";
sha256 = "1yp6b6403ddccbhfzsb36cscxd36d4xb8syc1g02a18xkswiwf09";
})
];
mesonFlags =
[ "-DUSE_CRYPTO=nettle"
"-DBUILD_RARPD=true"
"-DBUILD_TRACEROUTE6=true"
"-Dsystemdunitdir=etc/systemd/system"
]
++ optional (!withNinfod) "-DBUILD_NINFOD=false"
# Disable idn usage w/musl (https://github.com/iputils/iputils/pull/111):
++ optional stdenv.hostPlatform.isMusl "-DUSE_IDN=false";
nativeBuildInputs = [ meson ninja pkgconfig gettext libxslt.bin docbook_xsl_ns libcap ];
buildInputs = [ libcap nettle systemd ]
++ optional (!stdenv.hostPlatform.isMusl) libidn2
++ optional withNinfod openssl; # TODO: Build with nettle
meta = {
homepage = https://github.com/iputils/iputils;
description = "A set of small useful utilities for Linux networking";
license = with licenses; [ gpl2Plus bsd3 sunAsIsLicense ];
platforms = platforms.linux;
maintainers = with maintainers; [ primeos lheckemann ];
};
}