2021-01-11 07:54:33 +00:00
|
|
|
{ lib, stdenv, fetchFromGitHub, autoconf, automake, libtool, m4, yacc }:
|
2020-07-30 20:57:41 +01:00
|
|
|
|
|
|
|
let
|
2020-10-29 19:45:58 +00:00
|
|
|
openbsd_version =
|
|
|
|
"OPENBSD_6_8"; # This has to be equal to ${src}/OPENBSD_BRANCH
|
2020-07-30 20:57:41 +01:00
|
|
|
openbsd = fetchFromGitHub {
|
2020-10-29 19:45:58 +00:00
|
|
|
name = "portable";
|
2020-07-30 20:57:41 +01:00
|
|
|
owner = "openbgpd-portable";
|
|
|
|
repo = "openbgpd-openbsd";
|
|
|
|
rev = openbsd_version;
|
2020-10-29 19:45:58 +00:00
|
|
|
sha256 = "sha256-vCVK5k4g6aW2z2fg7Kv0uvkX7f34aRc8K2myb3jjl6w=";
|
2020-07-30 20:57:41 +01:00
|
|
|
};
|
|
|
|
in stdenv.mkDerivation rec {
|
|
|
|
pname = "opengpd";
|
2020-10-29 19:45:58 +00:00
|
|
|
version = "6.8p0";
|
2020-07-30 20:57:41 +01:00
|
|
|
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "openbgpd-portable";
|
|
|
|
repo = "openbgpd-portable";
|
|
|
|
rev = version;
|
2020-10-29 19:45:58 +00:00
|
|
|
sha256 = "sha256-TKs6tt/SCWes6kYAGIrSShZgOLf7xKh26xG3Zk7wCCw=";
|
2020-07-30 20:57:41 +01:00
|
|
|
};
|
|
|
|
|
2020-10-29 19:45:58 +00:00
|
|
|
nativeBuildInputs = [ autoconf automake libtool m4 yacc ];
|
2020-07-30 20:57:41 +01:00
|
|
|
|
|
|
|
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
|
|
|
|
'';
|
|
|
|
|
2021-01-11 07:54:33 +00:00
|
|
|
meta = with lib; {
|
2020-10-29 19:45:58 +00:00
|
|
|
description =
|
|
|
|
"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";
|
2020-07-30 20:57:41 +01:00
|
|
|
license = licenses.isc;
|
|
|
|
homepage = "http://www.openbgpd.org/";
|
|
|
|
maintainers = with maintainers; [ kloenk ];
|
|
|
|
platforms = platforms.linux;
|
|
|
|
};
|
|
|
|
}
|