installing arch
August 12, 2021
installation procedure
1. boot to iso
2. partition disks
fdisk -l
to identify diskfdisk /dev/sdX
orfdisk /dev/nvmeXXX
- create partitions
- efi partition, +512M as #1 EFI System type
- root partition, +40G as #23 Linux x86_64
- home partition, remaining capacity as Linux Filesystem
3. format partitions
- efi partition
mkfs.fat -F32 /dev/sda1
- root and home
mkfs.ext4 /dev/sdaX
4. networking
- wired should already work
- wifi
wifi-menu
5. update system and install reflector, update reflector
$ pacman -Syy
$ pacman -S reflector
# backup mirrorlist
$ cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak
# update mirrorlist
$ reflector -c "US" -f 12 -l 10 -n 12 --save /etc/pacman.d/mirrorlist
6. mount partitions
# mkdirs
$ mkdir -pv /mnt/home /mnt/boot/efi
# mount partitions
$ mount /dev/sda2 /mnt # root partition to /mnt
$ mount /dev/sda1 /mnt/boot/efi # efi partition to /mnt/boot/efi
$ mount /dev/sda3 /mnt/home # home partition to /mnt/home
7. install arch system
$ pacstrap /mnt base linux linux-firmware vim
8. generate fstab
genfstab -U /mnt >> /mnt/etc/fstab
9. arch-chroot and set up system
# enter system as root
$ arch-chroot /mnt
# timezone
$ timedatectl set-timezone America/Chicago
# locale
$ vim /etc/local.gen # uncomment locale en_US-UTF.8
$ echo LANG=en_US-UTF.8 > /etc/locale/conf
$ export LANG=en_US-UTF.8
# hosts
$ echo myarch > /etc/hostname # customize hostname for myarch
$ vim /etc/hosts
# ADD HOSTS
127.0.0.1 localhost
::1 localhost
127.0.1.1 myarch #same as hostname
$ passwd # set root password
# update pacman.conf
$ vim /etc/pacman.conf
# add ILoveCandy to the options section
[Options]
...
ILoveCandy
# uncomment multilib section
[multilib]
Include=/etc/pacman.d/mirrorlist
10. install grub
$ pacman -S grub efibootmgr
$ grub-install --target=x86_64-efi --bootloader-id=GRUB --efi-directory=/boot/efi
$ grub-mkconfig -o /boot/grub/grub.cfg
11. install desktop
$ pacman -S xorg sddm plasma kde-applications
# if nvidia gpu
$ pacman -S nvidia nvidia-settings nvidia-utils nvidia-dkms lib32-nvidia-utils vulkan-icd-loader lib32-vulkan-icd-loader
# if amd cpu
$ pacman -S amd-ucode
# other utils
$ pacman -S nfs-utils neofetch firefox git base-devel ttf-fira-code ttf-fira-mono ttf-fira-sans ttf-dejavu
12. enable display server, network, config dm
$ systemctl enable sddm
$ systemctl enable NetworkManager
$ vim /usr/lib/sddm/sddm.conf.d/default.conf
# find [Theme] and add 'breeze'
[Theme]
Current=breeze
13. Reboot
# exit arch-chroot
$ exit
$ systemctl reboot
post-install config
install software
-
install aur/yay
$ cd /opt $ sudo git clone https://aur.archlinux.org/yay-git.git $ sudo chown -R gavin:gavin ./yay-git $ cd yay-git $ makepkg -si $ sudo yay -Syu
-
install software pacman
pacman -S steam lutris newsboat mpv youtube-dl jq fzf ueberzug conky thunderbird signal-desktop virtualbox libreoffice-still rsync rclone wget
- steam
- lutris
- newsboat
- mpv
- youtube-dl
- jq fzf ueberzug
- conky
- signal
- thunderbird
- virtualbox
sudo modprobe vboxdrv
sudo vim /etc/modules-load.d/virtualbox.conf
- add
vboxdrv
- add
sudo usermod -aG vboxusers gavin
- https://www.virtualbox.org/ > downloads > extensions > all supported platforms
- open virtualbox, add extension
- libreoffice
- rsync
- rclone
- copy rclone config file
- wget
-
install AUR software yay
yay -S brave-bin vscodium bottom gwe ttf-ms-win10 synology-drive conky openrgb discord_arch_electron mangohud minecraft-launcher slack-desktop
- brave
- codium
- bottom
- conky
- gwe (nvidia)
- synology drive client
- openRGB
pacman -S i2c-tools
- Allowing access to SMBus:
- Load the i2c-dev module:
sudo modprobe i2c-dev
- Load the i2c-dev module:
- Load the i2c driver for your chipset:
- AMD:
modprobe i2c-piix4
- ytfzf
- mangohud
- discord
- minecraft
- slack
-
install wine
$ sudo pacman -S wine-staging giflib lib32-giflib libpng lib32-libpng libldap lib32-libldap gnutls lib32-gnutls mpg123 lib32-mpg123 openal lib32-openal v4l-utils lib32-v4l-utils libpulse lib32-libpulse libgpg-error lib32-libgpg-error alsa-plugins lib32-alsa-plugins alsa-lib lib32-alsa-lib libjpeg-turbo lib32-libjpeg-turbo sqlite lib32-sqlite libxcomposite lib32-libxcomposite libxinerama lib32-libgcrypt libgcrypt lib32-libxinerama ncurses lib32-ncurses opencl-icd-loader lib32-opencl-icd-loader libxslt lib32-libxslt libva lib32-libva gtk3 lib32-gtk3 gst-plugins-base-libs lib32-gst-plugins-base-libs vulkan-icd-loader lib32-vulkan-icd-loader
-
install thinkorswim
yay -S zulu-11-bin
- download installer script from thinkorswim
- run script
-
install ssg
- https://shibby.xyz/install-ssg.html
- dependencies: cpio lowdown
pacman -S cpio
yay -S lowdown
system configs
-
config fonts
yay -S ttf-ubraille ttf-symbola
yay -Rs gnu-free-fonts
fc-cache -fv --really-force
-
copy dotfiles
- alias
- bash prompt
- newsboat config
- ~/.newsboat
- conky
- ~/.config/.conkyrc
- mangohud config
~/.config/MangoHud/MangoHud.conf
/usr/share/doc/mangohud/MangoHud.conf.example
-
config dolphin
- disable zoom slider
- show home directory on startup
- disable folders expandable
-
config konsole
- do not remember window size
- import profile
- location:
~/.local/share/konsole/
- location:
- import colors
- /usr/share/konsole/
sudo cp share/unraid/files/salient/Salient\ OS.colorscheme /usr/share/konsole/
- hide menubar
- hide toolbar
-
thunderbird
~/.thunderbird
replace with backup
-
kde connect
-
create share folders
$ mkdir -pv ~/share/unraid/files ~/share/unraid/backups ~/share/unraid/isos ~/share/unraid/photos ~/share/unraid/downloads ~/share/unraid/sinefiles
-
update fstab with shared drives
-
192.168.50.148:/mnt/user/files /home/gavin/share/unraid/urFiles nfs rw,dev,exec,auto,user,async 0 0
-
ssh keys
customize kde
- global theme - breeze dark
- app style - breeze
- plasma - breeze dark
plasma-apply-desktoptheme breeze-dark
- colors - salient dark
/usr/share/color-schemes/
sudo cp ~/share/unraid/files/salient/SalientDark.colors /usr/share/color-schemes/
plasma-apply-colorscheme SalientDark
- window decorations
- theme breeze
- edit remove circle around close button
- edit shadows 35%
- icons - tela dark/tela circle dark
- cursors - bibata-original-classic
- splash screen - none
- wallpaper
- desktop
- login screen
- lock screen
- compositor - opengl 3.1
- general behavior
- clicking files or folders selects them
- window management
- task switcher: large icons
- window behavior > advanced > window placement > centered
- keyboard shortcuts
- super+t terminal
- super+e dolphin
- super+d desktop
- super+esc lock screen
- super+a show all windows
- toggle present windows current desktop
- remap caps lock to esc
- krunner
- position on screen: center
- panel
- content
- application menu - avalon menu
- icon arch logo
- show desktop
- icons only task manager
- separator
- better inline clock
- separator
- system tray
- application menu - avalon menu
- position: top
- width: 32
- content
- system monitor widgets
- if blank,
pacman -S ksysguard
and reboot
- if blank,
- IMPORT OPTIONS
- install Plasma Customization Saver
- import default.tar.gz
references
its foss
kde sddm not wayland
its foss (kde/wayland)
install yay/aur
install virtualbox on arch
btm font braille
kde-configuration-files
kde config to kwriteconfig.kt
other
packages installed but these failed on a previous install
vulkan-icd-loader
lib32-nvidia-utils
lib32-vulkan-icd-loader
research/future items
- arch disk encryption
- bash vs zsh
pacman -S zsh zsh-completions grml-zsh-config
- arch zsh
- configure zsh
- configure zsh ohmyzsh
- bash vs zsh linuxhint
- bash vs zsh reddit
- benefits of swap
- update kde settings from cli OR through script file
- backup kde settings:
- btm cpu freq
- pass
- disable GRUB boot menu
- add grub boot splash screen
- copy from vim screen in konsole
- IRC/Matrix
- startup: conky
- add .local/bin to PATH