biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / servers / http / openresty / default.nix
blob87cd8e4c53e3f9c0f9561e61cb2d85ee1c5b0b15
1 { callPackage
2 , runCommand
3 , lib
4 , fetchurl
5 , perl
6 , postgresql
7 , nixosTests
8 , ...
9 }@args:
11 callPackage ../nginx/generic.nix args rec {
12   pname = "openresty";
13   nginxVersion = "1.21.4";
14   version = "${nginxVersion}.3";
16   src = fetchurl {
17     url = "https://openresty.org/download/openresty-${version}.tar.gz";
18     sha256 = "sha256-M6hMY8/Z5GsOXGLrLdx7gGi9ouFoYxQ0O4n8P/0kzdM=";
19   };
21   # generic.nix applies fixPatch on top of every patch defined there.
22   # This allows updating the patch destination, as openresty has
23   # nginx source code in a different folder.
24   fixPatch = patch:
25     let name = patch.name or (builtins.baseNameOf patch); in
26     runCommand "openresty-${name}" { src = patch; } ''
27       substitute $src $out \
28         --replace "a/" "a/bundle/nginx-${nginxVersion}/" \
29         --replace "b/" "b/bundle/nginx-${nginxVersion}/"
30     '';
32   nativeBuildInputs = [ perl ];
34   buildInputs = [ postgresql ];
36   postPatch = ''
37     patchShebangs configure bundle/
38   '';
40   configureFlags = [ "--with-http_postgres_module" ];
42   postInstall = ''
43     ln -s $out/luajit/bin/luajit-2.1.0-beta3 $out/bin/luajit-openresty
44     ln -s $out/nginx/bin/nginx $out/bin/nginx
45     ln -s $out/nginx/conf $out/conf
46     ln -s $out/nginx/html $out/html
47   '';
49   passthru.tests = {
50     inherit (nixosTests) openresty-lua;
51   };
53   meta = {
54     description = "A fast web application server built on Nginx";
55     homepage = "https://openresty.org";
56     license = lib.licenses.bsd2;
57     platforms = lib.platforms.all;
58     maintainers = with lib.maintainers; [ thoughtpolice lblasc emily ];
59   };