From 99750d89dd962cc7011b02e487ed1a38c7842524 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 28 Jul 2015 10:25:31 +0200 Subject: [PATCH] Don't evaluate haskellPackages when gitit is disabled This cuts evaluation time of my NixOS configuration from 1.76s to 1.36s, and RSS from 443 MiB to 368 MiB. Issue #8152. --- nixos/modules/services/misc/gitit.nix | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/nixos/modules/services/misc/gitit.nix b/nixos/modules/services/misc/gitit.nix index 56e735d7356..72b706ddc5a 100644 --- a/nixos/modules/services/misc/gitit.nix +++ b/nixos/modules/services/misc/gitit.nix @@ -40,7 +40,6 @@ let }; haskellPackages = mkOption { - default = pkgs.haskellPackages; defaultText = "pkgs.haskellPackages"; example = literalExample "pkgs.haskell.packages.ghc784"; description = "haskellPackages used to build gitit and plugins."; @@ -143,7 +142,6 @@ let staticDir = mkOption { type = types.path; - default = gititShared + "/data/static"; description = '' Specifies the path of the static directory (containing javascript, css, and images). If it does not exist, gitit will create it and @@ -214,7 +212,6 @@ let templatesDir = mkOption { type = types.path; - default = gititShared + "/data/templates"; description = '' Specifies the path of the directory containing page templates. If it does not exist, gitit will create it with default templates. Users @@ -296,7 +293,6 @@ let plugins = mkOption { type = types.path; - default = gititShared + "/plugins/Dot.hs"; description = '' Specifies a list of plugins to load. Plugins may be specified either by their path or by their module name. If the plugin name starts @@ -608,6 +604,13 @@ in config = mkIf cfg.enable { + services.gitit = { + haskellPackages = mkDefault pkgs.haskellPackages; + staticDir = gititShared + "/data/static"; + templatesDir = gititShared + "/data/templates"; + plugins = gititShared + "/plugins/Dot.hs"; + }; + users.extraUsers.gitit = { group = config.users.extraGroups.gitit.name; description = "Gitit user";