parent
b6a9be6798
commit
9abf72f229
@ -1,66 +1,34 @@ |
||||
{ lib, stdenv, fetchurl, fetchpatch, flex, bison, readline, libssh, nixosTests }: |
||||
|
||||
with lib; |
||||
stdenv.mkDerivation rec { |
||||
pname = "bird"; |
||||
version = "2.0.9"; |
||||
|
||||
let |
||||
|
||||
generic = { version, sha256, enableIPv6 ? false }: |
||||
stdenv.mkDerivation rec { |
||||
pname = "bird"; |
||||
inherit version; |
||||
|
||||
src = fetchurl { |
||||
inherit sha256; |
||||
url = "ftp://bird.network.cz/pub/bird/${pname}-${version}.tar.gz"; |
||||
}; |
||||
|
||||
nativeBuildInputs = [ flex bison ]; |
||||
buildInputs = [ readline libssh ]; |
||||
|
||||
patches = [ |
||||
(./. + "/dont-create-sysconfdir-${builtins.substring 0 1 version}.patch") |
||||
] |
||||
++ optional (lib.versionOlder version "2") |
||||
# https://github.com/BIRD/bird/pull/4 |
||||
(fetchpatch { |
||||
url = "https://github.com/BIRD/bird/commit/fca9ab48e3823c734886f47156a92f6b804c16e9.patch"; |
||||
sha256 = "1pnndc3n56lqqcy74ln0w5kn3i9rbzsm2dqiyp1qw7j33dpkln1b"; |
||||
}) |
||||
; |
||||
|
||||
CPP="${stdenv.cc.targetPrefix}cpp -E"; |
||||
|
||||
configureFlags = [ |
||||
"--localstatedir=/var" |
||||
] ++ optional enableIPv6 "--enable-ipv6"; |
||||
src = fetchurl { |
||||
sha256 = "sha256-dnhrvN7TBh4bsiGwEfLMACIewGPenNoASn2bBhoJbV4="; |
||||
url = "ftp://bird.network.cz/pub/bird/${pname}-${version}.tar.gz"; |
||||
}; |
||||
|
||||
passthru.tests = nixosTests.bird; |
||||
nativeBuildInputs = [ flex bison ]; |
||||
buildInputs = [ readline libssh ]; |
||||
|
||||
meta = { |
||||
description = "BIRD Internet Routing Daemon"; |
||||
homepage = "http://bird.network.cz"; |
||||
license = licenses.gpl2Plus; |
||||
maintainers = with maintainers; [ fpletz globin ]; |
||||
platforms = platforms.linux; |
||||
}; |
||||
}; |
||||
patches = [ |
||||
(./. + "/dont-create-sysconfdir-${builtins.substring 0 1 version}.patch") |
||||
]; |
||||
|
||||
in |
||||
CPP="${stdenv.cc.targetPrefix}cpp -E"; |
||||
|
||||
{ |
||||
bird = generic { |
||||
version = "1.6.8"; |
||||
sha256 = "1ch0pkkhd7axdjlvhprynh9q08x0nm984nvkm1cjb7gm5rfsnqbc"; |
||||
}; |
||||
configureFlags = [ |
||||
"--localstatedir=/var" |
||||
]; |
||||
|
||||
bird6 = generic { |
||||
version = "1.6.8"; |
||||
sha256 = "1ch0pkkhd7axdjlvhprynh9q08x0nm984nvkm1cjb7gm5rfsnqbc"; |
||||
enableIPv6 = true; |
||||
}; |
||||
passthru.tests = nixosTests.bird; |
||||
|
||||
bird2 = generic { |
||||
version = "2.0.9"; |
||||
sha256 = "sha256-dnhrvN7TBh4bsiGwEfLMACIewGPenNoASn2bBhoJbV4="; |
||||
meta = with lib; { |
||||
description = "BIRD Internet Routing Daemon"; |
||||
homepage = "http://bird.network.cz"; |
||||
license = licenses.gpl2Plus; |
||||
maintainers = with maintainers; [ fpletz globin ]; |
||||
platforms = platforms.linux; |
||||
}; |
||||
} |
||||
|
Loading…
Reference in new issue