Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / development / web / minify / default.nix
blobae30de0e6c46f6a18b8514c9182956630725af1b
1 { lib
2 , buildGoModule
3 , fetchFromGitHub
4 , installShellFiles
5 , nix-update-script
6 , testers
7 , minify
8 }:
10 buildGoModule rec {
11   pname = "minify";
12   version = "2.20.5";
14   src = fetchFromGitHub {
15     owner = "tdewolff";
16     repo = pname;
17     rev = "v${version}";
18     hash = "sha256-+oaK6OdBRxtWW+0zp+pbCcGyphuOLzyv/LfjDqDiTGw=";
19   };
21   vendorHash = "sha256-GQqdr0zMQhi6QfLAyFchtWPOGfpo5yODDinKWA/s+qs=";
23   nativeBuildInputs = [ installShellFiles ];
25   ldflags = [ "-s" "-w" "-X main.Version=${version}" ];
27   subPackages = [ "cmd/minify" ];
29   passthru = {
30     updateScript = nix-update-script { };
31     tests.version = testers.testVersion {
32       inherit version;
33       package = minify;
34       command = "minify --version";
35     };
36   };
38   postInstall = ''
39     installShellCompletion --cmd minify --bash cmd/minify/bash_completion
40   '';
42   meta = with lib; {
43     description = "Go minifiers for web formats";
44     homepage = "https://go.tacodewolff.nl/minify";
45     downloadPage = "https://github.com/tdewolff/minify";
46     changelog = "https://github.com/tdewolff/minify/releases/tag/v${version}";
47     license = licenses.mit;
48     maintainers = with maintainers; [ gaelreyrol ];
49     mainProgram = "minify";
50   };