biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / applications / virtualization / colima / default.nix
blobe9e769767358ece5dde73e66bcaba2537e188985
1 { lib
2 , stdenv
3 , darwin
4 , buildGoModule
5 , fetchFromGitHub
6 , installShellFiles
7 , lima
8 , lima-bin
9 , makeWrapper
10 , qemu
11 , testers
12 , colima
13   # use lima-bin on darwin to support native macOS virtualization
14   # https://github.com/NixOS/nixpkgs/pull/209171
15 , lima-drv ? if stdenv.isDarwin then lima-bin else lima
18 buildGoModule rec {
19   pname = "colima";
20   version = "0.6.8";
22   src = fetchFromGitHub {
23     owner = "abiosoft";
24     repo = pname;
25     rev = "v${version}";
26     hash = "sha256-9mBjK+VArfsLfwRRIFn8kY2scAtvIjIMWX84Bi7MBvU=";
27     # We need the git revision
28     leaveDotGit = true;
29     postFetch = ''
30       git -C $out rev-parse --short HEAD > $out/.git-revision
31       rm -rf $out/.git
32     '';
33   };
35   nativeBuildInputs = [ installShellFiles makeWrapper ]
36     ++ lib.optionals stdenv.isDarwin [ darwin.DarwinTools ];
38   vendorHash = "sha256-QS0TwXI2Md+PXmT2UrzCMQoHRj+wjTSjWPv9CeVzyFU=";
40   # disable flaky Test_extractZones
41   # https://hydra.nixos.org/build/212378003/log
42   excludedPackages = "gvproxy";
44   CGO_ENABLED = 1;
46   preConfigure = ''
47     ldflags="-s -w -X github.com/abiosoft/colima/config.appVersion=${version} \
48     -X github.com/abiosoft/colima/config.revision=$(cat .git-revision)"
49   '';
51   postInstall = ''
52     wrapProgram $out/bin/colima \
53       --prefix PATH : ${lib.makeBinPath [ lima-drv qemu ]}
55     installShellCompletion --cmd colima \
56       --bash <($out/bin/colima completion bash) \
57       --fish <($out/bin/colima completion fish) \
58       --zsh <($out/bin/colima completion zsh)
59   '';
61   passthru.tests.version = testers.testVersion {
62     package = colima;
63     command = "HOME=$(mktemp -d) colima version";
64   };
66   meta = with lib; {
67     description = "Container runtimes with minimal setup";
68     homepage = "https://github.com/abiosoft/colima";
69     license = licenses.mit;
70     maintainers = with maintainers; [ aaschmid tricktron ];
71     mainProgram = "colima";
72   };