mirror of
https://github.com/ItsDrike/dotfiles.git
synced 2024-12-25 20:54:34 +00:00
Add arch installation instructions
This commit is contained in:
parent
1c8c3379b6
commit
4ef221abe2
105
arch-install-checklist.md
Normal file
105
arch-install-checklist.md
Normal file
|
@ -0,0 +1,105 @@
|
|||
## Set keyboard layout
|
||||
Default layout will be US
|
||||
`ls /usr/share/kbd/keymaps/**/*.map.gz` <- list keymaps
|
||||
`loadkeys de-latin1` <- modify layout
|
||||
|
||||
## Verify boot mode
|
||||
`ls /sys/firmware/efi/efivars` <- if exist, system is UEFI, else legacy BIOS
|
||||
|
||||
## Internet connection
|
||||
Ethernet connection is automatic, WiFi:
|
||||
`ip link` <- check network interface works and is enabled
|
||||
`iwctl` <- authenticate to your WiFi network
|
||||
|
||||
`ping archlinux.org` <- test connection
|
||||
|
||||
## System clock
|
||||
`timedatectl set-ntp true` <- make sure the clock will be accurate
|
||||
`timedatectl status` <- check the status
|
||||
|
||||
## Partition the disk
|
||||
`fdisk /dev/sdX` <- make partitions
|
||||
- EFI (if UEFI)
|
||||
- Swap
|
||||
- Root
|
||||
- (Home)
|
||||
|
||||
## Format the partitions and make filesystems
|
||||
`mkfs.ext4 /dev/root_partition`
|
||||
`mkfs.fat -F32 /dev/efi_system_partition`
|
||||
`mkswap /dev/swap_partition`
|
||||
|
||||
## Mount the file systems
|
||||
`mount /dev/root_partition /mnt`
|
||||
`mount /dev/efi_system_partition /mnt/boot`
|
||||
`swapon /dev/swap_partition`
|
||||
|
||||
## Install essentials
|
||||
First select mirrors (`/etc/pacman.d/mirrorlist`)
|
||||
`pacstrap /mnt base linux linux-firmware base-devel NetworkManager vim`
|
||||
|
||||
## Fstab
|
||||
`genfstab -U /mnt >> /mnt/etc/fstab`
|
||||
|
||||
## Chroot
|
||||
`arch-chroot /mnt`
|
||||
|
||||
## Set time zone
|
||||
`ln -sf /usr/share/zoneinfo/Region/Ciry /etc/localtime` <- specify timezone
|
||||
`hwclock --systohc` <- synchronize clock, to generate `/etc/adjtime`
|
||||
|
||||
## Localization
|
||||
Edit `/etc/locale.gen` and uncomment `en_US.UTF-8 UTF-8` and ISO locales
|
||||
`locale-gen` <- Generate locales
|
||||
|
||||
Set LANG variable in `locale.conf`:
|
||||
```
|
||||
LANG=en_US.UTF-8
|
||||
```
|
||||
|
||||
Set persistent keyboard layout in `/etc/vconsole.conf`
|
||||
(This will default to english, if not set)
|
||||
```
|
||||
KEYMAP=de-latin1
|
||||
```
|
||||
|
||||
## Network Config
|
||||
Define hostname in `/etc/hostname` (name of computer)
|
||||
Add matching entries to `/etc/hosts`
|
||||
```
|
||||
127.0.0.1 localhost
|
||||
::1 localhost
|
||||
127.0.1.1 hostname.localdomain hostname
|
||||
```
|
||||
|
||||
## Set root password or make other account
|
||||
`passwd` <- Set root password
|
||||
|
||||
It's better to work with priviledged user rather than root account directly.
|
||||
To do this, we first have to install `sudo` and `vim`. (We did this with `pacstrap`)
|
||||
After that, we can edit the configuration by `sudo EDITOR=vim visudo`, in which we will uncomment the line `%wheel ALL=(ALL) ALL` and save
|
||||
|
||||
After sudo is set up and `wheel` group is allowed to use it, we can make the user:
|
||||
`useradd -G wheel,admin -d /path/to/home -m username -`
|
||||
`passwd username`
|
||||
|
||||
After this, we can login as this user and make sure everything works as it shoud:
|
||||
`sudo su username`
|
||||
|
||||
## Install bootloader
|
||||
This will only cover grub, for other bootloaders, visit `https://wiki.archlinux.org/index.php/Arch_boot_process#Boot_loader`
|
||||
|
||||
Install `grub` package with pacman
|
||||
Note: To detect other operating systems too, you will also need `os-prober` package, also with NTFS systems, if windows isn't detected, try installing `ntfs-3g` and remounting
|
||||
|
||||
|
||||
UEFI:
|
||||
`efibootmgr` package is also needed for UEFI systems
|
||||
`grub-install --target=x86_64-efi --efi-directory=boot --bootloader-id=GRUB`
|
||||
BIOS (Legacy):
|
||||
`grub-install --target=i386-pc /dev/sdX`, where sdX is the disk, **not a partition**
|
||||
|
||||
Note: `--removable` option can be used, which will allow booting if EFI variables are reset or you move to another PC
|
||||
|
||||
### Generating grub configuration
|
||||
`grub-mkconfig -o /boot/grub/grub.cfg`
|
Loading…
Reference in a new issue