mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-27 08:01:14 +00:00
79 lines
2 KiB
Nix
79 lines
2 KiB
Nix
# This module defines a NixOS installation CD that contains X11 and
|
|
# GNOME 3.
|
|
|
|
{ config, lib, pkgs, ... }:
|
|
|
|
with lib;
|
|
|
|
{
|
|
imports = [ ./installation-cd-base.nix ];
|
|
|
|
services.xserver = {
|
|
enable = true;
|
|
# GDM doesn't start in virtual machines with ISO
|
|
displayManager.slim = {
|
|
enable = true;
|
|
defaultUser = "root";
|
|
autoLogin = true;
|
|
};
|
|
desktopManager.gnome3 = {
|
|
enable = true;
|
|
extraGSettingsOverrides = ''
|
|
[org.gnome.desktop.background]
|
|
show-desktop-icons=true
|
|
|
|
[org.gnome.nautilus.desktop]
|
|
trash-icon-visible=false
|
|
volumes-visible=false
|
|
home-icon-visible=false
|
|
network-icon-visible=false
|
|
'';
|
|
|
|
extraGSettingsOverridePackages = [ pkgs.gnome3.nautilus ];
|
|
};
|
|
};
|
|
|
|
environment.systemPackages =
|
|
[ # Include gparted for partitioning disks.
|
|
pkgs.gparted
|
|
|
|
# Include some editors.
|
|
pkgs.vim
|
|
pkgs.bvi # binary editor
|
|
pkgs.joe
|
|
|
|
pkgs.glxinfo
|
|
];
|
|
|
|
# Don't start the X server by default.
|
|
services.xserver.autorun = mkForce false;
|
|
|
|
# Auto-login as root.
|
|
services.xserver.displayManager.gdm.autoLogin = {
|
|
enable = true;
|
|
user = "root";
|
|
};
|
|
|
|
system.activationScripts.installerDesktop = let
|
|
# Must be executable
|
|
desktopFile = pkgs.writeScript "nixos-manual.desktop" ''
|
|
[Desktop Entry]
|
|
Version=1.0
|
|
Type=Link
|
|
Name=NixOS Manual
|
|
URL=${config.system.build.manual.manual}/share/doc/nixos/index.html
|
|
Icon=system-help
|
|
'';
|
|
|
|
# use cp and chmod +x, we must be sure the apps are in the nix store though
|
|
in ''
|
|
mkdir -p /root/Desktop
|
|
ln -sfT ${desktopFile} /root/Desktop/nixos-manual.desktop
|
|
cp ${pkgs.gnome3.gnome-terminal}/share/applications/gnome-terminal.desktop /root/Desktop/gnome-terminal.desktop
|
|
chmod a+rx /root/Desktop/gnome-terminal.desktop
|
|
cp ${pkgs.gparted}/share/applications/gparted.desktop /root/Desktop/gparted.desktop
|
|
chmod a+rx /root/Desktop/gparted.desktop
|
|
'';
|
|
|
|
}
|