Set BIOS to UEFI
-
timedatectl *fdisk -l
-
lsblk
-
cfdisk /dev/nvme1n1
g = gpt disk label nvme1n1 259:5 0 1.8T 0 disk ├─nvme1n1p1 259:6 0 1G 0 EFI System ├─nvme1n1p2 259:7 0 4G 0 Swap └─nvme1n1p3 259:8 0 1.8T 0 Linux Filesystem
-
mkfs.fat -F 32 /dev/nvme1n1p1
-
mkswap /dev/nvme1n1p2
-
mkfs.ext4 /dev/nvme1n1p3
-
mount /dev/nvme1n1p3 /mnt
-
skip this: mount --mkdir /dev/nvme1n1p1 /mnt/boot
-
swapon /dev/nvme1n1p2
Device Start End Sectors Size Type /dev/nvme1n1p1 2048 2099199 2097152 1G EFI System /dev/nvme1n1p2 2099200 10487807 8388608 4G Linux swap /dev/nvme1n1p3 10487808 3907028991 3896541184 1.8T Linux filesystem
-
pacstrap -K /mnt base linux linux-firmware sudo neovim openssh networkmanager sof-firmware man-db man-pages texinfo curl git
-
genfstab -U /mnt >> /mnt/etc/fstab
-
arch-chroot /mnt
-
ln -sf /usr/share/zoneinfo/America/New_York /etc/localtime
-
locale-gen
-
echo "LANG=en_US.UTF-8" > /etc/locale.conf
-
echo "archer" > /etc/hostname
-
systemctl enable NetworkManager
-
systemctl enable sshd
-
passwd
-
useradd -m -G wheel allen
-
passwd allen
-
EDITOR=nvim visudo # Uncomment %wheel ALL=(ALL) NOPASSWD: ALL
-
pacman -Sy grub efibootmgr os-prober mtools
-
mkdir /boot/efi
-
mount /dev/nvme1n1p1 /boot/efi
-
grub-install --target=x86_64-efi --bootloader-id=Archer-Grub --efi-directory=/boot/EFI
-
grub-mkconfig -o /boot/grub/grub.cfg
/boot/vmlinux-linux /boot/initramfs-linux.img /boot/initramfs-linux-fallback.img /boot/grub/{fonts,locale,themes,x86_64-efi,grub.sfg,grubenv}/ /boot/EFI/{IDNAME}/grubx64.efi
-
exit
-
unmount -R /mnt
-
reboot
Creating a new initramfs is usually not required, because mkinitcpio was run on installation of the kernel package with pacstrap
- pacman -S linux # Installs kernal (vmlinuz-linux)
- mkinitcpio -P # Creates boot ramdisk (initramfs-linux.img)
Bootstrap from another host:
-
scp -rp Sync .ssh archer:
-
ssh archer
-
mkdir logs etc www src bin tmp Downloads Desktop Documents
-
sudo pacman -Sy zsh rust node python-pip python-pynvim tmux base-devel
-
sudo pacman -Sy fzf exa ripgrep curl git htop fd dog bat lsd dust duf jq sd gping procs httpie
-
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
-
rm .zshrc && ln -s Sync/dot-files/.zshrc
-
ln -s Sync/dot-files/.environment also link .gitconfig .gitmessage .irbrc .tmux.conf .gemrc
-
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
-
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
-
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
https://www.lunarvim.org/docs/installation
-
sudo pacman -Sy fzf python-pynvim make LV_BRANCH='release-1.3/neovim-0.9' bash <(curl -s https://raw.githubusercontent.com/LunarVim/LunarVim/release-1.3/neovim-0.9/utils/installer/install.sh)
-
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
-
tmux + I (capital i, as in Install) to fetch the plugin.
https://wiki.archlinux.org/title/Arch_User_Repository#Installing_and_upgrading_packages https://aur.archlinux.org/
-
cd
-
mkdir AUR
-
cd AUR
-
git clone https://aur.archlinux.org/rbenv.git
-
cd rbenv
-
git pull # to upgrade
-
cat PKGBUILD # See what it does
-
makepkg -i # Make + install makepkg sudo pacman -U *.zst # May have to choose one
-
git clean -dfx # like make clean
-
https://aur.archlinux.org/ruby-build.git # not ruby-install ;-)
The yay package installs other AUR packages. Install it first, then:
- yay -S packagenames...
-
lspci -k | grep -A 2 -E "(VGA|3D)" 01:00.0 VGA compatible controller: NVIDIA Corporation GA104 [GeForce RTX 3060] (rev a1) Subsystem: Micro-Star International Co., Ltd. [MSI] GA104 [GeForce RTX 3060] Kernel driver in use: nouveau
-
Nvidia site reports driver version 535.146.02
-
Nouveau: NV170 GeForce RTX 3060, Nvidia 3D codename Ampere
-
NV176 (GA106) GeForce RTX (3050, 3060)
-
pacman -S nvidia nvidia-utils nvidia-settings cuda cudnn nvidia-cuda-toolkit
The nvidia package adds a module to the kernel, which might freak out grub. If so, check EFI mount, reinstall linux (kernel) package, and mkinitcpio -P
-
sudo pacman -S ttf-meslo-nerd
-
sudo pacman -S noto-fonts-cjk noto-fonts-emoji noto-fonts
-
sudo pacman -S gnu-free-fonts ttf-bitstream-vera ttf-croscore ttf-dejavu ttf-droid ttf-ibm-plex ttf-liberation
-
sudo pacman -S sddm
-
sudo systemctl enable sddm
-
sudo pacman -S plasma konsole dolphin ark kwrite kcalc spectacle partitionmanager packagekit-qt5
-
sudo pacman -S alsa-utils bluez bluez-utils
-
sudo systemctl enable bluetooth.service