1# This module defines a NixOS installation CD that contains X11 and
2# Plasma 5.
3
4{ lib, pkgs, ... }:
5
6{
7 imports = [ ./installation-cd-graphical-calamares.nix ];
8
9 isoImage.edition = lib.mkDefault "plasma5";
10
11 services.xserver.desktopManager.plasma5 = {
12 enable = true;
13 };
14
15 # Automatically login as nixos.
16 services.displayManager = {
17 sddm.enable = true;
18 autoLogin = {
19 enable = true;
20 user = "nixos";
21 };
22 };
23
24 environment.systemPackages = with pkgs; [
25 # Graphical text editor
26 plasma5Packages.kate
27 ];
28
29 system.activationScripts.installerDesktop =
30 let
31
32 # Comes from documentation.nix when xserver and nixos.enable are true.
33 manualDesktopFile = "/run/current-system/sw/share/applications/nixos-manual.desktop";
34
35 homeDir = "/home/nixos/";
36 desktopDir = homeDir + "Desktop/";
37
38 in
39 ''
40 mkdir -p ${desktopDir}
41 chown nixos ${homeDir} ${desktopDir}
42
43 ln -sfT ${manualDesktopFile} ${desktopDir + "nixos-manual.desktop"}
44 ln -sfT ${pkgs.gparted}/share/applications/gparted.desktop ${desktopDir + "gparted.desktop"}
45 ln -sfT ${pkgs.plasma5Packages.konsole}/share/applications/org.kde.konsole.desktop ${
46 desktopDir + "org.kde.konsole.desktop"
47 }
48 ln -sfT ${pkgs.calamares-nixos}/share/applications/io.calamares.calamares.desktop ${
49 desktopDir + "io.calamares.calamares.desktop"
50 }
51 '';
52
53}