* upstart-jobs/manual.nix:
- Replace "optional" function by one "mkIf". - Pretty-print (indentation, extra lines, no trailing-whitespaces). svn path=/nixos/branches/modular-nixos/; revision=15025
This commit is contained in:
parent
9741be988c
commit
47b61bdd4a
|
@ -1,87 +1,106 @@
|
|||
{pkgs, config, ...}:
|
||||
{pkgs, config, ...}:
|
||||
|
||||
# Show the NixOS manual on tty7
|
||||
# Originally used only by installation CD
|
||||
|
||||
let
|
||||
inherit (pkgs.lib) mkOption;
|
||||
|
||||
options = {
|
||||
services = {
|
||||
|
||||
showManual = {
|
||||
|
||||
enable = mkOption {
|
||||
default = false;
|
||||
description = "
|
||||
Whether to show the NixOS manual on the tty7
|
||||
";
|
||||
};
|
||||
ttyNumber = mkOption {
|
||||
default = "7";
|
||||
description = "
|
||||
TTY number name to show the manual on
|
||||
";
|
||||
};
|
||||
browserPackage = mkOption {
|
||||
default = pkgs.w3m;
|
||||
description = "
|
||||
Package containing the browser to be used
|
||||
";
|
||||
};
|
||||
browserCommand = mkOption {
|
||||
default = "bin/w3m";
|
||||
description = "
|
||||
Command (command path is relative to browserPackage) to run the browser
|
||||
";
|
||||
};
|
||||
manualFile = mkOption {
|
||||
default = null;
|
||||
description = "
|
||||
NixOS manual HTML file
|
||||
";
|
||||
};
|
||||
};
|
||||
};
|
||||
default = false;
|
||||
description = "
|
||||
Whether to show the NixOS manual on the tty7
|
||||
";
|
||||
};
|
||||
|
||||
ttyNumber = mkOption {
|
||||
default = "7";
|
||||
description = "
|
||||
TTY number name to show the manual on
|
||||
";
|
||||
};
|
||||
|
||||
browserPackage = mkOption {
|
||||
default = pkgs.w3m;
|
||||
description = "
|
||||
Package containing the browser to be used
|
||||
";
|
||||
};
|
||||
|
||||
browserCommand = mkOption {
|
||||
default = "bin/w3m";
|
||||
description = "
|
||||
Command (command path is relative to browserPackage) to run the browser
|
||||
";
|
||||
};
|
||||
|
||||
manualFile = mkOption {
|
||||
default = null;
|
||||
description = "
|
||||
NixOS manual HTML file
|
||||
";
|
||||
};
|
||||
|
||||
}; # showManual
|
||||
|
||||
}; # services
|
||||
};
|
||||
|
||||
inherit(pkgs.lib) optional;
|
||||
|
||||
inherit (config.services.showManual) enable ttyNumber browserPackage browserCommand
|
||||
manualFile;
|
||||
|
||||
realManualFile = if manualFile == null then
|
||||
(import ../doc/manual {nixpkgs = pkgs;})+"/manual.html"
|
||||
else manualFile;
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
let
|
||||
cfg = config.services.showManual;
|
||||
inherit (cfg) enable ttyNumber browserPackage browserCommand manualFile;
|
||||
|
||||
realManualFile =
|
||||
if manualFile == null then
|
||||
(import ../doc/manual {nixpkgs = pkgs;})+"/manual.html"
|
||||
else
|
||||
manualFile;
|
||||
|
||||
inherit (pkgs.lib) mkIf mkThenElse;
|
||||
in
|
||||
|
||||
mkIf enable {
|
||||
require = [
|
||||
options
|
||||
];
|
||||
|
||||
boot = {
|
||||
extraTTYs = optional enable ttyNumber;
|
||||
extraTTYs = [ ttyNumber ];
|
||||
};
|
||||
|
||||
|
||||
services = {
|
||||
extraJobs = optional enable {
|
||||
|
||||
extraJobs = [{
|
||||
name = "showManual";
|
||||
|
||||
job = ''
|
||||
description "NixOS manual"
|
||||
|
||||
start on udev
|
||||
stop on shutdown
|
||||
respawn ${browserPackage}/${browserCommand} ${realManualFile} < /dev/tty${toString ttyNumber} > /dev/tty${toString ttyNumber} 2>&1
|
||||
|
||||
start on udev
|
||||
stop on shutdown
|
||||
respawn ${browserPackage}/${browserCommand} ${realManualFile} < /dev/tty${toString ttyNumber} > /dev/tty${toString ttyNumber} 2>&1
|
||||
'';
|
||||
};
|
||||
}];
|
||||
|
||||
ttyBackgrounds = {
|
||||
specificThemes = optional enable {
|
||||
specificThemes = [{
|
||||
tty = ttyNumber;
|
||||
theme = pkgs.themes "green";
|
||||
theme = pkgs.themes "green";
|
||||
}];
|
||||
};
|
||||
|
||||
mingetty = {
|
||||
helpLine = mkThenElse {
|
||||
thenPart = "\nPress <Alt-F${toString ttyNumber}> for NixOS manual.";
|
||||
elsePart = "";
|
||||
};
|
||||
};
|
||||
mingetty = {
|
||||
helpLine = if enable then "\nPress <Alt-F${toString ttyNumber}> for NixOS manual." else "";
|
||||
};
|
||||
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue