From cb45b7ec3e94fc5e19c319e43bf28319714a50f1 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Wed, 18 Mar 2015 14:09:24 +0000 Subject: [PATCH] Revert "nixos: Multiple service instances, apply to nginx. See #6784" This reverts commit 7ef59c4fe2a87682054572a504fc7c6046c282e5. Wrong push! Sorry! --- lib/types.nix | 15 -------------- .../services/web-servers/nginx/default.nix | 20 +++++++++---------- 2 files changed, 10 insertions(+), 25 deletions(-) diff --git a/lib/types.nix b/lib/types.nix index ba0f9a5b890..1e7abf36535 100644 --- a/lib/types.nix +++ b/lib/types.nix @@ -227,19 +227,4 @@ rec { }; - mkMultiInstance = path: args: f: - let - def = f (args // { name = "default"; config = getAttrFromPath path args.config; }); - in { - options = setAttrByPath path (def.options // { - instances = mkOption { - type = types.attrsOf (types.submodule f); - default = {}; - description = "Additional instances of this service"; - }; - }); - - config = def.config; - }; - } diff --git a/nixos/modules/services/web-servers/nginx/default.nix b/nixos/modules/services/web-servers/nginx/default.nix index 94dad49f9fd..0f21ef01263 100644 --- a/nixos/modules/services/web-servers/nginx/default.nix +++ b/nixos/modules/services/web-servers/nginx/default.nix @@ -1,12 +1,9 @@ -{ config, lib, pkgs, ... }@args: +{ config, lib, pkgs, ... }: with lib; -let topconfig = config; -in mkMultiInstance [ "services" "nginx" ] args ({ config, name, ... }: - let - cfg = config; + cfg = config.services.nginx; nginx = cfg.package; configFile = pkgs.writeText "nginx.conf" '' user ${cfg.user} ${cfg.group}; @@ -23,6 +20,7 @@ in { options = { + services.nginx = { enable = mkOption { default = false; type = types.bool; @@ -84,13 +82,15 @@ in description = "Group account under which nginx runs."; }; + }; + }; config = mkIf cfg.enable { # TODO: test user supplied config file pases syntax test - systemd.services."nginx-${name}" = { - description = "Nginx Web Server - ${name}"; + systemd.services.nginx = { + description = "Nginx Web Server"; after = [ "network.target" ]; wantedBy = [ "multi-user.target" ]; path = [ nginx ]; @@ -111,12 +111,12 @@ in users.extraUsers = optionalAttrs (cfg.user == "nginx") (singleton { name = "nginx"; group = cfg.group; - uid = topconfig.ids.uids.nginx; + uid = config.ids.uids.nginx; }); users.extraGroups = optionalAttrs (cfg.group == "nginx") (singleton { name = "nginx"; - gid = topconfig.ids.gids.nginx; + gid = config.ids.gids.nginx; }); }; -}) +}