nixpkgs/pkgs/os-specific/linux/iproute/default.nix
Alexander Ried 7615d6385a iproute2: 4.5.0 -> 4.7.0 (#18435)
iproute now packages a bash-completion file which it installs to
$BASH_COMPDIR.

* fanpatch: adjust for new version

- The patch did not apply because the code around the additions changed.
- The patch uses functions that got changed [1] & [2], I adjusted the
  patch to use the safe version. Probably not needed but better safe
  than sorry.
[1] format_host: http://git.kernel.org/cgit/linux/kernel/git/shemminger/iproute2.git/commit/?id=a418e451643e77fe36861e53359587ba8aa41873
[2] rt_addr_n2a: http://git.kernel.org/cgit/linux/kernel/git/shemminger/iproute2.git/commit/?id=7faf1588a755edb9c9cabbe1d3211265e9826d28
2016-09-25 15:07:03 +02:00

56 lines
1.5 KiB
Nix

{ fetchurl, stdenv, lib, flex, bison, db, iptables, pkgconfig
, enableFan ? false
}:
stdenv.mkDerivation rec {
name = "iproute2-${version}";
version = "4.7.0";
src = fetchurl {
url = "mirror://kernel/linux/utils/net/iproute2/${name}.tar.xz";
sha256 = "14kvpdlxq8204f5ayfdfb6mc0423mbf3px9q0spdly9sng7xnq4g";
};
patches = lib.optionals enableFan [
# These patches were pulled from:
# https://launchpad.net/ubuntu/xenial/+source/iproute2
./1000-ubuntu-poc-fan-driver.patch
./1001-ubuntu-poc-fan-driver-v3.patch
./1002-ubuntu-poc-fan-driver-vxlan.patch
];
preConfigure = ''
patchShebangs ./configure
sed -e '/ARPDDIR/d' -i Makefile
'';
makeFlags = [
"DESTDIR="
"LIBDIR=$(out)/lib"
"SBINDIR=$(out)/sbin"
"MANDIR=$(out)/share/man"
"BASH_COMPDIR=$(out)/share/bash-completion/completions/iproute2"
"DOCDIR=$(TMPDIR)/share/doc/${name}" # Don't install docs
];
buildFlags = [
"CONFDIR=/etc/iproute2"
];
installFlags = [
"CONFDIR=$(out)/etc/iproute2"
];
buildInputs = [ db iptables ];
nativeBuildInputs = [ bison flex pkgconfig ];
enableParallelBuilding = true;
meta = with stdenv.lib; {
homepage = http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2;
description = "A collection of utilities for controlling TCP/IP networking and traffic control in Linux";
platforms = platforms.linux;
license = licenses.gpl2;
maintainers = with maintainers; [ eelco wkennington ];
};
}