2009-01-02 17:06:46 +01:00
|
|
|
# this file contains all extendable options originally defined in system.nix
|
2009-01-02 17:07:24 +01:00
|
|
|
# TODO: split it to make it readable.
|
2009-01-02 17:06:46 +01:00
|
|
|
{pkgs, config, ...}:
|
|
|
|
|
2009-05-25 20:42:44 +02:00
|
|
|
with pkgs.lib;
|
|
|
|
|
2009-01-02 17:06:52 +01:00
|
|
|
###### interface
|
|
|
|
let
|
|
|
|
|
|
|
|
option = {
|
|
|
|
system = {
|
|
|
|
build = mkOption {
|
|
|
|
default = {};
|
|
|
|
description = ''
|
2009-05-25 20:42:44 +02:00
|
|
|
Attribute set of derivations used to setup the system.
|
2009-01-02 17:06:52 +01:00
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
|
|
|
shell = mkOption {
|
|
|
|
default = "/var/run/current-system/sw/bin/bash";
|
|
|
|
description = ''
|
2009-05-25 17:36:57 +02:00
|
|
|
This option defines the path to the Bash shell. It should
|
|
|
|
generally not be overriden.
|
2009-01-02 17:06:52 +01:00
|
|
|
'';
|
|
|
|
merge = list:
|
|
|
|
assert list != [] && builtins.tail list == [];
|
|
|
|
builtins.head list;
|
|
|
|
};
|
|
|
|
|
|
|
|
};
|
|
|
|
};
|
|
|
|
in
|
|
|
|
|
|
|
|
###### implementation
|
2009-01-02 17:06:46 +01:00
|
|
|
{
|
|
|
|
require = [
|
2009-01-02 17:06:52 +01:00
|
|
|
option
|
|
|
|
|
2009-01-02 17:06:46 +01:00
|
|
|
# config.system.activationScripts
|
2009-05-25 16:19:33 +02:00
|
|
|
# ../system/activate-configuration.nix
|
2009-01-02 17:06:46 +01:00
|
|
|
];
|
|
|
|
|
|
|
|
system = {
|
2009-01-02 20:41:39 +01:00
|
|
|
build = {
|
|
|
|
binsh = pkgs.bashInteractive;
|
|
|
|
};
|
2009-01-02 17:06:46 +01:00
|
|
|
};
|
|
|
|
}
|