You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nixos-livecd/livecd-minimal.nix

65 lines
1.6 KiB
Nix

{ config, lib, pkgs, ... }:
let
custom-generator = "generate-config.sh";
r6dLib = import ./nixos-template-base/lib.nix;
hostname = "nixos-livecd.grudu.net";
in
{
imports = [
/nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix
nixos-template-base/base.nix
];
# Custom name
isoImage.isoName = pkgs.lib.mkForce "${config.isoImage.isoBaseName}-grudu.net-${config.system.nixosLabel}-${pkgs.stdenv.system}.iso";
# Avoid having the terminal flooded by kernel audit messages
boot.kernelParams = [ "audit=0" ];
# Files to copy to the liveCD
isoImage.contents = [
{
source = ./generate-config.sh;
target = "/custom/${custom-generator}";
}
];
environment.shellAliases = { nixos-generate-custom-config = "/iso/custom/${custom-generator}";};
networking.hostName = "${hostname}";
services = {
openssh.enable = true;
virtualbox.guest.enable = true;
xserver.enable = true;
};
r6d.machines = r6dLib.applyProfilesToDirectory {} {
"${hostname}" = {
configurationFlags = {
dns_resolveur = true;
edition-photo = true;
jetbrains-licensed = true;
};
configurationOptions = {};
profiles = {
isDubronetwork = true;
isDubronetworkWorkstation = true;
isDesktopEnvironment = true;
isWorkstation = true;
};
};
};
users.extraUsers.livecd = {
password = "livecd";
isNormalUser = true;
extraGroups = [
"audio"
"docker"
"vbox"
"vboxusers"
"wheel"
];
};
# Ports ouverts
networking.firewall.enable=false;
}