181 lines
9.1 KiB
Plaintext
181 lines
9.1 KiB
Plaintext
# Arch Linux Install Script (alis) configuration file
|
|
#
|
|
# Some variables values are preceded by a ! character, this means that the value is ignored.
|
|
# Some variables accept a single value others accept multiple values as annotated in the comments.
|
|
# Some variables are boolean with a value of true or false.
|
|
#
|
|
# Read the Arch Linux wiki pages to learn more about the variables values.
|
|
# https://github.com/picodotdev/alis/blob/master/README.md
|
|
|
|
# init
|
|
## KEYS sets keyboard layout.
|
|
## LOG_TRACE outputs the comands executed.
|
|
## LOG_FILE generates a log file with the commands executed and output generated during installation.
|
|
### The log file is saved to /var/log/alis.log.
|
|
KEYS="fr"
|
|
LOG_TRACE="false"
|
|
LOG_FILE="false"
|
|
|
|
# partition
|
|
## DEVICE sets which is the device for the installation. auto autodetects the device.
|
|
## DEVICE_TRIM sets if the DEVICE device supports TRIM feature.
|
|
## LVM sets if the DEVICE is partitioned with LVM partition scheme.
|
|
## LUKS_PASSWORD and LUKS_PASSWORD_RETYPE if set is the password for encrypt the device. With LVM, LVM on LUKS is used. If "ask" password alis asks for a secure password.
|
|
## FILE_SYSTEM_TYPE root device is formatted with this file system type.
|
|
## BTRFS_SUBVOLUMES_MOUNTPOINTS allows to customize btrfs file system subvolumes mountpoints. swap sobvolume is created only if swap file is created (only if there is SWAP_SIZE value).
|
|
### Format ("name,subvolume,mount_point")
|
|
## SWAP_SIZE swap file size with a size of the value in megabytes. If no value no swap file is created.
|
|
## PARTITION_MODE how partition is performed on DEVICE.
|
|
### "auto" value deletes all existing partitions and creates a boot partition and a root partition using disk full size.
|
|
### Warning! all disk data will be lost, so backup existing data before.
|
|
### "custom" value allows to use a custom parted partition script.
|
|
### "manual" allows to specify which existing partitions are used for boot partition and root partition.
|
|
## PARTITION_MOUNT_POINTS mount points, partition number and directory, to mount from DEVICE.
|
|
DEVICE="!auto !/dev/sda /dev/nvme0n1 !/dev/vda !/dev/mmcblk0" # sata nvme mmc (single)
|
|
DEVICE_TRIM="true"
|
|
LVM="false"
|
|
LUKS_PASSWORD="ask"
|
|
LUKS_PASSWORD_RETYPE="ask"
|
|
FILE_SYSTEM_TYPE="ext4 !btrfs !xfs !f2fs !reiserfs" # (single)
|
|
BTRFS_SUBVOLUMES_MOUNTPOINTS=("root,root,/" "home,home,/home" "var,var,/var" "snapshots,snapshots,/snapshots" "swap,swap,/swap")
|
|
#BTRFS_SUBVOLUMES_MOUNTPOINTS=("root,@,/" "home,@home,/home" "var,@var_log,/var/log" "snapshots,@snapshots,/.snapshots" "swap,@swap,/swap")
|
|
SWAP_SIZE="!2048 !4096 8192" # (single)
|
|
PARTITION_MODE="auto !custom !manual"
|
|
PARTITION_MOUNT_POINTS=("1=/boot" "2=/" "!3=/home")
|
|
PARTITION_CUSTOM_PARTED_UEFI="mklabel gpt mkpart ESP fat32 1MiB 2048mkpart root $FILE_SYSTEM_TYPE 2048MiB 100% set 1 esp on"
|
|
PARTITION_CUSTOM_PARTED_BIOS="mklabel msdos mkpart primary ext4 4MiB 2048MiB mkpart primary $FILE_SYSTEM_TYPE 2048MiB 100% set 1 boot on"
|
|
|
|
# network_install
|
|
## Variables to setup the WIFI connection to internet.
|
|
## The WIFI interface, WIFI ESSID identifier and WIFI password must be specified. If "ask" password alis asks for a secure password.
|
|
## PING_HOSTNAME is the host to check the internet connection.
|
|
WIFI_INTERFACE=""
|
|
WIFI_ESSID=""
|
|
WIFI_KEY="ask"
|
|
WIFI_KEY_RETYPE="ask"
|
|
PING_HOSTNAME="mirrors.kernel.org"
|
|
|
|
# install
|
|
## REFLECTOR allows to use reflector utility to use the best mirrors for packages download.
|
|
## REFLECTOR_COUNTRIES is an array of countries to select mirrors from.
|
|
## PACMAN_MIRROR if reflector is not used this specific mirror is used.
|
|
## PACMAN_PARALLEL_DOWNLOADS configures pacman to use parallel downloads, set to false on slow internet connections and disable timeouts.
|
|
## KERNELS additional kernels and headers to install.
|
|
## KERNELS_COMPRESSION selects the algorithm for kernel compression.
|
|
## KERNELS_PARAMETERS specific kernel parameters to set on boot. eg. iommu=soft
|
|
REFLECTOR="true"
|
|
REFLECTOR_COUNTRIES=("France")
|
|
PACMAN_MIRROR="https://mirrors.kernel.org/archlinux/\$repo/os/\$arch"
|
|
PACMAN_PARALLEL_DOWNLOADS="true"
|
|
KERNELS="linux-lts !linux-lts-headers !linux-hardened !linux-hardened-headers !linux-zen !linux-zen-headers" # (multiple)
|
|
KERNELS_COMPRESSION="!gzip !bzip2 !lzma !xz !lzop !lz4 zstd"
|
|
KERNELS_PARAMETERS="!iommu=soft nvme_load=YES"
|
|
|
|
# aur
|
|
## AUR_PACKAGE the AUR command to install in case some package requires it, only is installed if necessary.
|
|
AUR_PACKAGE="paru-bin !yay-bin !paru !yay !aurman" # (single)
|
|
|
|
# display driver
|
|
## DISPLAY_DRIVER installs a specific display driver, you must know which brand is the graphics hardware.
|
|
### With auto value intel driver is used for Intel brand, amdgpu driver for AMD brand and nvidia driver for NVIDIA brand.
|
|
### Other variables activates some features if are supported for the DISPLAY_DRIVER.
|
|
## KMS add support for kernel mode setting
|
|
## FASTBOOT, FRAMEBUFFER_COMPRESSION for intel graphics.
|
|
## DISPLAY_DRIVER_DDX add DDX driver which provides 2D acceleration in Xorg.
|
|
## VULKAN add support for Vulkan.
|
|
## DISPLAY_DRIVER_HARDWARE_VIDEO_ACCELERATION, DISPLAY_DRIVER_HARDWARE_VIDEO_ACCELERATION_INTEL add support for hardware video acceleration
|
|
DISPLAY_DRIVER="auto !intel !amdgpu !ati !nvidia !nvidia-lts !nvidia-dkms !nvidia-470xx-dkms !nvidia-390xx-dkms !nvidia-340xx-dkms !nouveau" # (single)
|
|
KMS="true"
|
|
FASTBOOT="true"
|
|
FRAMEBUFFER_COMPRESSION="true"
|
|
DISPLAY_DRIVER_DDX="true"
|
|
VULKAN="true"
|
|
DISPLAY_DRIVER_HARDWARE_VIDEO_ACCELERATION="true"
|
|
DISPLAY_DRIVER_HARDWARE_VIDEO_ACCELERATION_INTEL="intel-media-driver !libva-intel-driver" # (single)
|
|
|
|
# config
|
|
## Some variables for system configuration, from timezone, locale and keyboard to the root password.
|
|
## KEYLAYOUT, KEYMODEL, KEYVARIANT, KEYOPTIONS see https://wiki.archlinux.org/title/X_keyboard_extension#Preset_configuration
|
|
## KEYMAP, FONT, FONT_MAP see https://man.archlinux.org/man/vconsole.conf.5
|
|
## ROOT_PASSWORD root user password. If "ask" password alis asks for a secure password.
|
|
TIMEZONE="/usr/share/zoneinfo/Europe/Paris"
|
|
LOCALES=("fr_FR.UTF-8 UTF-8" "en_US.UTF-8 UTF-8")
|
|
LOCALE_CONF=("LANG=fr_FR.UTF-8" "LANGUAGE=fr_FR:fr:en_US:en")
|
|
KEYLAYOUT="fr"
|
|
KEYMODEL=""
|
|
KEYVARIANT=""
|
|
KEYOPTIONS=""
|
|
KEYMAP="KEYMAP=fr"
|
|
FONT=""
|
|
FONT_MAP=""
|
|
HOSTNAME="cb-system"
|
|
ROOT_PASSWORD="ask"
|
|
ROOT_PASSWORD_RETYPE="ask"
|
|
|
|
# user
|
|
## USER_NAME, USER_PASSWORD Regular user to create in the system. A password must be specified, if "ask" password alis asks for a secure password.
|
|
## ADDITIONAL_USERS is an array of additional users to create in the system, if "ask" password alis asks for a secure password.
|
|
USER_NAME="cb"
|
|
USER_PASSWORD="ask"
|
|
USER_PASSWORD_RETYPE="ask"
|
|
ADDITIONAL_USERS=() # eg. ("user1=password1" "user2=password2")
|
|
|
|
## systemd-homed
|
|
### SYSTEMD_HOMED "true" value requires interactivity to set user password
|
|
SYSTEMD_HOMED="false"
|
|
SYSTEMD_HOMED_STORAGE="!auto !luks !subvolume directory !fscrypt !cifs"
|
|
SYSTEMD_HOMED_STORAGE_LUKS_TYPE="auto !ext4 !btrfs !xfs"
|
|
SYSTEMD_HOMED_STORAGE_CIFS_DOMAIN=""
|
|
SYSTEMD_HOMED_STORAGE_CIFS_SERVICE=""
|
|
|
|
# mkinitcpio
|
|
## HOOKS are the system hooks to execute to build the initial ramdisk.
|
|
## MODULES are used to specify the modules to load before anything to execute to build the initial ramdisk.
|
|
### Generally, it is not necessary to modify, alis enables or disables some hooks
|
|
### taking in account other variables values like bootloader or device encryption.
|
|
HOOKS="base !udev !usr !resume !systemd !btrfs autodetect keyboard !keymap !consolefont !sd-vconsole modconf block !net !dmraid !mdadm !mdadm_udev !encrypt !sd-encrypt !lvm2 fsck filesystems"
|
|
MODULES="!vmd"
|
|
|
|
# bootloader
|
|
## BOOTLOADER system boot loader.
|
|
### With auto value grub is used for BIOS system, systemd for UEFI system.
|
|
BOOTLOADER="auto !grub !refind !systemd" # (single)
|
|
|
|
# shell
|
|
## CUSTOM_SHELL configures an alternative custom shell interpreter.
|
|
CUSTOM_SHELL="bash !zsh !dash !fish" # (single)
|
|
|
|
# desktop
|
|
## DESKTOP_ENVIRONMENT installs a desktop environment.
|
|
DESKTOP_ENVIRONMENT="!gnome !kde !xfce !mate !cinnamon !lxde !i3-wm !i3-gaps !deepin !budgie !bspwm !awesome !qtile !openbox !leftwm !dusk" # (single)
|
|
|
|
# packages
|
|
## PACKAGES_MULTILIB configures multilib repository for pacman and install multilib packages for display driver.
|
|
## PACKAGES_INSTALL installs packages on system installation, edit alis-packages.conf to select packages.
|
|
## PACKAGES_PIPEWIRE installs PipeWire replacing PulseAudio, requires PACKAGES_INSTALL="true".
|
|
### It is recommended to install packages after base installation and reboot.
|
|
PACKAGES_MULTILIB="true"
|
|
PACKAGES_INSTALL="false"
|
|
PACKAGES_PIPEWIRE="false"
|
|
|
|
# provision
|
|
## PROVISION_DIRECTORY directory files to provision, preserving directories. This is useful to copy some configuration files.
|
|
## PROVISION provisions the files placed in PROVISION_DIRECTORY
|
|
PROVISION="false"
|
|
|
|
# misc
|
|
## VAGRANT for build a VirtualBox OVA with Packer
|
|
VAGRANT="false"
|
|
|
|
# systemd
|
|
## SYSTEMD_UNITS systemd units to enable or disable.
|
|
### If preceded with a "+" unit is enabled, if preceded with "-" unit is disabled, if preceded with "!" unit is ignored (no action is performed).
|
|
### eg. "+ufw.service" to enable, "-ufw.service" to disable, "!ufw.service" to ignore
|
|
SYSTEMD_UNITS=""
|
|
|
|
# reboot
|
|
## REBOOT on installation end reboots the system automatically. If "false" no reboot is performed and the user must do it explicitly.
|
|
REBOOT="true"
|
|
|
|
|