3.4 KiB
Executable File
3.4 KiB
Executable File
Arch Install
Connect to Internet
If you are using wifi, use iwd
device list
station *device* get-networks
station *d
Install Guide
-
Turn on parallel downloads
sed -i "s/^#ParallelDownloads = 5$/ParallelDownloads = 15/" /etc/pacman.conf -
Install archlinux keyring
pacman --noconfirm -Sy archlinux-keyring -
Load layout, set time
loadkeys us
timedatectl set-ntp true
- Create ext4, efi, swap partition
lsblk
cfdisk /dev/sdx or /dev/nvme0x
# Efi partition
mkfs.fat -F32 $efipartition
# Swap partition
mkswap $swappartition
swapon $swappartition
# ext4 partition
mkfs.ext4 $partition
-
Mount linux partition to /mnt
mount $partition /mnt -
Pacstrap
pacstrap /mnt base base-devel linux linux-firmware
- genstab
genfstab -U /mnt >> /mnt/etc/fstab
- chroot
arch-chroot /mnt
- set timezone
ln -sf /usr/share/zoneinfo/Asia/Kolkata /etc/localtime
- set hardware clock from system clock
hwclock --systohc
- set locale
echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen
locale-gen
echo "LANG=en_US.UTF-8" > /etc/locale.conf
echo "KEYMAP=us" > /etc/vconsole.conf
- set hostname
echo $hostname > /etc/hostname
echo "127.0.0.1 localhost" >> /etc/hosts
echo "::1 localhost" >> /etc/hosts
echo "127.0.1.1 $hostname.localdomain $hostname" >> /etc/hosts
- Initramfs
mkinitcpio -P
- Set root password
passwd
- install grub
pacman --noconfirm -S grub efibootmgr os-prober
mkdir /boot/efi
mount $efipartition /boot/efi
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=archlinux --recheck
sed -i 's/quiet/pci=noaer/g' /etc/default/grub
sed -i 's/GRUB_TIMEOUT=5/GRUB_TIMEOUT=0/g' /etc/default/grub
grub-mkconfig -o /boot/grub/grub.cfg
- Install all the required user packages
pacman -S --noconfirm hyprland waybar hyprlock hyprpaper hyprpolkitagent hyprshot gammastep swaync \
noto-fonts noto-fonts-emoji noto-fonts-cjk ttf-jetbrains-mono-nerd ttf-font-awesome \
awesome-terminal-fonts bat libnotify ntfs-3g \
jq mpv ncdu transmission-cli yt-dlp cowsay \
pacman-contrib pavucontrol rsync ripgrep python-pywal \
imlib2 zip unzip wget pcmanfm yazi stow fuzzel\
fzf man-db pipewire pipewire-pulse xcompmgr pamixer \
sxhkd imagemagick network-manager git dash arc-gtk-theme papirus-icon-theme \
neovim lua xdg-user-dirs mpd ncmpcpp unclutter \
zsh zsh-autosuggestions zathura zathura-pdf-poppler
- Enable networkmanager
# network manager
systemctl enable NetworkManager.service
- set shell
rm /bin/sh
ln -s dash /bin/sh
- Set user permissions
echo "%wheel ALL=(ALL:ALL) ALL" >> /etc/sudoers
- Create user
useradd -m -G wheel -s /bin/zsh $username
passwd $username
- Setup dotfiles
cd $HOME
git clone git@github.com:krolyxon/dotfiles.git ~/.dotfiles/
cd ~/.dotfiles; stow .
- nsxiv: image viewer
git clone --depth=1 git@github.com:krolyxon/nsxiv.git ~/.local/src/nsxiv
sudo make -C ~/.local/src/nsxiv install
- nvim: Text editor
git clone --depth=1 git@github.com:krolyxon/nvim.git ~/.config/nvim
- paru: AUR helper
git clone https://aur.archlinux.org/paru-bin.git && cd paru-bin && makepkg -sri && cd .. && rm -rf paru-bin
paru -S --noconfirm htop-vim zsh-fast-syntax-highlighting-git keyd-git zen-browser-bin
- set zsh as default shell
chsh -s $(which zsh)