nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 buildGoModule,
3 fetchFromGitHub,
4 lib,
5 wirelesstools,
6 nix-update-script,
7}:
8buildGoModule (finalAttrs: {
9 pname = "ivpn";
10 version = "3.15.0";
11
12 buildInputs = [ wirelesstools ];
13
14 src = fetchFromGitHub {
15 owner = "ivpn";
16 repo = "desktop-app";
17 tag = "v${finalAttrs.version}";
18 hash = "sha256-Y+oW/2WDkH/YydR+xSzEHPdCNKTmmsV4yEsju+OmDYE=";
19 };
20
21 modRoot = "cli";
22 vendorHash = "sha256-xZ1tMiv06fE2wtpDagKjHiVTPYWpj32hM6n/v9ZcgrE=";
23
24 proxyVendor = true; # .c file
25
26 ldflags = [
27 "-s"
28 "-w"
29 "-X github.com/ivpn/desktop-app/daemon/version._version=${finalAttrs.version}"
30 "-X github.com/ivpn/desktop-app/daemon/version._time=1970-01-01"
31 ];
32
33 postInstall = ''
34 mv $out/bin/{cli,ivpn}
35 '';
36
37 passthru.updateScript = nix-update-script { };
38
39 meta = {
40 description = "Official IVPN Desktop app";
41 homepage = "https://www.ivpn.net/apps";
42 changelog = "https://github.com/ivpn/desktop-app/releases/tag/v${finalAttrs.version}";
43 license = lib.licenses.gpl3Only;
44 maintainers = with lib.maintainers; [
45 blenderfreaky
46 ];
47 mainProgram = "ivpn";
48 };
49})