Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 pkg-config,
6}:
7
8stdenv.mkDerivation rec {
9 pname = "tinyfecvpn";
10 version = "20230206.0";
11
12 src = fetchFromGitHub {
13 owner = "wangyu-";
14 repo = "tinyfecvpn";
15 tag = version;
16 hash = "sha256-g4dduREH64TDK3Y2PKc5RZiISW4h2ALRh8vQK7jvCZU=";
17 fetchSubmodules = true;
18 };
19
20 enableParallelBuilding = true;
21 nativeBuildInputs = [ pkg-config ];
22
23 patchPhase = ''
24 runHook prePatch
25 find . -type f -name "makefile" -exec sed "s/ -static/ -g/g" -i \{\} \;
26 runHook postPatch
27 '';
28
29 installPhase = ''
30 runHook preInstall
31 install -Dm755 tinyvpn $out/bin/tinyvpn
32 runHook postInstall
33 '';
34
35 meta = with lib; {
36 homepage = "https://github.com/wangyu-/tinyfecVPN";
37 description = "VPN Designed for Lossy Links, with Build-in Forward Error Correction(FEC) Support";
38 license = licenses.mit;
39 platforms = platforms.linux;
40 maintainers = [ ];
41 mainProgram = "tinyvpn";
42 };
43}