@@ -207,7 +207,7 @@ rec {


/* Like `mapAttrsRecursive', but it takes an additional predicate
function that tells it whether to recursive into an attribute
function that tells it whether to recurse into an attribute
set. If it returns false, `mapAttrsRecursiveCond' does not
recurse, but does apply the map function. It is returns true, it
does recurse, and does not apply the map function.
@@ -36,6 +36,7 @@ in

askPassword = mkOption {
type = types.str;
default = "${pkgs.x11_ssh_askpass}/libexec/x11-ssh-askpass";
description = ''Program used by SSH to ask for passwords.'';
};

@@ -226,7 +227,5 @@ in

environment.variables.SSH_ASKPASS = optionalString config.services.xserver.enable askPassword;

programs.ssh.askPassword = mkDefault "${pkgs.x11_ssh_askpass}/libexec/x11-ssh-askpass";

};
}
@@ -99,6 +99,7 @@ in
};

outputTheme = mkOption {
default = "${pkgs.venus}/themes/classic_fancy";
type = types.path;
description = ''
Directory containing a config.ini file which is merged with this one.
@@ -169,7 +170,5 @@ in
startAt = cfg.dates;
};

services.venus.outputTheme = mkDefault "${pkgs.venus}/themes/classic_fancy";

};
}
@@ -32,6 +32,7 @@ in {
'';
};
configurationDir = mkOption {
default = "${activemq}/conf";
description = ''
The base directory for ActiveMQ's configuration.
By default, this directory is searched for a file named activemq.xml,
@@ -125,8 +126,6 @@ in {
'';
};

services.activemq.configurationDir = mkDefault "${activemq}/conf";

};

}
@@ -80,6 +80,7 @@ in

services.nixosManual.browser = mkOption {
type = types.path;
default = "${pkgs.w3m-nox}/bin/w3m";
description = ''
Browser used to show the manual.
'';
@@ -117,8 +118,6 @@ in
services.mingetty.helpLine = mkIf cfg.showManual
"\nPress <Alt-F${toString cfg.ttyNumber}> for the NixOS manual.";

services.nixosManual.browser = mkDefault "${pkgs.w3m-nox}/bin/w3m";

};

}
@@ -97,6 +97,7 @@ in

transcoders = mkOption {
type = types.listOf types.path;
default = [ "${pkgs.ffmpeg}/bin/ffmpeg" ];
description = ''
List of paths to transcoder executables that should be accessible
from Subsonic. Symlinks will be created to each executable inside
@@ -152,8 +153,5 @@ in
};

users.extraGroups.subsonic.gid = config.ids.gids.subsonic;

services.subsonic.transcoders = mkDefault [ "${pkgs.ffmpeg}/bin/ffmpeg" ];

};
}
@@ -87,6 +87,7 @@ in {

staticRootPath = mkOption {
description = "Root path for static assets.";
default = "${cfg.package.out}/share/grafana/public";
type = types.str;
};

@@ -232,8 +233,5 @@ in {
home = cfg.dataDir;
createHome = true;
};

services.grafana.staticRootPath = mkDefault "${cfg.package}/share/grafana/public";

};
}
@@ -52,7 +52,10 @@ in
default = "opendns";
type = types.nullOr types.string;
description = ''
The name of the upstream DNSCrypt resolver to use.
The name of the upstream DNSCrypt resolver to use. See
<literal>${resolverListFile}</literal> for alternative resolvers
(e.g., if you are concerned about logging and/or server
location).
'';
};
customResolver = mkOption {
@@ -46,7 +46,8 @@ in {

phpIni = mkOption {
type = types.path;
description = "PHP configuration file to use.";
default = "${cfg.phpPackage}/etc/php-recommended.ini";
description = "php.ini file to use.";
};

poolConfigs = mkOption {
@@ -87,7 +88,5 @@ in {
};
};

services.phpfpm.phpIni = mkDefault "${cfg.phpPackage}/etc/php-recommended.ini";

};
}
@@ -87,6 +87,7 @@ in

background = mkOption {
type = types.str;
default = "${pkgs.nixos-artwork}/share/artwork/gnome/Gnome_Dark.png";
description = ''
The background image or color to use.
'';
@@ -152,9 +153,6 @@ in
};

users.extraGroups.lightdm.gid = config.ids.gids.lightdm;

services.xserver.displayManager.lightdm.background = mkDefault "${pkgs.nixos-artwork}/share/artwork/gnome/Gnome_Dark.png";

services.xserver.tty = null; # We might start multiple X servers so let the tty increment themselves..
services.xserver.display = null; # We specify our own display (and logfile) in xserver-wrapper up there
};
@@ -92,15 +92,33 @@ let
}).config));


cleanConfig = import ./lib/eval-config.nix {
system = "x86_64-linux";
modules = [ ];
pkgs = with pkgs.lib;
let
scrubDerivations = namePrefix: pkgSet: mapAttrs
(name: value:
let wholeName = "${namePrefix}.${name}"; in
if isAttrs value then
scrubDerivations wholeName value
// (optionalAttrs (isDerivation value) { outPath = "\${${wholeName}}"; })
else value
)
pkgSet;
in scrubDerivations "pkgs" pkgs;
};
docs = (import ./doc/manual) {
inherit pkgs version;
revision = versionModule.system.nixosRevision;
inherit (cleanConfig) options;
};

in rec {

channel = import lib/make-channel.nix { inherit pkgs nixpkgs version versionSuffix; };

manual = buildFromConfig ({ pkgs, ... }: { }) (config: config.system.build.manual.manual);
manualPDF = (buildFromConfig ({ pkgs, ... }: { }) (config: config.system.build.manual.manualPDF)).x86_64-linux;
manpages = buildFromConfig ({ pkgs, ... }: { }) (config: config.system.build.manual.manpages);
options = (buildFromConfig ({ pkgs, ... }: { }) (config: config.system.build.manual.optionsJSON)).x86_64-linux;

inherit (docs) manual manualPDF manpages optionsJSON;

# Build the initial ramdisk so Hydra can keep track of its size over time.
initialRamdisk = buildFromConfig ({ pkgs, ... }: { }) (config: config.system.build.initialRamdisk);