nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 apple-sdk_15,
4 buildGoModule,
5 darwin,
6 fetchFromGitHub,
7 fetchpatch2,
8 nix-update-script,
9 testers,
10 vfkit,
11}:
12
13buildGoModule rec {
14 pname = "vfkit";
15 version = "0.6.3";
16
17 src = fetchFromGitHub {
18 owner = "crc-org";
19 repo = "vfkit";
20 rev = "v${version}";
21 hash = "sha256-AHmCmDrddbPM8agM4jyKGKJ5aJSZ0hijM2suHJmRS3A=";
22 };
23
24 vendorHash = "sha256-tXpjEMF4wwuP4w8asZPpeA8C5g+k4MjNRtbCBFFql2A=";
25
26 subPackages = [ "cmd/vfkit" ];
27
28 ldflags = [
29 "-s"
30 "-w"
31 "-X github.com/crc-org/vfkit/pkg/cmdline.gitVersion=${src.rev}"
32 ];
33
34 nativeBuildInputs = [
35 darwin.sigtool
36 ];
37
38 buildInputs = [
39 apple-sdk_15
40 ];
41
42 postFixup = ''
43 codesign --entitlements vf.entitlements -f -s - $out/bin/vfkit
44 '';
45
46 passthru.tests = {
47 version = testers.testVersion { package = vfkit; };
48 };
49
50 passthru.updateScript = nix-update-script { };
51
52 meta = {
53 description = "Simple command line tool to start VMs through the macOS Virtualization framework";
54 homepage = "https://github.com/crc-org/vfkit";
55 changelog = "https://github.com/crc-org/vfkit/releases/tag/v${version}";
56 license = lib.licenses.asl20;
57 maintainers = with lib.maintainers; [
58 sarcasticadmin
59 phaer
60 ];
61 platforms = lib.platforms.darwin;
62 sourceProvenance = [ lib.sourceTypes.fromSource ];
63 mainProgram = "vfkit";
64 };
65}