This repository has no description
1.4 kB
56 lines
1{
2 lib,
3 rustPlatform,
4 fetchFromGitHub,
5 installShellFiles,
6 pkg-config,
7 openssl,
8}:
9
10rustPlatform.buildRustPackage {
11 pname = "tincr";
12 version = "0-unstable-2026-09-14";
13
14 # Our fork's fix branch until Mic92/tincr#101 lands: NAT-leaf dial
15 # (#100), stale-loop-clock auth timeouts, tunnel-address gate.
16 src = fetchFromGitHub {
17 owner = "Lassulus";
18 repo = "tincr";
19 rev = "44220d98a08c73eaf61f5e75f6743843bfd58746";
20 hash = "sha256-K4iHJX3qHwgVXB6X05of1sjB57qMzY5mGCYuPODiHwY=";
21 };
22
23 cargoHash = "sha256-IaVZzNWxVIpzlLtE4xzt+gIBeIV6xX4/3C/eh1tlE04=";
24
25 # Just the deployable bin crates; --workspace would pull tinc-ffi's cc.
26 cargoBuildFlags = [
27 "-p"
28 "tincd"
29 "-p"
30 "tinc-tools"
31 ];
32
33 # netns tests need bwrap+userns the build sandbox lacks.
34 doCheck = false;
35
36 # tinc-crypto's ChaPoly backend links openssl-sys against system openssl.
37 nativeBuildInputs = [
38 installShellFiles
39 pkg-config
40 ];
41 buildInputs = [ openssl ];
42
43 postInstall = ''
44 installManPage man/*.[0-9]
45 '';
46
47 passthru.updateScript = ./update.sh;
48
49 meta = {
50 description = "Drop-in Rust rewrite of tinc 1.1 VPN (SPTPS-only, Ed25519)";
51 homepage = "https://github.com/Mic92/tincr";
52 license = lib.licenses.gpl2Plus;
53 mainProgram = "tincd";
54 platforms = lib.platforms.linux ++ lib.platforms.darwin;
55 };
56}