New installations
2024-04-29
Installation guide on ArchWiki describes basics in more details.
This list is just an overview, in practice the basic installation is mostly covered by `archinstall`.
In the past I wrote a post about partitioning for fully encrypted installations, check it out first if that's what you're aiming for.
- partition the hard drive
- format partitions
- mount all the partitions
- $ pacstrap -ci /mnt base
- $ genfstab -U /mnt >> /mnt/etc/fstab
- arch-chroot into the new installation
- install kernel, run $ mkinitcpio -P
- set up a bootloader like grub or systemd-boot
- install additional packages: vim tmux networkmanager
- set up a user account with sudo privileges
- reboot
At this point you should have a basic working system installation, but there is a lot more to do.
- set hostname, locales, keymaps, timezone
- install additional drivers (microcode, nvidia, r8168) and load kernel modules you might need
- regenerate mirrorlist with reflector
- set up a desktop manager (lightdm) with a greeter (lightdm-gtk-greeter)
- install a desktop environment (cinnamon) or a window manager (i3, sway)
- install some AUR helper (paru, yay)
- install your preferred set of packages
- enable your preferred set of services
- add your user to preferred groups
- set up a firewall (ufw, gufw)
- restore your dotfiles and custom configurations
- change themes (mint-l-theme) and icons (papirus-icon-theme)
- tweak your desktop environment settings just right
- change your input method to fcitx with mozc
- disable actions on lid close (/etc/systemd/logind.conf) and automatic suspend
- install vim-plug and vim plugins
- monitor filesystem integrity with AIDE
For some of these topics you can find helpful info on my blog.
Here's the reflector command that you can use for refreshing your mirrorlist:
$ reflector --verbose --latest 100 --fastest 30 --protocol https --sort rate --save /etc/pacman.d/mirrorlist
As a bonus, here's my `lightdm-gtk-greeter.conf`. I couldn't decide where else to store it.
[greeter]
background = /usr/share/backgrounds/lain-on-black.png
user-background = false
theme-name = Mint-L-Dark-Red
icon-theme-name = Papirus-Dark
font-name = Liberation Sans 12
indicators = ~power;~spacer;~separator;~clock;~separator;~spacer;~session
clock-format = %H:%M:%S - %a %d %h %Y
position = 5%,start -5%,end
a11y-states = ~contrast
hide-user-image = true
Happy hacking!