1{ lib, buildGoModule, fetchFromGitHub, pkg-config, vips, gobject-introspection
2, stdenv, libunwind }:
3
4buildGoModule rec {
5 pname = "imgproxy";
6 version = "3.18.0";
7
8 src = fetchFromGitHub {
9 owner = pname;
10 repo = pname;
11 sha256 = "sha256-c85G76u0qLyRbiXEWpYKZerrkZmHkq+VmCdHJk6pH9M=";
12 rev = "v${version}";
13 };
14
15 vendorHash = "sha256-5o1i88v+1UGYXP2SzyM6seyidrj1Z3Q64w/gi07xf4w=";
16
17 nativeBuildInputs = [ pkg-config ];
18
19 buildInputs = [ gobject-introspection vips ]
20 ++ lib.optionals stdenv.isDarwin [ libunwind ];
21
22 preBuild = ''
23 export CGO_LDFLAGS_ALLOW='-(s|w)'
24 '';
25
26 meta = with lib; {
27 description = "Fast and secure on-the-fly image processing server written in Go";
28 homepage = "https://imgproxy.net";
29 changelog = "https://github.com/imgproxy/imgproxy/blob/master/CHANGELOG.md";
30 license = licenses.mit;
31 maintainers = with maintainers; [ paluh ];
32 };
33}