Merge #12796: nixos docs: show references to packages
(version 2) A better implementation of #10039, after #12357. This time I did more thorough checking. See commit messages for details.
This commit is contained in:
commit
3cf9cd8bc3
|
@ -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.
|
||||
|
@ -168,7 +169,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";
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -17,16 +17,32 @@ let
|
|||
nixpkgs.system = config.nixpkgs.system;
|
||||
};
|
||||
|
||||
eval = evalModules {
|
||||
modules = [ versionModule ] ++ baseModules;
|
||||
args = (config._module.args) // { modules = [ ]; };
|
||||
};
|
||||
|
||||
/* For the purpose of generating docs, evaluate options with each derivation
|
||||
in `pkgs` (recursively) replaced by a fake with path "\${pkgs.attribute.path}".
|
||||
It isn't perfect, but it seems to cover a vast majority of use cases.
|
||||
Caveat: even if the package is reached by a different means,
|
||||
the path above will be shown and not e.g. `${config.services.foo.package}`. */
|
||||
manual = import ../../../doc/manual {
|
||||
inherit pkgs;
|
||||
version = config.system.nixosVersion;
|
||||
revision = config.system.nixosRevision;
|
||||
options = eval.options;
|
||||
options =
|
||||
let
|
||||
scrubbedEval = evalModules {
|
||||
modules = [ versionModule ] ++ baseModules;
|
||||
args = (config._module.args) // { modules = [ ]; };
|
||||
specialArgs = { pkgs = scrubDerivations "pkgs" pkgs; };
|
||||
};
|
||||
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 scrubbedEval.options;
|
||||
};
|
||||
|
||||
entry = "${manual.manual}/share/doc/nixos/index.html";
|
||||
|
@ -81,6 +97,7 @@ in
|
|||
|
||||
services.nixosManual.browser = mkOption {
|
||||
type = types.path;
|
||||
default = "${pkgs.w3m-nox}/bin/w3m";
|
||||
description = ''
|
||||
Browser used to show the manual.
|
||||
'';
|
||||
|
@ -118,8 +135,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
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue