diff --git a/lib/maintainers.nix b/lib/maintainers.nix index 4841f1e34fe..046624f10f4 100644 --- a/lib/maintainers.nix +++ b/lib/maintainers.nix @@ -300,6 +300,7 @@ taeer = "Taeer Bar-Yam <taeer@necsi.edu>"; tailhook = "Paul Colomiets <paul@colomiets.name>"; taktoa = "Remy Goldschmidt <taktoa@gmail.com>"; + tavyc = "Octavian Cerna <octavian.cerna@gmail.com>"; telotortium = "Robert Irelan <rirelan@gmail.com>"; thall = "Niclas Thall <niclas.thall@gmail.com>"; thammers = "Tobias Hammerschmidt <jawr@gmx.de>"; diff --git a/pkgs/servers/quagga/default.nix b/pkgs/servers/quagga/default.nix new file mode 100644 index 00000000000..cdc2905d62d --- /dev/null +++ b/pkgs/servers/quagga/default.nix @@ -0,0 +1,72 @@ +{ stdenv, fetchurl, libcap, libnl, readline, net_snmp, less, perl, texinfo }: + +stdenv.mkDerivation rec { + name = "quagga-${version}"; + version = "0.99.24.1"; + + src = fetchurl { + url = "mirror://savannah/quagga/${name}.tar.gz"; + sha256 = "0kvmc810m7ssrvgb3213271rpywyxb646v5bzjl1jl88vx3imbl4"; + }; + + buildInputs = + [ readline net_snmp ] + ++ stdenv.lib.optionals stdenv.isLinux [ libcap libnl ]; + + nativeBuildInputs = [ perl texinfo ]; + + configureFlags = [ + "--sysconfdir=/etc/quagga" + "--localstatedir=/run/quagga" + "--sbindir=$(out)/libexec/quagga" + "--disable-exampledir" + "--enable-user=quagga" + "--enable-group=quagga" + "--enable-configfile-mask=0640" + "--enable-logfile-mask=0640" + "--enable-vtysh" + "--enable-vty-group=quaggavty" + "--enable-snmp" + "--enable-multipath=64" + "--enable-rtadv" + "--enable-irdp" + "--enable-opaque-lsa" + "--enable-ospf-te" + "--enable-pimd" + "--enable-isis-topology" + ]; + + preConfigure = '' + substituteInPlace vtysh/vtysh.c --replace \"more\" \"${less}/bin/less\" + ''; + + postInstall = '' + rm -f $out/bin/test_igmpv3_join + mv -f $out/libexec/quagga/ospfclient $out/bin/ + ''; + + enableParallelBuilding = true; + + meta = with stdenv.lib; { + description = "Quagga BGP/OSPF/ISIS/RIP/RIPNG routing daemon suite"; + longDescription = '' + GNU Quagga is free software which manages TCP/IP based routing protocols. + It supports BGP4, BGP4+, OSPFv2, OSPFv3, IS-IS, RIPv1, RIPv2, and RIPng as + well as the IPv6 versions of these. + + As the predecessor Zebra has been considered orphaned, the Quagga project + has been formed by members of the zebra mailing list and the former + zebra-pj project to continue developing. + + Quagga uses threading if the kernel supports it, but can also run on + kernels that do not support threading. Each protocol has its own daemon. + + It is more than a routed replacement, it can be used as a Route Server and + a Route Reflector. + ''; + homepage = http://www.quagga.net/; + license = licenses.gpl2; + platforms = platforms.unix; + maintainers = with maintainers; [ tavyc ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a2b6add8625..235b8beceba 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9593,6 +9593,8 @@ let boost = boost155; }; + quagga = callPackage ../servers/quagga { }; + rabbitmq_server = callPackage ../servers/amqp/rabbitmq-server { inherit (darwin.apple_sdk.frameworks) AppKit Carbon Cocoa; };