Krolyxon
Commit 3d5f89d

Branches

Refs →

arch-installarch_install.md

174 lines · 3.4 KB · Markdown

1# Arch Install
2
3## Connect to Internet
4If you are using wifi, use [iwd](https://wiki.archlinux.org/title/Iwd)
5```
6device list
7station *device* get-networks
8station *d
9```
10
11## Install Guide
12
131. Turn on parallel downloads
14``sed -i "s/^#ParallelDownloads = 5$/ParallelDownloads = 15/" /etc/pacman.conf``
15
162. Install archlinux keyring
17``pacman --noconfirm -Sy archlinux-keyring``
18
193. Load layout, set time
20```
21loadkeys us
22timedatectl set-ntp true
23```
24
254. Create ext4, efi, swap partition
26```
27lsblk
28cfdisk /dev/sdx or /dev/nvme0x
29
30# Efi partition
31mkfs.fat -F32 $efipartition
32
33# Swap partition
34mkswap $swappartition
35swapon $swappartition
36
37# ext4 partition
38mkfs.ext4 $partition
39```
40
415. Mount linux partition to /mnt
42``mount $partition /mnt``
43
446. Pacstrap
45```
46pacstrap /mnt base base-devel linux linux-firmware
47```
48
497. genstab
50```
51genfstab -U /mnt >> /mnt/etc/fstab
52```
53
548. chroot
55```
56arch-chroot /mnt
57```
58
599. set timezone
60```
61ln -sf /usr/share/zoneinfo/Asia/Kolkata /etc/localtime
62```
63
6410. set hardware clock from system clock
65```
66hwclock --systohc
67```
68
6911. set locale
70```
71echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen
72locale-gen
73echo "LANG=en_US.UTF-8" > /etc/locale.conf
74echo "KEYMAP=us" > /etc/vconsole.conf
75```
76
7712. set hostname
78```
79echo $hostname > /etc/hostname
80echo "127.0.0.1 localhost" >> /etc/hosts
81echo "::1 localhost" >> /etc/hosts
82echo "127.0.1.1 $hostname.localdomain $hostname" >> /etc/hosts
83```
84
8513. Initramfs
86```
87mkinitcpio -P
88```
89
9014. Set root password
91```
92passwd
93```
94
9515. install grub
96```
97pacman --noconfirm -S grub efibootmgr os-prober
98mkdir /boot/efi
99mount $efipartition /boot/efi
100
101grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=archlinux --recheck
102
103sed -i 's/quiet/pci=noaer/g' /etc/default/grub
104sed -i 's/GRUB_TIMEOUT=5/GRUB_TIMEOUT=0/g' /etc/default/grub
105
106grub-mkconfig -o /boot/grub/grub.cfg
107```
108
10916. Install all the required user packages
110```
111pacman -S --noconfirm hyprland waybar hyprlock hyprpaper hyprpolkitagent hyprshot gammastep swaync \
112 noto-fonts noto-fonts-emoji noto-fonts-cjk ttf-jetbrains-mono-nerd ttf-font-awesome \
113 awesome-terminal-fonts bat libnotify ntfs-3g \
114 jq mpv ncdu transmission-cli yt-dlp cowsay \
115 pacman-contrib pavucontrol rsync ripgrep python-pywal \
116 imlib2 zip unzip wget pcmanfm yazi stow fuzzel\
117 fzf man-db pipewire pipewire-pulse xcompmgr pamixer \
118 sxhkd imagemagick network-manager git dash arc-gtk-theme papirus-icon-theme \
119 neovim lua xdg-user-dirs mpd ncmpcpp unclutter \
120 zsh zsh-autosuggestions zathura zathura-pdf-poppler
121
122```
123
12417. Enable networkmanager
125```
126# network manager
127systemctl enable NetworkManager.service
128```
129
13018. set shell
131```
132rm /bin/sh
133ln -s dash /bin/sh
134```
135
13619. Set user permissions
137```
138echo "%wheel ALL=(ALL:ALL) ALL" >> /etc/sudoers
139```
140
14120. Create user
142```
143useradd -m -G wheel -s /bin/zsh $username
144passwd $username
145```
146
14721. Setup dotfiles
148```
149cd $HOME
150git clone git@github.com:krolyxon/dotfiles.git ~/.dotfiles/
151cd ~/.dotfiles; stow .
152```
153
15422. nsxiv: image viewer
155```
156git clone --depth=1 git@github.com:krolyxon/nsxiv.git ~/.local/src/nsxiv
157sudo make -C ~/.local/src/nsxiv install
158```
159
16023. nvim: Text editor
161```
162git clone --depth=1 git@github.com:krolyxon/nvim.git ~/.config/nvim
163```
164
16524. paru: AUR helper
166```
167git clone https://aur.archlinux.org/paru-bin.git && cd paru-bin && makepkg -sri && cd .. && rm -rf paru-bin
168paru -S --noconfirm htop-vim zsh-fast-syntax-highlighting-git keyd-git zen-browser-bin
169```
170
17125. set zsh as default shell
172```
173chsh -s $(which zsh)
174```