2020-04-24 23:36:52 +00:00
|
|
|
{ lib, ... }:
|
|
|
|
|
|
|
|
with lib;
|
|
|
|
|
|
|
|
{
|
|
|
|
imports =
|
|
|
|
[ ../virtualisation/virtualbox-image.nix
|
|
|
|
../installer/cd-dvd/channel.nix
|
|
|
|
../profiles/demo.nix
|
|
|
|
../profiles/clone-config.nix
|
|
|
|
];
|
|
|
|
|
|
|
|
# FIXME: UUID detection is currently broken
|
|
|
|
boot.loader.grub.fsIdentifier = "provided";
|
|
|
|
|
|
|
|
# Allow mounting of shared folders.
|
|
|
|
users.users.demo.extraGroups = [ "vboxsf" ];
|
|
|
|
|
|
|
|
# Add some more video drivers to give X11 a shot at working in
|
|
|
|
# VMware and QEMU.
|
|
|
|
services.xserver.videoDrivers = mkOverride 40 [ "virtualbox" "vmware" "cirrus" "vesa" "modesetting" ];
|
|
|
|
|
|
|
|
powerManagement.enable = false;
|
2023-11-16 04:20:00 +00:00
|
|
|
system.stateVersion = lib.mkDefault lib.trivial.release;
|
2020-04-24 23:36:52 +00:00
|
|
|
|
|
|
|
installer.cloneConfigExtra = ''
|
|
|
|
# Let demo build as a trusted user.
|
2022-01-27 00:19:43 +00:00
|
|
|
# nix.settings.trusted-users = [ "demo" ];
|
2020-04-24 23:36:52 +00:00
|
|
|
|
|
|
|
# Mount a VirtualBox shared folder.
|
|
|
|
# This is configurable in the VirtualBox menu at
|
|
|
|
# Machine / Settings / Shared Folders.
|
|
|
|
# fileSystems."/mnt" = {
|
|
|
|
# fsType = "vboxsf";
|
|
|
|
# device = "nameofdevicetomount";
|
|
|
|
# options = [ "rw" ];
|
|
|
|
# };
|
|
|
|
|
|
|
|
# By default, the NixOS VirtualBox demo image includes SDDM and Plasma.
|
|
|
|
# If you prefer another desktop manager or display manager, you may want
|
|
|
|
# to disable the default.
|
|
|
|
# services.xserver.desktopManager.plasma5.enable = lib.mkForce false;
|
2024-04-21 15:54:59 +00:00
|
|
|
# services.displayManager.sddm.enable = lib.mkForce false;
|
2020-04-24 23:36:52 +00:00
|
|
|
|
|
|
|
# Enable GDM/GNOME by uncommenting above two lines and two lines below.
|
|
|
|
# services.xserver.displayManager.gdm.enable = true;
|
2021-05-20 23:08:51 +00:00
|
|
|
# services.xserver.desktopManager.gnome.enable = true;
|
2020-04-24 23:36:52 +00:00
|
|
|
|
|
|
|
# Set your time zone.
|
|
|
|
# time.timeZone = "Europe/Amsterdam";
|
|
|
|
|
|
|
|
# List packages installed in system profile. To search, run:
|
|
|
|
# \$ nix search wget
|
|
|
|
# environment.systemPackages = with pkgs; [
|
|
|
|
# wget vim
|
|
|
|
# ];
|
|
|
|
|
|
|
|
# Enable the OpenSSH daemon.
|
|
|
|
# services.openssh.enable = true;
|
|
|
|
'';
|
|
|
|
}
|