Arch Linux dotfiles
Language
- 🇺🇸 English
- 🇪🇸 Español
- Fonts, themes and GTK
- Apps
- Arch Linux Installation
- Installing paru
- Recomended software
- Set zsh as default shell
- Install nvidia drivers
- Gnome
| Software | Utility |
|---|---|
| Gnome | Graphical Environment |
| Qogir | Qogir-dark for icons |
| Qogir | Qogir-dark GTK Theme |
| Software | Utility |
|---|---|
| kitty | Terminal Emulator |
| zsh | Shell |
| powerlevel10k | ZSH Theme |
| nautilus | Graphical file manager |
| ranger | Terminal file manager |
| neovim | Terminal based text editor |
| gedit | Text editor |
| shotwell | Pictures Viewer & Editor |
| krita | Picture Editor |
| vlc | Video player |
| firefox | Web browser |
These are my hard disks and partitions in my case I will use the nvme1n1 disk that already has the partitions made because I already had Arch installed and I am only going to format them, here I leave a very good guide that details all the steps.
lsblkFormatting boot, EFI and swap partitions
mkfs.fat -F32 /dev/nvme1n1p1
mkfs.ext4 -L boot /dev/nvme1n1p2
mkswap /dev/nvme1n1p4
swaponI format root partition where the system is going to be installed. In this case the partition is encrypted with luks.
mkfs.btrfs -L root /dev/mapper/root -fWe mount the partitions where we are going to install Arch in /mnt
mount -t btrfs /dev/mapper/root /mnt
mkdir /mnt/boot
mount /dev/nvme1n1p2 /mnt/boot
mkdir /mnt/efi
mount /dev/nvme1n1p1 /mnt/efi Preparing pacman GPG keys to avoid problems
pacman-key --init
pacman-key --populate
pacman-key --refresh-keysInstall the basic (required) packages with pacstrap
pacstrap -K /mnt linux linux-firmware networkmanager grub wpa_supplicant base base-devel efibootmgr nano btrfs-progsGenerate the fstab file for the system to identify the partitions
genfstab -U /mnt > /mnt/etc/fstabNow we are going to enter the system that we have just installed on our hard drive
arch-chroot /mntSet the root password and create our user
passwd
useradd -m fran
passwd fran
usermod -aG wheel franConfigure the /etc/sudoers file
visudo /etc/sudoers
#Uncoment this line
%wheel ALL=(ALL:ALL) ALLGenerate the locale-gen file, set the hostname and timezone
#Uncomment or add en_US.UTF-8 and es_ES.UTF-8 on /etc/locale.gen
locale-gen
ln -sf /usr/share/zoneinfo/Europe/Madrid /etc/localtime
hwclock --systohc --utc
echo HOSTNAME > /etc/hostnameEdit hosts file
nano /etc/hosts
#Add this lines
127.0.0.1 localhost
::1 localhost
127.0.0.1 HOSTNAME.localhost HOSTNAMEWe add the root partition at boot time to decrypt it. In my case it is /dev/nvme1n1p3 but I will add it with the UUID since it is unique.
blkid #To see the UUID of each partition
nano /etc/default/grub
#And we add in GRUB_CMDLINE_LINUX="cryptdevice=UUID=YOURUUID:root root=/dev/mapper/root"Now we will also modify the configuration script for the creation of the initrd to decrypt the partition at boot time.
blkid #To see the UUID of each partition
nano /etc/mkinitcpio.conf
#We look for the first HOOKS without comment (without # in front) and add encrypt and/or the missing ones at the end to make it look like this:
HOOKS=(base udev autodetect modconf kms keyboard keymap consolefont block filesystems fsck encrypt) Now we run the script to create the boot kernel.
mkinitcpio -PI have another hard disk that I don't mount as home but I have encrypted and I want to decrypt it at boot time.
nano /etc/crypttab
#I add the following, I use the UUID but you can use the partition with /dev/sdX:
hdd UUID=YOURUUID noneInstalling and configuring grub
#These commands are for UEFI (you will have to change the partitions to the corresponding ones in your computer)
grub-install --boot-directory=/boot --efi-directory=/efi /dev/nvme1n1p2
grub-mkconfig -o /boot/grub/grub.cfg
grub-mkconfig -o /efi/EFI/arch/grub.cfg
#Commands for BIOS (Legacy)
grub-install /dev/sda
grub-mkconfig -o /boot/grub/grub.cfgEnable the NetworkManager and wpa_supplicant services to have internet at startup.
systemctl enable NetworkManager.service
systemctl enable wpa_supplicant.serviceWe already have Arch installed and we could reboot, in this case I'm going to install xorg and Gnome and enable it so that when rebooting it already has a graphical environment. You can install the graphical environment that you want, like KDE, Xfce, Qtile, etc.
pacman -S git xorg xorg-server gnome
systemctl enable gdm.serviceFinish the installation and restart the computer.
exit
reboot nowInstall paru to use AUR
sudo pacman -S --needed base-devel
git clone https://aur.archlinux.org/paru-bin.git
cd paru-bin/
makepkg -si
parusudo pacman -Sy firefox kitty ntfs-3g krita materia-gtk-theme vlc mpv zsh zsh-autosuggestions zsh-syntax-highlighting bat lsd neovim unzip zip unrar shotwell transmission-gtk chromium neofetch gnu-free-fonts noto-fonts ttf-bitstream-vera ttf-croscore
paru -S qogir-icon-theme qogir-gtk-theme github-desktop sublime-text-4 vmware-workstation wps-office ttf-wps-fonts ttf-dejavu ttf-droid ttf-ibm-plex ttf-liberation ttf-nerd-fonts-hack-complete-git ttf-meslo-nerd-font-powerlevel10ksudo usermod --shell /usr/bin/zsh fran
sudo usermod --shell /usr/bin/zsh rootsudo pacman -S nvidia-dkms lib32-nvidia-utils lib32-opencl-nvidia nvidia-settings nvidia-utils opencl-nvidia egl-wayland
sudo nano /etc/modprobe.d/blacklist.conf
#Add this lines
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv
blacklist nv
sudo mkinitcpio -P
sudo reboot nowGnome extensions that I use:













