diff options
Diffstat (limited to 'nixpkgs/pkgs/servers/openbgpd/default.nix')
-rw-r--r-- | nixpkgs/pkgs/servers/openbgpd/default.nix | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/openbgpd/default.nix b/nixpkgs/pkgs/servers/openbgpd/default.nix new file mode 100644 index 00000000000..2e0c787d0b2 --- /dev/null +++ b/nixpkgs/pkgs/servers/openbgpd/default.nix @@ -0,0 +1,45 @@ +{ stdenv, fetchFromGitHub, autoconf, automake +, libtool, m4, yacc }: + +let + openbsd_version = "OPENBSD_6_7"; # This has to be equal to ${src}/OPENBSD_BRANCH + openbsd = fetchFromGitHub { + owner = "openbgpd-portable"; + repo = "openbgpd-openbsd"; + rev = openbsd_version; + sha256 = "sha256-YJTHUsn6s4xLcLQuxCLmEkIE8ozxzooj71cJ5Wl+0lI="; + }; +in stdenv.mkDerivation rec { + pname = "opengpd"; + version = "6.7p0"; + + src = fetchFromGitHub { + owner = "openbgpd-portable"; + repo = "openbgpd-portable"; + rev = version; + sha256 = "sha256-10DfK45BsSHeyANB0OJLKog1mEj0mydXSDAT9G6u1gM"; + }; + + nativeBuildInputs = + [ autoconf automake libtool m4 yacc ]; + + preConfigure = '' + mkdir ./openbsd + cp -r ${openbsd}/* ./openbsd/ + chmod -R +w ./openbsd + openbsd_version=$(cat ./OPENBSD_BRANCH) + if [ "$openbsd_version" != "${openbsd_version}" ]; then + echo "OPENBSD VERSION does not match" + exit 1 + fi + ./autogen.sh + ''; + + meta = with stdenv.lib; { + description = "OpenBGPD is a FREE implementation of the Border Gateway Protocol, Version 4. It allows ordinary machines to be used as routers exchanging routes with other systems speaking the BGP protocol."; + license = licenses.isc; + homepage = "http://www.openbgpd.org/"; + maintainers = with maintainers; [ kloenk ]; + platforms = platforms.linux; + }; +} |