pptp: Fix shebangs

- Remove `which` as build-time input
- Use substituteInPlace instead of sed (warns if it fails to replace)
- Use perl in buildInputs as it's a run-time dependency
- Patch shebangs manually, not sure why fixupPhase doesn't do it
This commit is contained in:
Daniel Schaefer 2019-08-10 03:07:04 +02:00 committed by Matthieu Coudron
parent 4a3aa14c32
commit e1a5484098

View File

@ -1,26 +1,29 @@
{ stdenv, fetchurl, perl, ppp, iproute, which }:
{ stdenv, fetchurl, perl, ppp, iproute }:
stdenv.mkDerivation rec {
name = "pptp-${version}";
pname = "pptp";
version = "1.10.0";
src = fetchurl {
url = "mirror://sourceforge/pptpclient/${name}.tar.gz";
url = "mirror://sourceforge/pptpclient/${pname}-${version}.tar.gz";
sha256 = "1x2szfp96w7cag2rcvkdqbsl836ja5148zzfhaqp7kl7wjw2sjc2";
};
patchPhase =
''
sed -e 's/install -o root/install/' -i Makefile
'';
preConfigure =
''
makeFlagsArray=( IP=${iproute}/bin/ip PPPD=${ppp}/sbin/pppd \
BINDIR=$out/sbin MANDIR=$out/share/man/man8 \
PPPDIR=$out/etc/ppp )
'';
prePatch = ''
substituteInPlace Makefile --replace 'install -o root' 'install'
'';
nativeBuildInputs = [ perl which ];
preConfigure = ''
makeFlagsArray=( IP=${iproute}/bin/ip PPPD=${ppp}/sbin/pppd \
BINDIR=$out/sbin MANDIR=$out/share/man/man8 \
PPPDIR=$out/etc/ppp )
'';
buildInputs = [ perl ];
postFixup = ''
patchShebangs $out
'';
meta = with stdenv.lib; {
description = "PPTP client for Linux";