about summary refs log tree commit diff
path: root/nixpkgs/pkgs/servers/http/apache-modules
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/servers/http/apache-modules')
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_auth_mellon/default.nix36
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_ca/default.nix55
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_crl/default.nix43
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_cspnonce/default.nix34
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_csr/default.nix43
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_dnssd/default.nix44
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_fastcgi/default.nix38
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_itk/default.nix39
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_mbtiles/default.nix33
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_ocsp/default.nix43
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_perl/default.nix58
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_pkcs12/default.nix43
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_python/default.nix49
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_python/install.patch12
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_scep/default.nix43
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_spkac/default.nix43
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_tile/default.nix77
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_timestamp/default.nix48
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/mod_wsgi/default.nix30
-rw-r--r--nixpkgs/pkgs/servers/http/apache-modules/tomcat-connectors/default.nix34
20 files changed, 845 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_auth_mellon/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_auth_mellon/default.nix
new file mode 100644
index 000000000000..5dd2fee040e9
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_auth_mellon/default.nix
@@ -0,0 +1,36 @@
+{ lib, stdenv, apacheHttpd, autoconf, automake, autoreconfHook, curl, fetchFromGitHub, glib, lasso, libtool, libxml2, libxslt, openssl, pkg-config, xmlsec }:
+
+stdenv.mkDerivation rec {
+
+  pname = "mod_auth_mellon";
+  version = "0.19.0";
+
+  src = fetchFromGitHub {
+    owner = "latchset";
+    repo = "mod_auth_mellon";
+    rev = "v${version}";
+    sha256 = "sha256-frSfhddLfEZ2xSI7/HPZkr5AiTJ9nnYmnJZY8aC3zwI=";
+  };
+
+  nativeBuildInputs = [ autoreconfHook pkg-config autoconf automake ];
+  buildInputs = [ apacheHttpd curl glib lasso libtool libxml2 libxslt openssl xmlsec ];
+
+  configureFlags = ["--with-apxs2=${apacheHttpd.dev}/bin/apxs" "--exec-prefix=$out"];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp ./mellon_create_metadata.sh $out/bin
+    mkdir -p $out/modules
+    cp ./.libs/mod_auth_mellon.so $out/modules
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/latchset/mod_auth_mellon";
+    description = "An Apache module with a simple SAML 2.0 service provider";
+    mainProgram = "mellon_create_metadata.sh";
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ womfoo ];
+  };
+
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_ca/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_ca/default.nix
new file mode 100644
index 000000000000..4eb67f02c9a0
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_ca/default.nix
@@ -0,0 +1,55 @@
+{
+  apacheHttpd,
+  apr,
+  aprutil,
+  directoryListingUpdater,
+  fetchurl,
+  lib,
+  openldap,
+  openssl,
+  pkg-config,
+  stdenv,
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mod_ca";
+  version = "0.2.3";
+
+  src = fetchurl {
+    url = "https://redwax.eu/dist/rs/${pname}-${version}.tar.gz";
+    hash = "sha256-HGnhypOO0WOgRw9i9oqO4da131zAwBXOdrc9dypFjyk=";
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [
+    apacheHttpd
+    apr
+    aprutil
+    openldap
+    openssl
+  ];
+
+  # Note that configureFlags and installFlags are inherited by
+  # the various submodules.
+  #
+  configureFlags = [ "--with-apxs=${apacheHttpd.dev}/bin/apxs" ];
+
+  installFlags = [
+    "INCLUDEDIR=${placeholder "out"}/include"
+    "LIBEXECDIR=${placeholder "out"}/modules"
+  ];
+
+  passthru.updateScript = directoryListingUpdater {
+    url = "https://redwax.eu/dist/rs/";
+  };
+
+  meta = with lib; {
+    description = "RedWax CA service module";
+    homepage = "https://redwax.eu";
+    changelog = "https://source.redwax.eu/projects/RS/repos/mod_ca/browse/ChangeLog";
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ dirkx ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_crl/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_crl/default.nix
new file mode 100644
index 000000000000..340bc3a962ed
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_crl/default.nix
@@ -0,0 +1,43 @@
+{
+  apr,
+  aprutil,
+  directoryListingUpdater,
+  fetchurl,
+  lib,
+  mod_ca,
+  pkg-config,
+  stdenv,
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mod_crl";
+  version = "0.2.4";
+
+  src = fetchurl {
+    url = "https://redwax.eu/dist/rs/${pname}-${version}.tar.gz";
+    hash = "sha256-w8YIhed9J1uo5uwhfOVe5LhNLUvFZCgUO4FrHm344Rg=";
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [
+    apr
+    aprutil
+    mod_ca
+  ];
+
+  inherit (mod_ca) configureFlags installFlags;
+
+  passthru.updateScript = directoryListingUpdater {
+    url = "https://redwax.eu/dist/rs/";
+  };
+
+  meta = with lib; {
+    description = "RedWax module for Certificate Revocation Lists";
+    homepage = "https://redwax.eu";
+    changelog = "https://source.redwax.eu/projects/RS/repos/mod_crl/browse/ChangeLog";
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ dirkx ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_cspnonce/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_cspnonce/default.nix
new file mode 100644
index 000000000000..f6de7f017537
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_cspnonce/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, lib, fetchFromGitHub, apacheHttpd }:
+
+stdenv.mkDerivation rec {
+  pname = "mod_cspnonce";
+  version = "1.4";
+
+  src = fetchFromGitHub {
+    owner = "wyattoday";
+    repo = "mod_cspnonce";
+    rev = version;
+    hash = "sha256-uUWRKUjS2LvHgT5xrK+LZLQRHc6wMaxGca2OsVxVlRs=";
+  };
+
+  buildInputs = [ apacheHttpd ];
+
+  buildPhase = ''
+    apxs -ca mod_cspnonce.c
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out/modules
+    cp .libs/mod_cspnonce.so $out/modules
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "An Apache2 module that makes it dead simple to add nonce values to the CSP";
+    homepage = "https://github.com/wyattoday/mod_cspnonce";
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ dasj19 ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_csr/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_csr/default.nix
new file mode 100644
index 000000000000..0fb6d8d0a0ac
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_csr/default.nix
@@ -0,0 +1,43 @@
+{
+  apr,
+  aprutil,
+  directoryListingUpdater,
+  fetchurl,
+  lib,
+  mod_ca,
+  pkg-config,
+  stdenv,
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mod_csr";
+  version = "0.2.4";
+
+  src = fetchurl {
+    url = "https://redwax.eu/dist/rs/${pname}-${version}.tar.gz";
+    hash = "sha256-JVd5N5UnAxDwq6AavEHA0HsY2TRa+9RmLLJeRZbj+4Q=";
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [
+    apr
+    aprutil
+    mod_ca
+  ];
+
+  inherit (mod_ca) configureFlags installFlags;
+
+  passthru.updateScript = directoryListingUpdater {
+    url = "https://redwax.eu/dist/rs/";
+  };
+
+  meta = with lib; {
+    description = "RedWax CA service module to handle Certificate Signing Requests";
+    homepage = "https://redwax.eu";
+    changelog = "https://source.redwax.eu/projects/RS/repos/mod_csr/browse/ChangeLog";
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ dirkx ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_dnssd/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_dnssd/default.nix
new file mode 100644
index 000000000000..7f574f9fd962
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_dnssd/default.nix
@@ -0,0 +1,44 @@
+{ lib, stdenv, fetchurl, fetchpatch, pkg-config, apacheHttpd, apr, avahi }:
+
+stdenv.mkDerivation rec {
+  pname = "mod_dnssd";
+  version = "0.6";
+
+  src = fetchurl {
+    url = "http://0pointer.de/lennart/projects/mod_dnssd/${pname}-${version}.tar.gz";
+    sha256 = "2cd171d76eba398f03c1d5bcc468a1756f4801cd8ed5bd065086e4374997c5aa";
+  };
+
+  configureFlags = [ "--disable-lynx" ];
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ apacheHttpd avahi apr ];
+
+  patches = [ (fetchpatch {
+    url = "http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/vivid/mod-dnssd/vivid/download/package-import%40ubuntu.com-20130530193334-kqebiy78q534or5k/portforapache2.4.pat-20130530222510-7tlw5btqchd04edb-3/port-for-apache2.4.patch";
+    sha256 = "1hgcxwy1q8fsxfqyg95w8m45zbvxzskf1jxd87ljj57l7x1wwp4r";
+  }) ];
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/modules
+    cp src/.libs/mod_dnssd.so $out/modules
+
+    runHook postInstall
+  '';
+
+  preFixup = ''
+    # TODO: Packages in non-standard directories not stripped.
+    # https://github.com/NixOS/nixpkgs/issues/141554
+    stripDebugList=modules
+  '';
+
+  meta = with lib; {
+    homepage = "https://0pointer.de/lennart/projects/mod_dnssd";
+    description = "Provide Zeroconf support via DNS-SD using Avahi";
+    license = licenses.asl20;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_fastcgi/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_fastcgi/default.nix
new file mode 100644
index 000000000000..a67ea3cc03e7
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_fastcgi/default.nix
@@ -0,0 +1,38 @@
+{ lib, stdenv, fetchFromGitHub, fetchurl, apacheHttpd }:
+
+stdenv.mkDerivation rec {
+  pname = "mod_fastcgi";
+  version = "2.4.7.1";
+
+  src = fetchFromGitHub {
+    owner = "FastCGI-Archives";
+    repo = "mod_fastcgi";
+    rev = version;
+    hash = "sha256-ovir59kCjKkgbraX23nsmzlMzGdeNTyj3MQd8cgvLsg=";
+  };
+
+  buildInputs = [ apacheHttpd ];
+
+  preBuild = ''
+    cp Makefile.AP2 Makefile
+    makeFlags="top_dir=${apacheHttpd.dev}/share prefix=$out"
+  '';
+
+  meta = {
+    homepage = "https://github.com/FastCGI-Archives/mod_fastcgi";
+    description = "Provide support for the FastCGI protocol";
+
+    longDescription = ''
+      mod_fastcgi is a module for the Apache web server that enables
+      FastCGI - a standards based protocol for communicating with
+      applications that generate dynamic content for web pages. FastCGI
+      provides a superset of CGI functionality, but a subset of the
+      functionality of programming for a particular web server API.
+      Nonetheless, the feature set is rich enough for programming
+      virtually any type of web application, but the result is generally
+      more scalable.
+    '';
+
+    platforms = lib.platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_itk/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_itk/default.nix
new file mode 100644
index 000000000000..a36a030899a5
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_itk/default.nix
@@ -0,0 +1,39 @@
+{ lib
+, stdenv
+, fetchurl
+, pkg-config
+, mod_ca
+, apr
+, aprutil
+, apacheHttpd
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mod_itk";
+  version = "2.4.7-04";
+
+  src = fetchurl {
+    url = "http://mpm-itk.sesse.net/mpm-itk-${version}.tar.gz";
+    sha256 = "sha256:1kzgd1332pgpxf489kr0vdwsaik0y8wp3q282d4wa5jlk7l877v0";
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ mod_ca apr aprutil apacheHttpd ];
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/modules
+    ${apacheHttpd.dev}/bin/apxs -S LIBEXECDIR=$out/modules -i mpm_itk.la
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "an MPM (Multi-Processing Module) for the Apache web server.";
+    maintainers = [ maintainers.zupo ];
+    homepage = "http://mpm-itk.sesse.net/";
+    license = licenses.asl20;
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_mbtiles/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_mbtiles/default.nix
new file mode 100644
index 000000000000..c2bf88cbac1a
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_mbtiles/default.nix
@@ -0,0 +1,33 @@
+{ lib, stdenv, fetchFromGitHub, apacheHttpd, sqlite }:
+
+stdenv.mkDerivation rec {
+  pname = "mod_mbtiles";
+  version = "unstable-2022-05-25";
+
+  src = fetchFromGitHub {
+    owner = "systemed";
+    repo = pname;
+    rev = "f9d12a9581820630dd923c3c90aa8dcdcf65cb87";
+    sha256 = "sha256-wOoLSNLgh0YXHUFn7WfUkQXpyWsgCrVZlMg55rvi9q4=";
+  };
+
+  buildInputs = [ apacheHttpd sqlite ];
+
+  buildPhase = ''
+    apxs -lsqlite3 -ca mod_mbtiles.c
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    install -D .libs/mod_mbtiles.so -t $out/modules
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/systemed/mod_mbtiles";
+    description = "Serve tiles with Apache directly from an .mbtiles file";
+    license = licenses.free;
+    maintainers = with maintainers; [ sikmir ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_ocsp/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_ocsp/default.nix
new file mode 100644
index 000000000000..2f4b754cfc6b
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_ocsp/default.nix
@@ -0,0 +1,43 @@
+{
+  apr,
+  aprutil,
+  directoryListingUpdater,
+  fetchurl,
+  lib,
+  mod_ca,
+  pkg-config,
+  stdenv,
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mod_ocsp";
+  version = "0.2.3";
+
+  src = fetchurl {
+    url = "https://redwax.eu/dist/rs/${pname}-${version}.tar.gz";
+    hash = "sha256-G+m/KdJCCTlSMeJzUnCRJkBEQ8cOQ+rJhA3NPrwh1Us=";
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [
+    apr
+    aprutil
+    mod_ca
+  ];
+
+  inherit (mod_ca) configureFlags installFlags;
+
+  passthru.updateScript = directoryListingUpdater {
+    url = "https://redwax.eu/dist/rs/";
+  };
+
+  meta = with lib; {
+    description = "RedWax CA service modules of OCSP Online Certificate Validation";
+    homepage = "https://redwax.eu";
+    changelog = "https://source.redwax.eu/projects/RS/repos/mod_csr/browse/ChangeLog";
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ dirkx ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_perl/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_perl/default.nix
new file mode 100644
index 000000000000..c0a9e11a6ce5
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_perl/default.nix
@@ -0,0 +1,58 @@
+{
+  apacheHttpd,
+  directoryListingUpdater,
+  fetchurl,
+  lib,
+  nixosTests,
+  perl,
+  stdenv,
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mod_perl";
+  version = "2.0.13";
+
+  src = fetchurl {
+    url = "mirror://apache/perl/${pname}-${version}.tar.gz";
+    sha256 = "sha256-reO+McRHuESIaf7N/KziWNbVh7jGx3PF8ic19w2C1to=";
+  };
+
+  buildInputs = [
+    apacheHttpd
+    perl
+  ];
+
+  buildPhase = ''
+    perl Makefile.PL \
+      MP_APXS=${apacheHttpd.dev}/bin/apxs
+    make
+  '';
+
+  installPhase = ''
+    mkdir -p $out
+    make install DESTDIR=$out
+    mv $out${apacheHttpd}/* $out
+    mv $out${apacheHttpd.dev}/* $out
+    mv $out${perl}/* $out
+    rm $out/nix -rf
+  '';
+
+  passthru = {
+    updateScript = directoryListingUpdater {
+      url = "https://archive.apache.org/dist/perl/";
+    };
+    tests = nixosTests.mod_perl;
+  };
+
+  __darwinAllowLocalNetworking = true;
+
+  meta = with lib; {
+    description = "Integration of perl with the Apache2 web server";
+    homepage = "https://perl.apache.org/download/index.html";
+    changelog = "https://github.com/apache/mod_perl/blob/trunk/Changes";
+    license = licenses.asl20;
+    mainProgram = "mp2bug";
+    maintainers = with maintainers; [ ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_pkcs12/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_pkcs12/default.nix
new file mode 100644
index 000000000000..0f8962b275c0
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_pkcs12/default.nix
@@ -0,0 +1,43 @@
+{
+  apr,
+  aprutil,
+  directoryListingUpdater,
+  fetchurl,
+  lib,
+  mod_ca,
+  pkg-config,
+  stdenv,
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mod_pkcs12";
+  version = "0.2.3";
+
+  src = fetchurl {
+    url = "https://redwax.eu/dist/rs/${pname}-${version}.tar.gz";
+    hash = "sha256-k7BZ5d0WigyTmoUyFds7UCJ/tFBiUxd5pS4cVxmAI1g=";
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [
+    apr
+    aprutil
+    mod_ca
+  ];
+
+  inherit (mod_ca) configureFlags installFlags;
+
+  passthru.updateScript = directoryListingUpdater {
+    url = "https://redwax.eu/dist/rs/";
+  };
+
+  meta = with lib; {
+    description = "RedWax CA service modules for PKCS#12 format files";
+    homepage = "https://redwax.eu";
+    changelog = "https://source.redwax.eu/projects/RS/repos/mod_pkcs12/browse/ChangeLog";
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ dirkx ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_python/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_python/default.nix
new file mode 100644
index 000000000000..8b4fcd5d94be
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_python/default.nix
@@ -0,0 +1,49 @@
+{
+  apacheHttpd,
+  fetchFromGitHub,
+  lib,
+  libintl,
+  nix-update-script,
+  python3,
+  stdenv,
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mod_python";
+  version = "3.5.0.2";
+
+  src = fetchFromGitHub {
+    owner = "grisha";
+    repo = pname;
+    rev = "refs/tags/${version}";
+    hash = "sha256-EH8wrXqUAOFWyPKfysGeiIezgrVc789RYO4AHeSA6t4=";
+  };
+
+  patches = [ ./install.patch ];
+
+  installFlags = [
+    "LIBEXECDIR=$(out)/modules"
+    "BINDIR=$(out)/bin"
+  ];
+
+  buildInputs = [
+    apacheHttpd
+    python3
+  ] ++ lib.optionals stdenv.isDarwin [
+    libintl
+  ];
+
+  passthru = {
+    inherit apacheHttpd;
+    updateScript = nix-update-script { };
+  };
+
+  meta = with lib; {
+    homepage = "https://modpython.org/";
+    changelog = "https://github.com/grisha/mod_python/blob/${version}/NEWS";
+    description = "An Apache module that embeds the Python interpreter within the server";
+    mainProgram = "mod_python";
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_python/install.patch b/nixpkgs/pkgs/servers/http/apache-modules/mod_python/install.patch
new file mode 100644
index 000000000000..29667e11ed8e
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_python/install.patch
@@ -0,0 +1,12 @@
+diff -ru -x '*~' mod_python-3.5.0-orig/dist/Makefile.in mod_python-3.5.0/dist/Makefile.in
+--- mod_python-3.5.0-orig/dist/Makefile.in	2013-11-12 04:21:34.000000000 +0100
++++ mod_python-3.5.0/dist/Makefile.in	2014-11-07 11:28:24.466377733 +0100
+@@ -34,7 +34,7 @@
+ install_py_lib: mod_python src
+ 	@cd src; $(MAKE) psp_parser.c
+ 	if test -z "$(DESTDIR)" ; then \
+-		$(PYTHON_BIN) setup.py install --optimize 2 --force ; \
++		$(PYTHON_BIN) setup.py install --optimize 2 --force --prefix $(out) ; \
+ 	else \
+ 		$(PYTHON_BIN) setup.py install --optimize 2 --force --root $(DESTDIR) ; \
+ 	fi
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_scep/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_scep/default.nix
new file mode 100644
index 000000000000..40561e41ba88
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_scep/default.nix
@@ -0,0 +1,43 @@
+{
+  apr,
+  aprutil,
+  directoryListingUpdater,
+  fetchurl,
+  lib,
+  mod_ca,
+  pkg-config,
+  stdenv,
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mod_scep";
+  version = "0.2.4";
+
+  src = fetchurl {
+    url = "https://redwax.eu/dist/rs/${pname}-${version}.tar.gz";
+    hash = "sha256-HFPQ1A3ULtT2MduIQZS1drdQvCdZqJqKpOsJLEw67sI=";
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [
+    apr
+    aprutil
+    mod_ca
+  ];
+
+  inherit (mod_ca) configureFlags installFlags;
+
+  passthru.updateScript = directoryListingUpdater {
+    url = "https://redwax.eu/dist/rs/";
+  };
+
+  meta = with lib; {
+    description = "RedWax CA service modules for SCEP (Automatic ceritifcate issue/renewal)";
+    homepage = "https://redwax.eu";
+    changelog = "https://source.redwax.eu/projects/RS/repos/mod_scep/browse/ChangeLog";
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ dirkx ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_spkac/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_spkac/default.nix
new file mode 100644
index 000000000000..639045d18aff
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_spkac/default.nix
@@ -0,0 +1,43 @@
+{
+  apr,
+  aprutil,
+  directoryListingUpdater,
+  fetchurl,
+  lib,
+  mod_ca,
+  pkg-config,
+  stdenv,
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mod_spkac";
+  version = "0.2.3";
+
+  src = fetchurl {
+    url = "https://redwax.eu/dist/rs/${pname}-${version}.tar.gz";
+    hash = "sha256-J1pGz+/AD0IPwRPBA+wt9PgV9qnZEHX66VCBGqhf0b8=";
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [
+    apr
+    aprutil
+    mod_ca
+  ];
+
+  inherit (mod_ca) configureFlags installFlags;
+
+  passthru.updateScript = directoryListingUpdater {
+    url = "https://redwax.eu/dist/rs/";
+  };
+
+  meta = with lib; {
+    description = "RedWax CA service module for handling the Netscape keygen requests. ";
+    homepage = "https://redwax.eu";
+    changelog = "https://source.redwax.eu/projects/RS/repos/mod_spkac/browse/ChangeLog";
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ dirkx ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_tile/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_tile/default.nix
new file mode 100644
index 000000000000..f97ae6269011
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_tile/default.nix
@@ -0,0 +1,77 @@
+{ fetchFromGitHub
+, lib
+, stdenv
+, cmake
+, pkg-config
+, apacheHttpd
+, apr
+, aprutil
+, boost
+, cairo
+, curl
+, glib
+, harfbuzz
+, icu
+, iniparser
+, libmemcached
+, mapnik
+, nix-update-script
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mod_tile";
+  version = "0.7.1";
+
+  src = fetchFromGitHub {
+    owner = "openstreetmap";
+    repo = "mod_tile";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-zXUwTG8cqAkY5MC1jAc2TtMgNMQPLc5nc22okVYP4ME=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+  ];
+
+  buildInputs = [
+    apacheHttpd
+    apr
+    aprutil
+    boost
+    cairo
+    curl
+    glib
+    harfbuzz
+    icu
+    iniparser
+    libmemcached
+    mapnik
+  ];
+
+  enableParallelBuilding = true;
+
+  # Explicitly specify directory paths
+  cmakeFlags = [
+    (lib.cmakeFeature "CMAKE_INSTALL_BINDIR" "bin")
+    (lib.cmakeFeature "CMAKE_INSTALL_MANDIR" "share/man")
+    (lib.cmakeFeature "CMAKE_INSTALL_MODULESDIR" "modules")
+    (lib.cmakeFeature "CMAKE_INSTALL_PREFIX" "")
+    (lib.cmakeBool "ENABLE_TESTS" doCheck)
+  ];
+
+  # And use DESTDIR to define the install destination
+  installFlags = [ "DESTDIR=$(out)" ];
+
+  doCheck = true;
+
+  passthru.updateScript = nix-update-script { };
+
+  meta = with lib; {
+    homepage = "https://github.com/openstreetmap/mod_tile";
+    description = "Efficiently render and serve OpenStreetMap tiles using Apache and Mapnik";
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ jglukasik ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_timestamp/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_timestamp/default.nix
new file mode 100644
index 000000000000..1dbe4101dfe6
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_timestamp/default.nix
@@ -0,0 +1,48 @@
+{
+  apr,
+  aprutil,
+  directoryListingUpdater,
+  fetchurl,
+  lib,
+  mod_ca,
+  pkg-config,
+  stdenv,
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mod_timestamp";
+  version = "0.2.3";
+
+  src = fetchurl {
+    url = "https://redwax.eu/dist/rs/${pname}-${version}.tar.gz";
+    hash = "sha256-X49gJ1wQtwQT3GOZkluxdMIY2ZRpM9Y7DZln6Ag9DvM=";
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [
+    apr
+    aprutil
+    mod_ca
+  ];
+
+  env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.cc.isClang [
+    "-Wno-error=int-conversion"
+    "-Wno-error=implicit-function-declaration"
+  ]);
+
+  inherit (mod_ca) configureFlags installFlags;
+
+  passthru.updateScript = directoryListingUpdater {
+    url = "https://redwax.eu/dist/rs/";
+  };
+
+  meta = with lib; {
+    description = "RedWax CA service module for issuing signed timestamps";
+    homepage = "https://redwax.eu";
+    changelog = "https://source.redwax.eu/projects/RS/repos/mod_timestamp/browse/ChangeLog";
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ dirkx ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/mod_wsgi/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/mod_wsgi/default.nix
new file mode 100644
index 000000000000..01f953f7c80c
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/mod_wsgi/default.nix
@@ -0,0 +1,30 @@
+{ lib, stdenv, fetchFromGitHub, apacheHttpd, python3, ncurses }:
+
+stdenv.mkDerivation rec {
+  pname = "mod_wsgi";
+  version = "5.0.0";
+
+  src = fetchFromGitHub {
+    owner = "GrahamDumpleton";
+    repo = "mod_wsgi";
+    rev = version;
+    hash = "sha256-/4swm4AYCN3xyz2+OH7XqH/dFC53wqGPZgEAdxZQvbs=";
+  };
+
+  buildInputs = [ apacheHttpd python3 ncurses ];
+
+  postPatch = ''
+    substituteInPlace configure --replace '/usr/bin/lipo' 'lipo'
+  '';
+
+  makeFlags = [
+    "LIBEXECDIR=$(out)/modules"
+  ];
+
+  meta = {
+    homepage = "https://github.com/GrahamDumpleton/mod_wsgi";
+    description = "Host Python applications in Apache through the WSGI interface";
+    license = lib.licenses.asl20;
+    platforms = lib.platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/http/apache-modules/tomcat-connectors/default.nix b/nixpkgs/pkgs/servers/http/apache-modules/tomcat-connectors/default.nix
new file mode 100644
index 000000000000..20879d4aaf21
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/apache-modules/tomcat-connectors/default.nix
@@ -0,0 +1,34 @@
+{ lib, stdenv, fetchurl, apacheHttpd, jdk }:
+
+stdenv.mkDerivation rec {
+  pname = "tomcat-connectors";
+  version = "1.2.48";
+
+  src = fetchurl {
+    url = "mirror://apache/tomcat/tomcat-connectors/jk/${pname}-${version}-src.tar.gz";
+    sha256 = "15wfj1mvad15j1fqw67qbpbpwrcz3rb0zdhrq6z2sax1l05kc6yb";
+  };
+
+  configureFlags = [
+    "--with-apxs=${apacheHttpd.dev}/bin/apxs"
+    "--with-java-home=${jdk}"
+  ];
+
+  setSourceRoot = ''
+    sourceRoot=$(echo */native)
+  '';
+
+  installPhase = ''
+    mkdir -p $out/modules
+    cp apache-2.0/mod_jk.so $out/modules
+  '';
+
+  buildInputs = [ apacheHttpd jdk ];
+
+  meta = with lib; {
+    description = "Provides web server plugins to connect web servers with Tomcat";
+    homepage = "https://tomcat.apache.org/download-connectors.cgi";
+    license = licenses.asl20;
+    platforms = platforms.unix;
+  };
+}