forked from picodotdev/alis
-
Notifications
You must be signed in to change notification settings - Fork 0
/
alis.conf
184 lines (165 loc) · 9.41 KB
/
alis.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
# 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="es"
LOG_TRACE="true"
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.
## GPT_AUTOMOUNT sets whether to use GPT partition automounting
DEVICE="auto !/dev/sda !/dev/nvme0n1 !/dev/vda !/dev/mmcblk0" # sata nvme mmc (single)
DEVICE_TRIM="true"
LVM="false"
LUKS_PASSWORD=""
LUKS_PASSWORD_RETYPE=""
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 512MiB mkpart root $FILE_SYSTEM_TYPE 512MiB 100% set 1 esp on"
PARTITION_CUSTOM_PARTED_BIOS="mklabel msdos mkpart primary ext4 4MiB 512MiB mkpart primary $FILE_SYSTEM_TYPE 512MiB 100% set 1 boot on"
GPT_AUTOMOUNT="false"
# 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="false"
REFLECTOR_COUNTRIES=("Spain")
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="false"
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/Madrid"
LOCALES=("es_ES.UTF-8 UTF-8" "en_US.UTF-8 UTF-8")
LOCALE_CONF=("LANG=es_ES.UTF-8" "LANGUAGE=es_ES:es:en_US:en")
KEYLAYOUT="es"
KEYMODEL=""
KEYVARIANT=""
KEYOPTIONS=""
KEYMAP="KEYMAP=es"
FONT=""
FONT_MAP=""
HOSTNAME="archlinux"
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="picodotdev"
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.
## UKI generate and use a Unified Kernel Image.
### 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 !tpm"
UKI="false"
# bootloader
## BOOTLOADER system boot loader.
### With auto value grub is used for BIOS system, systemd for UEFI system.
BOOTLOADER="auto !grub !refind !systemd !efistub" # (single)
# shell
## CUSTOM_SHELL configures an alternative custom shell interpreter.
CUSTOM_SHELL="bash !zsh !dash !fish" # (single)
# desktop
## DESKTOP_ENVIRONMENT desktop environment to install.
## DISPLAY_MANAGER display manager to install and enable. With auto a default DM will be choosed based on the selected DE.
DESKTOP_ENVIRONMENT="!gnome !kde !xfce !mate !cinnamon !lxde !i3-wm !i3-gaps !deepin !budgie !bspwm !awesome !qtile !openbox !leftwm !dusk" # (single)
DISPLAY_MANAGER="auto !gdm !sddm !lightdm !lxdm" # (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="false"
PACKAGES_INSTALL="false"
PACKAGES_PIPEWIRE="false"
# provision
## PROVISION provisions the files placed in files directory on the installed system (preserving directory structure). This is useful to copy some configuration files.
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"