{ "$schema": "https://json-schema.org/draft/2020-12/schema", "title": "Archinstall Config", "description": "A schema for the archinstall command config, more info over at https://archinstall.readthedocs.io/installing/guided.html#options-for-config", "type": "object", "properties": { "additional-repositories": { "description": "Additional repositories to optionally enable", "type": "string", "enum": [ "multilib", "testing" ] }, "audio_config": { "description": "Audio server to be installed", "type": "object", "properties": { "audio": { "description": "Audio server to be installed", "type": "string", "enum": [ "pipewire", "pulseaudio" ] } }, }, "bootloader": { "description": "Bootloader to be installed", "type": "string", "enum": [ "systemd-bootctl", "grub-install", "efistub" ] }, "uki": { "description": "Set to true to use unified kernel images", "type": "boolean" }, "custom-commands": { "description": "Custom commands to be run post install", "type": "array", "items": { "type": "string" } }, "harddrives": { "description": "Path of device to be used", "type": "array", "items": { "type": "string" } }, "hostname": { "description": "Hostname of machine after installation", "type": "string" }, "kernels": { "description": "List of kernels to install eg: linux, linux-lts, linux-zen etc", "type": "array", "items": { "type": "string", "enum": [ "linux", "linux-lts", "linux-zen", "linux-hardened" ] } }, "keyboard-language": { "description": "eg: us, de, de-latin1 etc", "type": "string" }, "mirror-region": { "description": "By default, it will autodetect the best region. Enter a region or a dictionary of regions and mirrors to use specific ones", "type": "object" }, "network_config": { "description": "Choose between NetworkManager, manual configuration, use systemd-networkd from the ISO or no configuration", "type": "object", "properties": { "type": "string", "nics": [ "type": "array", "items": { "iface": "string", "dhcp": "boolean", "ip": "string", "gateway": "string", "dns": { "description": "List of DNS servers", "type": "array", "items": { "type": "string" } } ] } } }, "ntp": { "description": "Set to true to set-up ntp post install", "type": "boolean" }, "packages": { "description": "List of packages to install post-installation", "type": "array", "items": { "type": "string" } }, "profile": { "path": { "description": "Local path or Url that points to a python file containing profile definitions", "type": "string" }, "main": { "description": "Main top level profile selection", "type": "string", "enum": [ "desktop", "minimal", "server", "xorg", "custom" ] }, "details": { "description": "Specific profile to be installed based on the 'main' selection; these profiles are present in default_profiles/, use the file name of a profile without the extension to install it (case insensitive)", "type": "string", "enum": [ "awesome", "bspwm", "budgie", "cinnamon", "cutefish", "deepin", "desktop", "enlightenment", "gnome", "i3-wm", "plasma", "lxqt", "mate", "sway", "xfce4", "qtile", "cockpit", "docker", "httpd", "lighttpd", "mariadb", "nginx", "postgresql", "sshd", "tomcat" ] }, "custom": { "description": "Specific profile definitions for custom setup profiles)", "type": "array", "items": { "type": "object", "properties": { "packages": "string", "services": "string", "enabled": "boolean" } } }, "gfx_driver": { "description": "Graphics Drivers to install if a desktop profile is used, ignored otherwise.", "type": "string", "enum": [ "VMware / VirtualBox (open-source)", "Intel (open-source)", "AMD / ATI (open-source)", "All open-source (default)", "Nvidia (open kernel module for newer GPUs, Turing+)", "Nvidia (open-source nouveau driver)", "Nvidia (proprietary)" ] }, "greeter_type": { "description": "Greeter type to install if a desktop profile is used, ignored otherwise.", "type": "string", "enum": ["lightdm", "sddm", "gdm"] } }, "services": { "description": "Services to enable post-installation", "type": "array", "items": { "type": "string" } }, "sys-encoding": { "description": "Set to change system encoding post-install, ignored if --advanced flag is not passed", "type": "string" }, "sys-language": { "description": "Set to change system language post-install, ignored if --advanced flag is not passed", "type": "string" }, "timezone": { "description": "Timezone eg: UTC, Asia/Kolkata etc.", "type": "string" } }, "required": [ "bootloader", "kernels", "mirror-region" ], "anyOf": [ { "required": [ "!root-password" ] }, { "required": [ "!users": { "description": "User account", "type": "object", "properties": { "username": "string", "!password": "string", "sudo": "boolean" } } ] } ] }