liminix/pkgs/pppoe/default.nix

47 lines
1.1 KiB
Nix

{ lib
, stdenv
, fetchFromGitHub
, ppp } :
let
in
stdenv.mkDerivation rec {
pname = "rp-pppoe";
version = "3.15";
src = fetchFromGitHub {
owner = "dfskoll";
repo = "rp-pppoe";
rev = "7cfd8c0405d14cf1c8d799d41d8207fd707979c1";
hash = "sha256-MFdCwNj8c52blxEuXH5ltT2yYDmKMH5MLUgtddZV25E=";
};
buildInputs = [ ppp ];
preConfigure = ''
cd src
export PPPD=${ppp}/sbin/pppd
'';
configureFlags = lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [ "rpppoe_cv_pack_bitfields=rev" ];
postConfigure = ''
sed -i Makefile -e 's@DESTDIR)/etc/ppp@out)/etc/ppp@'
sed -i Makefile -e 's@PPPOESERVER_PPPD_OPTIONS=@&$(out)@'
'';
installPhase = ''
mkdir -p $out/bin $out/lib
cp pppoe pppoe-server $out/bin # ppoe-relay pppoe-sniff?
test -e rp-pppoe.so && cp rp-pppoe.so $out/lib
true
'';
makeFlags = [ "AR:=$(AR)" ];
meta = with lib; {
description = "Roaring Penguin Point-to-Point over Ethernet tool";
platforms = platforms.linux;
homepage = "https://www.roaringpenguin.com/products/pppoe";
license = licenses.gpl2Plus;
};
}