nix-config/.archlinux/install-scripts/003-configure

49 lines
1.5 KiB
Plaintext
Raw Normal View History

#!/bin/sh
#
# Core system configs
#
# https://wiki.archlinux.org/index.php/Installation_guide
set -xe
# Generate the fstab file (so the filesystem is mounted on boot)
genfstab -U /mnt > /mnt/etc/fstab
# Set the timezone
arch-chroot /mnt ln -sf /usr/share/zoneinfo/America/New_York /etc/localtime
# Generate /etc/adjtime
arch-chroot /mnt hwclock --systohc
# Set the hostname
echo "$HOSTNAME" > /mnt/etc/hostname
# Configure the hosts file (if your system has a permanent IP address, use that instead of 127.0.1.1)
echo "127.0.0.1 localhost" >> /mnt/etc/hosts
echo "::1 localhost" >> /mnt/etc/hosts
echo "127.0.1.1 $HOSTNAME.localdomain $HOSTNAME" >> /mnt/etc/hosts
# Set the language to English and use the en_US.UTF-8 locale.
echo "LANG=en_US.UTF-8" > /mnt/etc/locale.conf
sed -i '/#en_US.UTF-8 UTF-8/s/^#//g' /mnt/etc/locale.gen
# Generate the locale.
arch-chroot /mnt locale-gen
# Set the tty font to a larger one (same as the default setfont, but larger)
if [ "$HIDPI" == "YES" ]; then
echo "FONT=latarcyrheb-sun32" > /mnt/etc/vconsole.conf
fi
# Install grub to the primary partition.
arch-chroot /mnt grub-install /dev/sda
# Prevent the GRUB window from showing at boot, ideal for single OS machines (undo with chroot and mkconfig)
sed -i '/GRUB_TIMEOUT/c\GRUB_TIMEOUT=0' /mnt/etc/default/grub
# Make the configuration file for grub.
arch-chroot /mnt grub-mkconfig -o /boot/grub/grub.cfg
# Change the shell of the root account to fish.
arch-chroot /mnt chsh -s /usr/bin/fish