Set the time zone and locale

These are the first settings that belong to the new machine rather than to the installer. All of them run inside the chroot.

Time zone

Run this inside the chroot:
ln -sf /usr/share/zoneinfo/America/Denver /etc/localtime
hwclock --systohc

Substitute your own zone; ls /usr/share/zoneinfo lists the regions, and each is a directory of cities. /etc/localtime is simply a symlink into that tree, which is why this is a one-line setting with no configuration file behind it.

hwclock --systohc writes the current system time to the hardware clock in UTC.

Clocks on the Raspberry Pi

A Pi 5 has a real-time clock, but it only keeps time across a power cut if you have fitted the optional battery. Without one the machine boots with a meaningless date every time and waits for NTP to correct it, which is harmless as long as the network comes up. It is the reason the survey step checked the clock in the first place.

Locale

Arch ships every locale commented out and generates only the ones you ask for. Uncomment the line you want:

Edit this file: /etc/locale.gen
en_US.UTF-8 UTF-8

Then generate it and record the choice as the system default:

Run this inside the chroot:
locale-gen
echo "LANG=en_US.UTF-8" > /etc/locale.conf
(stdout)
Generating locales...
  en_US.UTF-8... done
Generation complete.
tip

Pick a UTF-8 locale. A non-UTF-8 default is the reason box-drawing characters in programs like lsblk degrade into |- and `-, and it causes stranger problems than that in anything handling text.

Console keymap

If your keyboard is not US layout, set it for the text console – this is separate from any graphical keyboard setting later:

Edit this file: /etc/vconsole.conf
KEYMAP=us

localectl list-keymaps lists the options. On a machine you only ever reach over SSH this setting never comes up, but it costs nothing now and is annoying to discover you need at a rescue prompt.

With a system installed, an fstab describing it, and a shell inside it, what remains is to make the machine capable of starting on its own. That is the next chapter.

// settings
theme:
fx: