1{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
2
3buildGoModule rec {
4 pname = "go-task";
5 version = "3.18.0";
6
7 src = fetchFromGitHub {
8 owner = pname;
9 repo = "task";
10 rev = "v${version}";
11 sha256 = "sha256-b5YNiMnk1tBk7kO4YWAU8cyg5oHhKu95ogTtZ3N/6IY=";
12 };
13
14 vendorSha256 = "sha256-+DmnYd415FWgbY+gkDVWjnvbjTppfFV5NMpIE3Mm124=";
15
16 doCheck = false;
17
18 nativeBuildInputs = [ installShellFiles ];
19
20 subPackages = [ "cmd/task" ];
21
22 ldflags = [
23 "-s" "-w" "-X main.version=${version}"
24 ];
25
26 postInstall = ''
27 ln -s $out/bin/task $out/bin/go-task
28
29 installShellCompletion completion/{bash,fish,zsh}/*
30 '';
31
32 meta = with lib; {
33 homepage = "https://taskfile.dev/";
34 description = "A task runner / simpler Make alternative written in Go";
35 license = licenses.mit;
36 maintainers = with maintainers; [ parasrah ];
37 };
38}