diff --git a/modules/installer/cd-dvd/installation-cd.nix b/modules/installer/cd-dvd/installation-cd-base.nix similarity index 95% rename from modules/installer/cd-dvd/installation-cd.nix rename to modules/installer/cd-dvd/installation-cd-base.nix index 2d21eaa13009..18300f01ee93 100644 --- a/modules/installer/cd-dvd/installation-cd.nix +++ b/modules/installer/cd-dvd/installation-cd-base.nix @@ -1,4 +1,5 @@ -# This module contains the configuration for the NixOS installation CD. +# This module contains the basic configuration for building a NixOS +# installation CD. {config, pkgs, ...}: @@ -72,11 +73,6 @@ in # Use Linux 2.6.29. boot.kernelPackages = pkgs.kernelPackages_2_6_29; - # Don't include X libraries. - services.sshd.forwardX11 = false; - fonts.enableFontConfig = false; - fonts.enableCoreFonts = false; - # Show the manual. services.showManual.enable = true; @@ -176,7 +172,11 @@ in services.mingetty.helpLine = '' - Log in as "root" with an empty password. + Log in as "root" with an empty password. ${ + if config.services.xserver.enable then + "Type `start xserver' to start\nthe graphical user interface." + else "" + } ''; # To speed up installation a little bit, include the complete stdenv diff --git a/modules/installer/cd-dvd/installation-cd-big.nix b/modules/installer/cd-dvd/installation-cd-big.nix new file mode 100644 index 000000000000..fada3cd1017a --- /dev/null +++ b/modules/installer/cd-dvd/installation-cd-big.nix @@ -0,0 +1,16 @@ +# This module defines a NixOS installation CD that contains X11 and +# KDE 4. + +{config, pkgs, ...}: + +{ + require = [./installation-cd-base.nix]; + + services.xserver = { + enable = true; + autorun = false; + defaultDepth = 16; + desktopManager.default = "kde4"; + desktopManager.kde4.enable = true; + }; +} diff --git a/modules/installer/cd-dvd/installation-cd-small.nix b/modules/installer/cd-dvd/installation-cd-small.nix new file mode 100644 index 000000000000..7b0103f9ada5 --- /dev/null +++ b/modules/installer/cd-dvd/installation-cd-small.nix @@ -0,0 +1,13 @@ +# This module defines a small NixOS installation CD. It does not +# contain any graphical stuff. + +{config, pkgs, ...}: + +{ + require = [./installation-cd-base.nix]; + + # Don't include X libraries. + services.sshd.forwardX11 = false; + fonts.enableFontConfig = false; + fonts.enableCoreFonts = false; +}