uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
75
pkgs/tools/networking/ppp/default.nix
Normal file
75
pkgs/tools/networking/ppp/default.nix
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, substituteAll
|
||||
, libpcap
|
||||
, openssl
|
||||
, bash
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2.4.9";
|
||||
pname = "ppp";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ppp-project";
|
||||
repo = pname;
|
||||
rev = "${pname}-${version}";
|
||||
sha256 = "sha256-8+nbqRNfKPLDx+wmuKSkv+BSeG72hKJI4dNqypqeEK4=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./nix-purity.patch;
|
||||
glibc = stdenv.cc.libc.dev or stdenv.cc.libc;
|
||||
openssl_dev = openssl.dev;
|
||||
openssl_lib = lib.getLib openssl;
|
||||
})
|
||||
# Without nonpriv.patch, pppd --version doesn't work when not run as root.
|
||||
./nonpriv.patch
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libpcap
|
||||
openssl
|
||||
bash
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
for file in $(find -name Makefile.linux); do
|
||||
substituteInPlace "$file" --replace '-m 4550' '-m 550'
|
||||
done
|
||||
|
||||
patchShebangs --host \
|
||||
scripts/{pon,poff,plog}
|
||||
'';
|
||||
|
||||
makeFlags = [
|
||||
"CC=${stdenv.cc.targetPrefix}cc"
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out/bin
|
||||
make install
|
||||
install -D -m 755 scripts/{pon,poff,plog} $out/bin
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
substituteInPlace "$out/bin/pon" --replace "/usr/sbin" "$out/bin"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://ppp.samba.org";
|
||||
description = "Point-to-point implementation to provide Internet connections over serial lines";
|
||||
license = with licenses; [
|
||||
bsdOriginal
|
||||
publicDomain
|
||||
gpl2
|
||||
lgpl2
|
||||
];
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
33
pkgs/tools/networking/ppp/nix-purity.patch
Normal file
33
pkgs/tools/networking/ppp/nix-purity.patch
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
diff --git a/pppd/Makefile.linux b/pppd/Makefile.linux
|
||||
index 22837c5..6f6fff5 100644
|
||||
--- a/pppd/Makefile.linux
|
||||
+++ b/pppd/Makefile.linux
|
||||
@@ -111,8 +111,8 @@ endif
|
||||
|
||||
# EAP SRP-SHA1
|
||||
ifdef USE_SRP
|
||||
-CFLAGS += -DUSE_SRP -DOPENSSL -I/usr/local/ssl/include
|
||||
-LIBS += -lsrp -L/usr/local/ssl/lib
|
||||
+CFLAGS += -DUSE_SRP -DOPENSSL -I@openssl_dev@/include/openssl
|
||||
+LIBS += -lsrp -L@openssl_lib@/lib
|
||||
NEEDCRYPTOLIB = y
|
||||
TARGETS += srp-entry
|
||||
EXTRAINSTALL = $(INSTALL) -c -m 555 srp-entry $(BINDIR)/srp-entry
|
||||
@@ -143,7 +143,7 @@ CFLAGS += -DHAS_SHADOW
|
||||
#LIBS += -lshadow $(LIBS)
|
||||
endif
|
||||
|
||||
-ifeq ($(shell echo '\#include <crypt.h>' | $(CC) -E - >/dev/null 2>&1 && echo yes),yes)
|
||||
+ifneq ($(wildcard @glibc@/include/crypt.h),)
|
||||
CFLAGS += -DHAVE_CRYPT_H=1
|
||||
LIBS += -lcrypt
|
||||
endif
|
||||
@@ -155,7 +155,7 @@ endif
|
||||
|
||||
ifdef NEEDDES
|
||||
ifndef USE_CRYPT
|
||||
-CFLAGS += -I$(shell $(CC) --print-sysroot)/usr/include/openssl
|
||||
+CFLAGS += -I@openssl_dev@/include/openssl
|
||||
NEEDCRYPTOLIB = y
|
||||
else
|
||||
CFLAGS += -DUSE_CRYPT=1
|
||||
13
pkgs/tools/networking/ppp/nonpriv.patch
Normal file
13
pkgs/tools/networking/ppp/nonpriv.patch
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
diff --git a/pppd/main.c b/pppd/main.c
|
||||
index 014d614..6661d33 100644
|
||||
--- a/pppd/main.c
|
||||
+++ b/pppd/main.c
|
||||
@@ -334,7 +334,7 @@ main(argc, argv)
|
||||
umask(umask(0777) | 022);
|
||||
|
||||
uid = getuid();
|
||||
- privileged = uid == 0;
|
||||
+ privileged = (uid == 0) || (geteuid() != 0);
|
||||
slprintf(numbuf, sizeof(numbuf), "%d", uid);
|
||||
script_setenv("ORIG_UID", numbuf, 0);
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue