diff --git a/README.md b/README.md index 2a5d703..cc874db 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ $ lsblk **Partition the device using gdisk (assuming /dev/sda).** $ gdisk /dev/sda -Create GPT and EFI-partion. +**Create GPT and EFI-partion.** $ o # _Creates new GPT-partition table._ $ y # _Accept._ $ n # _New partition._ @@ -17,152 +17,159 @@ $ +512M # _512 MB should be plenty for /boot._ $ ef00 # _Mark as EFI._ $ n # _New main partition, accept all the following using "y"._ - Print and check your partitions. +**Print and check your partitions.** $ p -Write partitions to device. +**Write partitions to device.** $ w $ y # _Accept._ -# Encrypt primary partition. +**Encrypt primary partition.** $ cryptsetup -c aes-xts-plain -y -s 512 luksFormat /dev/sda2 $ YES -# Open encrypted partition, map as "root" and create filesystem. +**Open encrypted partition, map as "root" and create filesystem.** $ cryptseup luksOpen /dev/sda2 root $ mkfs.fat -F 32 -n UEFI /dev/sda1 -# -F specifies the type of file allocation tables used (12, 16 or 32 bit). -# -n sets the volume name (label) of the filesystem to "UEFI". +**-F specifies the type of file allocation tables used (12, 16 or 32 bit).** +**-n sets the volume name (label) of the filesystem to "UEFI".** -# Create ext4 filesystem on primary partition. +**Create ext4 filesystem on primary partition.** $ mkfs.ext4 /dev/mapper/root -# Create mountpoints and mount partitions. +**Create mountpoints and mount partitions.** $ mount /dev/mapper/root /mnt $ mkdir /mnt/boot $ mount /dev/sda1 /mnt/boot -# Optionally update mirrorlist using reflector. -# In this case use the latest 10 mirrors from Germany, that have been synchronized within the last 24 hours and sort the by download-rate and write them to the pacman mirrorlist. +**Optionally update mirrorlist using reflector.** +**In this case use the latest 10 mirrors from Germany, that have been synchronized within the last 24 hours and sort the by download-rate and write them to the pacman mirrorlist.** $ reflector --verbose --latest 10 --country Germany --age 24 --sort rate --save /etc/pacman.d/mirrorlist -# Install base system and basic packages (network, editor, sudo). -# The package base-devel is not necessary but recommended. +**Install base system and basic packages (network, editor, sudo).** +**The package base-devel is not necessary but recommended.** $ pacstrap /mnt base base-devel linux linux-firmware networkmanager nano sudo -# Generate fstab. +**Generate fstab.** $ genfstab -Lp /mnt > /mnt/etc/fstab -# -L = Use labels for source identifiers (shortcut for -t LABEL). -# -p Exclude pseudofs mounts (default behavior). +**-L = Use labels for source identifiers (shortcut for -t LABEL).** +**-p Exclude pseudofs mounts (default behavior).** -# Chroot into your installation. +**Chroot into your installation.** $ arch-chroot /mnt -# Set your hostname. +**Set your hostname.** $ echo mycomputer > /etc/hostname -# Generate locale.gen for your preferred language (and preferribly english). +**Generate locale.gen for your preferred language (and preferribly english).** $ nano /etc/locale.gen -# Uncomment your language, e.g. de_DE.UTF-8 UTF-8 (and en_US.UTF-8). +**Uncomment your language, e.g. de_DE.UTF-8 UTF-8 (and en_US.UTF-8).** -# Generate the locale. +**Generate the locale.** $ locale-gen -# Add necessary HOOKS and MODULES. +**Add necessary HOOKS and MODULES.** $ nano /etc/mkinitcpio.conf -# MODULES=(ext4) -# HOOKS=(base udev autodetect modconf block keyboard keymap encrypt filesystems fsck shutdown) +**MODULES=(ext4)** +**HOOKS=(base udev autodetect modconf block keyboard keymap encrypt filesystems fsck shutdown)** -# Create mkinitcpio. +**Create mkinitcpio.** $ mkinitcpio -p linux -# Start NetworkManager for automatic network access on next boot. +**Start NetworkManager for automatic network access on next boot.** $ systemctl enable NetworkManager -# Set a root-password. +**Set a root-password.** $ passwd -# Install systemd-boot bootloader. +**Install systemd-boot bootloader.** $ bootctl install -# Create the bootloader config. +**Create the bootloader config.** $ nano /bootloader/entries/arch.conf -# Add the following: -# title Arch Linux -# linux /vmlinuz-linux -# initrd /initramfs-linux.img -# options cryptdevice=/dev/sda2:root root=/dev/mapper/root rw lang=de init=/usr/lib/systemd/systemd locale=de_DE.UTF-8 +**Add the following:** +``` +title Arch Linux +linux /vmlinuz-linux +initrd /initramfs-linux.img +options cryptdevice=/dev/sda2:root root=/dev/mapper/root rw lang=de init=/usr/lib/systemd/systemd locale=de_DE.UTF-8 +``` -# Create a fallback config. + +**Create a fallback config.** $ cp /boot/loader/entries/arch.conf /boot/loader/entries/arch-fallback.conf -# Edit the fallback config. +**Edit the fallback config.** $ nano /boot/loader/entries/arch-fallback.conf -# Change it to the following: -# title Arch Linux Fallback -# initrd /initramfs-linux-fallback.img +**Change it to the following:** +``` +title Arch Linux Fallback +initrd /initramfs-linux-fallback.img +``` -# Edit loader config. +**Edit loader config.** $ nano /boot/loader/loader.conf -Change it to the following: -# timeout 1 -# default arch.conf +**Change it to the following:** +``` +timeout 1 +default arch.conf +``` -# Exit and reboot +**Exit and reboot.** $ exit $ umount /mnt/boot $ reboot -# Enter encryption-password and login as root. +**Enter encryption-password and login as root.** -# Set the keyboard to your preferred language permantently. +**Set the keyboard to your preferred language permantently.** $ echo KEYMAP=de-latin1-nodeadkeys > /etc/vconsole.conf -# Create a user with a /home-directory. +**Create a user with a /home-directory.** $ useradd -m myusername -# Set password for your user. +**Set password for your user.** $ passwd myusername -# Add myusername to group wheel for sudo access. -$ gpasswd -a myusername wheel +**Add $myusername to group wheel for sudo access.** +$ gpasswd -a $myusername wheel -# Edit sudoers-file for sudo access. +**Edit sudoers-file for sudo access.** $ nano /etc/sudoers -# Uncomment „%wheel ALL=(ALL) ALL“ +**Uncomment „%wheel ALL=(ALL) ALL“-** -# Logout as root. +**Logout as root.** $ exit -# Login as you user. +**Login as you user.** -# Install SDDM and a minimal KDE Plasma. +**Install SDDM and a minimal KDE Plasma.** $ pacman -S sddm sddm-kcm plasma-desktop -# Install KDE terminal for easier installation of packages in Plasma. +**Install KDE terminal for easier installation of packages in Plasma.** $ pacman -S konsole -# Enable and start SDDM to login to Plasma. +**Enable and start SDDM to login to Plasma.** $ systemctl enable sddm $ systemctl start sddm -# Now you are logged in to your Plasma desktop environment and ready to configure and use your Arch Linux. +**Now you are logged in to your Plasma desktop environment and ready to configure and use your Arch Linux.** -# Suggested packages to install. +**Suggested packages to install.** -# microcode (https://wiki.archlinux.org/index.php/Microcode) -# kde-gtk-config (Adds graphical settings for GTK apps.) -# kdeplasma-addons („All kind of addons to improve your Plasma experience.“) -# kscreen (Adds screen section to graphical settings.) -# ksystemlog (Graphical system log viewer) -# partitionmanager (Graphical partition manager) -# plasma-nm (Network manager applet) -# plasma-pa (Audio manager applet) -# powerdevil (Adds energy manager to graphical settings.) -# spectacle (Graphical screenshot tool.) -# systemd-swap (https://wiki.archlinux.org/index.php/swap#systemd-swap) +- microcode (https://wiki.archlinux.org/index.php/Microcode) +- kde-gtk-config (Adds graphical settings for GTK apps.) +- kdeplasma-addons („All kind of addons to improve your Plasma experience.“) +- kscreen (Adds screen section to graphical settings.) +- ksystemlog (Graphical system log viewer) +- partitionmanager (Graphical partition manager) +- plasma-nm (Network manager applet) +- plasma-pa (Audio manager applet) +- powerdevil (Adds energy manager to graphical settings.) +- spectacle (Graphical screenshot tool.) +- systemd-swap (https://wiki.archlinux.org/index.php/swap#systemd-swap)