# Switch into a new system as a root:

It's time to start managing our fresh system.

TIP

You can use archiso later as a recovery tool! You may also exit chroot with exit command.

Chroot into the system

arch-chroot /mnt

# Localization

Uncomment needed locales e.g. en_US.UTF-8 UTF-8:

vim /etc/locale.gen

And generate them:

locale-gen

Also add LANG variable:

echo "LANG=en_US.UTF-8" > /etc/locale.conf

This example will show you how to make dvorak layout persistent:

echo "KEYMAP=dvorak" > /etc/vconsole.conf

TIP

Do nothing if you have QWERTY. If you have AZERTY, colmark etc, just change dvorak with your favorite layout.

# Timezone

Set time zone

ln -sf /usr/share/zoneinfo/Region/City /etc/localtime
hwclock --systohc

# Update the system clock

To ensure that system clock is accurate.

timedatectrl set-ntp true

Check the status:

timedatectrl status

# Network configuration

Hostname - is a unique name created to identify a machine on a network.

echo uniquename > /etc/hostname

TIP

The result of this manipulations will be something like: user@uniquename

You will be able to generate new hostname with hostnamectl later. Be aware that this method is NOT WORKING in arch-chroot.

hostnamectl set-hostname myhostname

Add matching entries to the hosts, edit vim /etc/hosts.

127.0.0.1     localhost
::1           localhost
127.0.1.1     uniquename.localdomain uniquename

Use a permanent IP address instead of 127.0.1.1 if you have one. See more in the network configuration wiki.

# LVM

Because our root is the part of LVM, we should add it to mkinitcpio or it could fail to boot

vim /etc/mkinitcpio.conf

Put lvm2 between block and filesystems like so

HOOKS=(base udev ... block lvm2 filesystems ...)

And run mkinitcpio after editing

mkinitcpio -P

# Community repositories

Enabling multilib for the arch community repositories is necessary, if you want to take advantage of AUR.

NB

multilib is for 64bit system.

To do this open the pacman.conf file:

vim /etc/pacman.conf

Uncomment this:

#[multilib]
#Include = /etc/pacman.d/mirrorlist

TIP

You also may add unofficial repositories But do it with caution.

  • To have pacman animation while installing packages add this under the 'Misc options':
ILoveCandy
  • You may need Color option for yay later.

After editing update the system. We should let system know about the changes with this command:

pacman -Sy

# User and password

  • Root password:
passwd
  • User password:
    You should add at least one user. Replace username with preferred one:
useradd -m -g users -G wheel,storage,power -s /bin/bash username

And set password for a new user:

passwd username

# Sudoers

WARNING

Read about visudo before editing! Any errors makes sudo unusable.
Always edit /etc/sudoers file with visudo to prevent errors.

EDITOR=vim visudo

Since you added user to the wheel group, user will gain full root privileges, you need to uncomment this line:

%wheel ALL=(ALL) ALL

NOTE

If you are using a server or someone else has access to the wheel group, you may want to require sudoers to type root password.
In this case add this line:

Defaults rootpw

Read more about root password.

# Microcode

Also microcode updates should be installed.

TIP

Install amd-ucode if you have AMD CPU.

pacman -S intel-ucode

You can then check this file inside your /boot/ directory.