nixpkgs/pkgs/servers/bird/default.nix

55 lines
1.2 KiB
Nix
Raw Normal View History

2018-02-11 23:28:00 +01:00
{ lib, stdenv, fetchurl, flex, bison, readline }:
2013-08-31 17:05:24 +02:00
2018-02-11 23:28:00 +01:00
with lib;
2013-08-31 17:05:24 +02:00
2018-02-11 23:28:00 +01:00
let
generic = { version, sha256, enableIPv6 ? false }:
stdenv.mkDerivation rec {
name = "bird-${version}";
src = fetchurl {
inherit sha256;
url = "ftp://bird.network.cz/pub/bird/${name}.tar.gz";
};
nativeBuildInputs = [ flex bison ];
buildInputs = [ readline ];
patches = [
(./. + (builtins.toPath "/dont-create-sysconfdir-${builtins.substring 0 1 version}.patch"))
];
2013-08-31 17:05:24 +02:00
2018-02-11 23:28:00 +01:00
configureFlags = [
"--localstatedir=/var"
] ++ optional enableIPv6 "--enable-ipv6";
2013-08-31 17:05:24 +02:00
2018-02-11 23:28:00 +01:00
meta = {
description = "BIRD Internet Routing Daemon";
homepage = http://bird.network.cz;
license = licenses.gpl2Plus;
maintainers = with maintainers; [ fpletz ];
2018-02-11 23:28:00 +01:00
platforms = platforms.linux;
};
};
2018-02-11 23:28:00 +01:00
in
{
bird = generic {
version = "1.6.3";
sha256 = "0z3yrxqb0p7f8b7r2gk4mvrwfzk45zx7yr9aifbvba1vgksiri9r";
};
bird6 = generic {
version = "1.6.3";
sha256 = "0z3yrxqb0p7f8b7r2gk4mvrwfzk45zx7yr9aifbvba1vgksiri9r";
enableIPv6 = true;
};
2018-02-11 23:28:00 +01:00
bird2 = generic {
version = "2.0.2";
sha256 = "03s8hcl761y3489j1krarm3r3iy5qid26508i91yvy38ypb92pq3";
2013-08-31 17:05:24 +02:00
};
}