blob: e05a65d6967e2530edcc25d6dcf6fe3b7b1a1513 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
{ stdenv, fetchurl, openssl, lzo, zlib, gcc, iproute }:
with stdenv.lib;
stdenv.mkDerivation rec {
version = "1.1.4";
name = "zerotierone";
src = fetchurl {
url = "https://github.com/zerotier/ZeroTierOne/archive/${version}.tar.gz";
sha256 = "10aw0dlkmprdvph3aqkqximxqkryf0l4jcnv2bbm7f1qvclqihva";
};
preConfigure = ''
substituteInPlace ./make-linux.mk \
--replace 'CC=$(shell which clang gcc cc 2>/dev/null | head -n 1)' "CC=${gcc}/bin/gcc";
substituteInPlace ./make-linux.mk \
--replace 'CXX=$(shell which clang++ g++ c++ 2>/dev/null | head -n 1)' "CC=${gcc}/bin/g++";
substituteInPlace ./osdep/LinuxEthernetTap.cpp \
--replace 'execlp("ip",' 'execlp("${iproute}/bin/ip",'
'';
buildInputs = [ openssl lzo zlib gcc iproute ];
installPhase = ''
install -Dt "$out/bin/" zerotier-one
ln -s $out/bin/zerotier-one $out/bin/zerotier-idtool
ln -s $out/bin/zerotier-one $out/bin/zerotier-cli
'';
meta = {
description = "Create flat virtual Ethernet networks of almost unlimited size";
homepage = https://www.zerotier.com;
license = stdenv.lib.licenses.gpl3;
maintainers = [ stdenv.lib.maintainers.sjmackenzie ];
platforms = with stdenv.lib; platforms.allBut [ "i686-linux" ];
};
}
|