nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildGoModule,
4 fetchFromGitHub,
5 installShellFiles,
6 makeWrapper,
7 python3Packages,
8 ronn,
9 shellcheck,
10}:
11
12buildGoModule rec {
13 pname = "actionlint";
14 version = "1.7.10";
15
16 subPackages = [ "cmd/actionlint" ];
17
18 src = fetchFromGitHub {
19 owner = "rhysd";
20 repo = "actionlint";
21 tag = "v${version}";
22 hash = "sha256-KnvFzV1VDivt7JL1lavM9wgaxdsdnEiLAk/pmzkXi+c=";
23 };
24
25 vendorHash = "sha256-McXlYsJvANyPAXAaXM8/NCFxbDs9IgSgFvt68h8mGek=";
26
27 nativeBuildInputs = [
28 makeWrapper
29 ronn
30 installShellFiles
31 ];
32
33 postInstall = ''
34 ronn --roff man/actionlint.1.ronn
35 installManPage man/actionlint.1
36 wrapProgram "$out/bin/actionlint" \
37 --prefix PATH : ${
38 lib.makeBinPath [
39 python3Packages.pyflakes
40 shellcheck
41 ]
42 }
43 '';
44
45 ldflags = [
46 "-s"
47 "-w"
48 "-X github.com/rhysd/actionlint.version=${version}"
49 ];
50
51 meta = {
52 homepage = "https://rhysd.github.io/actionlint/";
53 description = "Static checker for GitHub Actions workflow files";
54 changelog = "https://github.com/rhysd/actionlint/raw/v${version}/CHANGELOG.md";
55 license = lib.licenses.mit;
56 maintainers = with lib.maintainers; [ momeemt ];
57 mainProgram = "actionlint";
58 };
59}