{
imports = [
nginx/gitweb.nix
+ nginx/www.nix
];
options = {
services.nginx = {
'';
});
appendConfig = ''
- worker_processes 2;
+ worker_processes 4;
'';
virtualHosts."_" = {
- forceSSL = true;
+ forceSSL = false;
# Convoluted way to load the certificate in the store and using ${networking.domainBase} to find it.
# NOTE: no ssl_stapling while the certificate remains self-signed.
sslCertificate = loadFile (../../../sec + "/openssl/${networking.domainBase}/cert.self-signed.pem");
-{pkgs, lib, config, ...}:
+{ pkgs, lib, config, ... }:
let inherit (config) networking;
inherit (config.services) gitweb gitolite nginx;
package = pkgs.gitweb.override (lib.optionalAttrs gitweb.gitwebTheme {
--- /dev/null
+{ pkgs, lib, config, ... }:
+let inherit (config) networking;
+ inherit (config.services) nginx;
+in
+{
+ services.nginx = {
+ virtualHosts."www" = {
+ serverName = "www.${networking.domain}";
+ serverAliases =
+ [ networking.domain ]
+ ++ config.networking.domainAliases
+ ++ map (domainAlias: "www." + domainAlias)
+ config.networking.domainAliases;
+ forceSSL = false;
+ enableSSL = false;
+ #sslCertificate = nginx.virtualHosts."_".sslCertificate;
+ #sslCertificateKey = nginx.virtualHosts."_".sslCertificateKey;
+ globalRedirect = "git.${networking.domain}";
+ };
+ };
+}