Skip to content
This repository was archived by the owner on Jun 12, 2025. It is now read-only.
/ minimal-arch-linux Public archive
forked from gjpin/arch-linux

Simple and opinionated Arch Linux (post-)install scripts customized for the Huawei MateBook D Ryzen

Notifications You must be signed in to change notification settings

lucaato/minimal-arch-linux

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Minimal Arch Linux setup - Install scripts

Adapted to Matebook D (AMD Ryzen 5 2500U model KPL-W0X in 2018)

Install script

  • systemd-boot (with Pacman hook for automatic updates)
  • Automatic login (with systemd)
  • AMD microcode
  • Automatic sort of mirrors list by speed, synced within the last 12 hours and filtered by HTTPS protocol (Reflector with Pacman hook)
  • Hibernate (power key) + suspend (lid close)

Requirements

  • Matebook D KPL-W0X hardware or similar

Partitions

Name Type Mountpoint
nvme0n1 disk
├─nvme0n1p1 part /boot
├─nvme0n1p2 part /
├─nvme0n1p3 part /home

Post install script

  • UFW (deny incoming, allow outgoing)
  • TLP (default settings)
  • base16-material-darker (alacritty, neovim, rofi, waybar, VS Code)
  • swaywm:
    • autostart on tty1
    • waybar: onclick pavucontrol (volume control) and nmtui (ncli network manager)
    • swayidle and swaylock: automatic sleep and lock
    • Alacritty terminal
    • rofi as application launcher
    • slurp and grim for screenshots
  • zsh:
    • powerlevel9k theme
    • History
    • oh-my-zsh
  • GTK theme and icons: Qogir
  • Other applications: sublime-text, chromium, git, openssh, thunar, upower, htop, nnn and a few others

Quick start / Brief install guide

See 'Detailed installation guide' below for the expanded version

  • Increase cowspace partition so that git can be downloaded without before chroot: mount -o remount,size=2G /run/archiso/cowspace
  • Install git: pacman -Sy git
  • Clone repository: git clone https://github.com/luca-a/minimal-arch-linux.git
  • Run install script: bash minimal-arch-linux/1_arch_install.sh

Detailed installation guide

  1. Download and boot into the latest Arch Linux iso
  2. Connect to the internet. If using wifi, you can use wifi-menu to connect to a network
  3. Clear all existing partitions (see below: MISC - How to clear all partitions)
  4. (optional) Give highest priority to the closest mirror to you on /etc/pacman.d/mirrorlist by moving it to the top
  5. wget https://raw.githubusercontent.com/luca-a/minimal-arch-linux/master/1_arch_install.sh
  6. Change the variables at the top of the file (lines 3 through 9)
    • continent_country must have the following format: Zone/SubZone . e.g. Europe/Berlin
    • run timedatectl list-timezones to see full list of zones and subzones
  7. Make the script executable: chmod +x 1_arch_install.sh
  8. Run the script: ./1_arch_install.sh
  9. Reboot into Arch Linux
  10. Connect to wifi with nmtui
  11. wget https://raw.githubusercontent.com/luca-a/minimal-arch-linux/master/2_arch_post_install.sh
  12. Make the script executable: chmod +x 2_arch_post_install.sh
  13. Run the script: ./2_arch_post_install.sh

Misc guides

How to clear all partitions

gdisk /dev/nvme0n1
x
z
y
y

How to setup Github with SSH Key

git config --global user.email "Github external email"
git config --global user.name "Github username"
ssh-keygen -t rsa -b 4096 -C "Github email"
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa
copy SSH key and add to Github (eg. nvim ~/.ssh/id_rsa.pub and copy content)

How to chroot

mkdir -p /mnt/boot
mount /dev/nvme0n1p1 /mnt/boot
cryptsetup luksOpen /dev/nvme0n1p2 cryptoVols
mount /dev/mapper/Arch-root /mnt
arch-chroot /mnt

How to install yay

git clone https://aur.archlinux.org/yay-bin.git
cd yay-bin
yes | makepkg -si
cd ..
rm -rf yay-bin

References

TODO

About

Simple and opinionated Arch Linux (post-)install scripts customized for the Huawei MateBook D Ryzen

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 91.2%
  • CSS 8.8%