Štítekjekyll

Instalace Xorg a window manageru DWM

Další díl seriálu o Arch Linuxu od Tondy Fischera. Tento 4. díl pojednává o instalaci Xorg a dynamického tiling window manageru DWM. Provede Vás postupně základní instalací v OS Arch Linux a seznámí se základním ovládáním prostředí. Ve finále budete mít systém nachystán pro svou běžnou práci a budete se moci pustit do studia systému

Instalace Xorg a vysvětlení .xinitrc

sudo pacman -S xorg xorg-xinit xterm
startx

Zobrazí se 3x xterms, vlevo je hlavní xterm. Pokud jej ukončíte zkratkou ctrl+d, dojde k ukončení celého xorg.

Instalace a kompilace DWM ručně

DWM má domov zde https://suckless.org/

DWM kompilace a instalace

sudo pacman -S git
mkdir -p ~/git/github
cd ~/git/github
git clone git://git.suckless.org/dwm
git clone git://git.suckless.org/st
git clone git://git.suckless.org/dmenu
cd dwm ## toto proved pro kazdy adresar dwm, st a dmenu
sudo make clean install ## postupne nainstalovat dwm, st, dmenu

Konfigurace .xinitrc a Xresources

Zde již si připravíme .xinitrc komplexnější pro testy a spoštění WM (window managers) a DE (desktop environements) používaných v celém seriálu. Stažení provedeme z mých dofiles následujícím postupem.

cd ~/git/github
git clone https://github.com/raven2cz/dotfiles dotfiles-raven2cz
cd dotfiles-raven2cz
cp .xinitrc ~
cp .Xresources ~
nvim ~/.xinitrc ## zakomentovat setxkbmap -layout "us,cz" - prekryva hodne kl.zkratek s DWM!

Spuštění DWM

startx ~/.xinitrc dwm

První Bash Script

Ukázka prvního jednoduchého bash skriptu pro zobrazení hodin vpravo nahoře v xsetroot sekci.

nvim ~/.local/bin/dwm_time
#!/bin/bash
while true; do
   xsetroot -name "$( date +"%F %R" )"
   sleep 1m    # Update time every minute
done

chmod ug+x ~/.local/bin/dwm_time

Nutno přidat $HOME/.local/bin do /etc/profile Přidejte se sudo do tohoto souboru řádku: appendpath '/home/box/.local/bin'= za ostatní již existující a soubor uložte. Nutný restart nebo zavolání z daného terminálu příkaz =source /etc/profile.

První Wallpaper

Provede alespoň základní nastavení pozadí, jsme suckless, víc zatím dělat nebudeme, záleží nám na efektivě a minimalismu. Stáhněte si své oblíbené obrázky pomocí firefox nebo přes /mnt sdílený adresář. Pro ostatní mohu nabídnout sbírku mých public wallpapers pro demonstraci.

cd ~/git/github
git clone https://github.com/raven2cz/public-wallpapers

Použijeme prohlížeč obrázků feh pro nastavení pozadí. Arch-Wiki FEH

sudo pacman -S feh
feh --bg-scale ~/git/github/public-wallpapers/00007-minimal-forest.jpg

Později si ukážeme, jak tyto změny zahrnout do našeho autorun skriptu při spuštění DWM.

DWM-Flexipatch

Zjednodušená možnost patches pro DWM pomocí flexipatch project.

  • https://github.com/bakkeby/dwm-flexipatch Nutné provést git clone repository. Editovat soubor config.def.h. na hodnotu 1 nastavit patches, které chcete aktivovat, uložit soubor. Na závěř standardně zavolat sudo make install, zkompiluje dwm a umístí jej do spouštěcích adresářů.

https://www.youtube.com/watch?v=Z9grvRgriX4

Důležité odkazy

Číst dál

Jak nainstalovat AUR pomocníka yay

Upozornění: Instalace balíčků z AUR není podporována Arch Linuxem. Instalace z něj může způsobit selhání systému.

Co je AUR

Arch User Repository (AUR) je komunitou řízené úložiště pro uživatele Arch Linuxu. Obsahuje popisy balíčků ( PKGBUILDs ), které vám umožňují sestavit balíček ze zdrojového kódu pomocí makepkg a poté jej nainstalovat přes pacman . AUR byl vytvořen, aby organizoval a sdílel nové balíčky z komunity a pomohl urychlit začlenění oblíbených balíčků do komunitního úložiště .

Velký počet nových balíčků, které vstupují do oficiálních repozitářů, začíná v AUR. V AUR mohou uživatelé přispívat vlastním sestavením balíčků (PKGBUILD a související soubory).

Komunita AUR má možnost hlasovat pro balíčky v AUR. Pokud se balíček stane dostatečně populárním – za předpokladu, že má kompatibilní licenci a dobrou balicí techniku ​​– může být vložen do komunitního úložiště.

Na rozdíl od balíčků v repozitáři Archu jsou balíčky AUR spravovány uživateli Archu a většina to dělá jako koníčka vedle svého běžného života. Aktualizace balíčků proto nejsou rozsáhle testovány a mohou způsobit potíže nereagující aplikací nebo dokonce způsobit poškození systému, takže jejich použití je na vaši vlastní odpovědnost.

Co je yay

Yay je zkratka pro 'Yet Another Yogurt'. Technicky jde o pacmana a pomocníka AUR napsaný v programovacích jazycích Go . Je to nejpopulárnější Arch User Repository (AUR) pomocník. S Yay můžete využít výhody obrovského Arch User Repository balíčků a snadno zkompilovat a nainstalovat software.

V podstatě automatizuje mnoho úloh správy balíčků, jako je vyhledávání, řeší závislosti za běhu, kompiluje a sestavuje balíčky a samozřejmě publikuje vaše vlastní balíčky pro AUR.

Nainstalujte yay v Arch Linuxu

Požadavky

Tyto kroky vyžadují base-devel ke kompilaci a instalaci balíček Otevřete terminál a spusťte níže uvedené příkazy. Po zobrazení výzvy zadejte heslo správce.

sudo pacman -S --needed git base-devel
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si

Instalace balíčků

Chcete-li nainstalovat balíčky pomocí yay, můžete použít tento příkaz.

yay -S název_balíčku

Poté uvidíte očíslovaný seznam názvů balíčků v nainstalovaných úložištích vašeho systému. Jednoduše zadejte číslo verze balíčku, kterou chcete nainstalovat, a yay ji nainstaluje do vašeho systému.

Balíčky můžete také vyhledávat jednoduchým zadáním:

yay název_balíčku

Pokud chcete další informace o balíčku, můžete zadat:

yay -Si název_balíčku

Yay může také aktualizovat balíčky Pacman a AUR najednou pomocí tohoto příkazu:

yay -Syu
Číst dál

Virtualbox Arch Linux nastavení

Další díl od raven2cz pojednává o nastavení konzolového rozlišení a fontu. Dále pak nastavení Virtualbox Services pro dynamickou změnu rozlišení, sdílenou schránku a sdílení souborové složky. Doplňuje některé důležité body z minulého dílu. Po tomto díle budete mít Virtualbox Arch Image zcela připraven pro všechny ostatní další práce s Arch Linuxem.

Nastavení TTY rozlišení a fontu

Nastavení rozlišení pro TTY framebuffer

sudo nvim /etc/default/grub (zkontrolujte a změňte následující řádky)
GRUB_GFXMODE=1920x1080x32,auto
GRUB_GFXPAYLOAD_LINUX=keep

přegenerovat grub default do /boot/grub/grub.cfg příkazem z instalace:
sudo grub-mkconfig -o /boot/grub/grub.cfg
poweroff
(znovu spusťte virtualbox arch image)

Nyní máme již v pořádku nastaven framebuffer na fullhd, ale font je příliš malý (pokud máte velké rozlišení obrazovky).

Nastavení TTY fontu

sudo pacman -S terminus-font
setfont ter-132n  (změna je pouze dočasná, pro trvale zapsat do souboru)
sudo nvim /etc/vconsole.conf (zapište následující řádky)
FONT=ter-132n
FONT_MAP=8859-2
poweroff (reboot u vbox moc nefunguje)

Virtualbox Guest Utils

sudo pacman -S virtualbox-guest-utils
sudo systemctl status vboxservice.service
VBoxClient-all  (aktivovat všechny služby virtualboxu)
sudo systemctl restart vboxservice.service
sudo systemctl status vboxservice.service
poweroff

https://www.youtube.com/watch?v=LAN3lbgDWP4&t=209s

Důležité odkazy

Číst dál

Jak na VirtualBox

Pro všechny co chtějí zatím jen vyzkoušet instalaci Arch Linuxu připravil raven2cz video návod jak použit virtualizaci a připravit vše pro instalaci Arch Linuxu.

Video je již na našem PeerTube kanále a nebo video můžete zhlédnout na Youtube autora

https://youtu.be/LOMXEppGMXU

Arch Linux Instalace

Velké poděkování patří uživateli raven2cz, který připravil tento skvělý návod včetně videa. Video je již nahráno na našem PeerTube kanále.

Příprava zařízení pro instalaci

Stažení ISO a vytvoření BOOT USB disku

Stažení ArchLinux ISO, ve Win použít Rufus software (portable) na flash disk. V Linuxu použít dd command.

Příprava partitions na cílovém disku

Zjistit disky a souborové systémy fdisk -l, pak cfdisk /dev/, zkontroluj kterou partition přesně použít pro umístění root adresáře, popř. domácího adresáře; např. pro nvmeXn1 bude nvmeXn1p2 nebo p3 apod. Pro EFI partition použít alespoň +256M parameter; nastav pro ni partition type to EFI System (type 1), pro root partition / nastavit Linux system.

DŮLEŽITÉ: Návod používá dnes již standardní UEFI. Pokud testuje Arch dle tohoto seriálu v VirtualBox. Je nutné na záložce Systém VM označit checkbox EFI. Aby bylo možné používat EFI pro boot systému, jinak nepůjde instalovat bootloader.

Vytvoření souborových systémů

Formát diskových oddílů

Zvolení formátu pro diskové oddíly: MBR nebo GPT. Pro GPT nutno UEFI a 64bit OS. Již pro nové stanice s novým HW doporučuji GPT a to s dual boot pro Win10/11 + Linux.

Formátování diskových oddílů

Formátování EFI partition fat, root partition formátuji ext4.

mkfs.fat -F32 /dev/sda1
mkfs.ext4 /dev/sda2

mkswap /dev/sdxY
swapon /dev/sdxY

Internetové připojení

Wifi

Podívejte se na IWD-iwctl.

iwctl
[iwd]# device list -> opsat si označení svého wifi zařízení
[iwd]# station  get-networks -> opsat si síť, kterou potřebujete pro připojení
[iwd]# station  connect  -> připojit se ke zvolené síti a zadat heslo

druha moznost, pokud již informace máte předem zjištěné:
iwctl --passphrase  station  connect 

ping archlinux.org -> otestovaní připojení

Ethernet

Pouze otestovat připojení, zda internet je k dosažení.

ping archlinux.org

Výběr Arch Mirrors

Výběr nejbližších a rychlých zrcadel balíčků archu.

Nejprve update, stažení skriptu reflector a záloha originální konfigurace.

pacman -Syy
pacman -S reflector
cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak

Výběr země k nalezení nejbližších bodů připojení: US, CZ, DE atd.

reflector -c "CZ" -f 12 -l 10 -n 12 --save /etc/pacman.d/mirrorlist

Virtualbox tty rozlišení při instalaci

pacman -S fbset
fbset -g 2048 1080 2048 1080 32

Instalace základního systému (Base)

Připojení (mountování) naformátované partition připravené pro root systému

mount /dev/sda2 /mnt

Preferuji instalaci aktuálního kernelu (bez speciálních úprav a zen úprav). Bez nutnosti instalace LTS kernelu (Long Term Support). Balík jádra a dalších důležitých souvisejících nástrojů je označen linux

Dále doporučuji nainstalovat vhodný textový editor pro úpravu konfiguračních souborů. V mém případě, co bude prezentováno je textový editor neovim, který spouštíte příkazem nvim.

pacstrap /mnt base base-devel linux linux-headers linux-firmware neovim nano

Pro úplnost ještě uvedu instalaci s možností druhého LTS kernelu. Pro základní desktop toto není nutné. V případě problémů je možné kdykoliv doinstalovat, nebo zvolit zen-kernel.

pacstrap /mnt base base-devel linux linux-headers linux-firmware linux-lts linux-lts-headers neovim nano

Konfigurace nainstalovaného Arch systému

Generovat fstab soubor pro připojení diskových oddílů a služeb při spuštění systému. Přepínač -U je vhodný pro ukládání UUID disků, aby bylo možné jednoduše disky přehazovat a přidávat!

genfstab -U /mnt >> /mnt/etc/fstab

CHROOT

Vstupte do svého nového systému pomocí chroot.

DÚLEŽITÉ: Tento příkaz, kterému předchází příkaz mount pro root partition, je velmi užitečný pro opravu systému, reinstalace systému, opravy chyb, popřípadě volání příkazů, které vyžadují odpojený disk. USB klíčenka tak může kdykoliv sloužit pro jednoduché pořešení všech problemů. Systém se tak jednoduše stává nezničitelný.

arch-chroot /mnt

Nastavení času a timezone

Pozor na tento bod. Je potřeba jej udělat pečlivě, dle mého postupu.

timedatectl list-timezones
timedatectl set-timezone Europe/Prague
ln -sf /usr/share/zoneinfo/Europe/Prague /etc/localtime
hwclock --systohc    (vygeneruje důležitý /etc/adjtime)

Nastavení Lokalizace

Doporučuji si ponechat US lokalizaci. V češtině potom používat určité množiny programů a nástrojů, které jsou pro češtinu vhodné. Podobně postupují i programátoři, kteří do kódu určitě nepíší české komentáře. Myšlenkově tedy mějte oddělený jazyk pro konfigurace a jazyk pro GUI.

Editujte soubor /etc/locale.gen obsahující všechny dostupné lokalizace. odkomentujte potřebné lokalizace. V našem případě odkomentujte en_US.UTF-8 UTF-8

Nyní již můžete generovat lokalizační soubory a nakonfigurovat locale.conf Pokud tento krok uděláte špatně, budete mít velké problémy v mnoha programech a terminálových aplikacích, proto si pečlivě zkontrolujte následující příkazy.

locale-gen
echo LANG=en_US.UTF-8 > /etc/locale.conf
export LANG=en_US.UTF-8

Network konfigurace

Zadejte svůj definovaný název počítače do /etc/hostname. V mém případě r7arch. Pozor nesmí obsahovat pomlčky. Dále pak udělejte základní mapování do /etc/hosts.

echo r7arch > /etc/hostname
nvim /etc/hosts (uložte následující řádky)
127.0.0.1 localhost
::1 localhost
127.0.1.1 r7arch

Nastavení root hesla

Nastavte své root heslo pomocí příkazu passwd.

Instalace mého Fundamental Software

Nyní doporučuji nainstalovat naprosto fundamentální software pro přístup a základní obsluhu systému.

pacman -S openssh networkmanager wpa_supplicant netctl
systemctl enable NetworkManager
systemctl enable sshd

pacman -S amd-ucode (pro AMD) pacman -S intel-ucode (pro INTEL)
mkinitcpio -p linux

Instalace ovladačů a Xorg

Pro desktop je nutné nainstalovat správné grafické ovladače a základní basement pro Xorg grafické rozhraní. Toto doporučiji i v případě, že budete chtít používat Wayland s plasma nebo gnome.

AMD grafická karta

pacman -S xorg
pacman -S mesa  (již obsažen v xorg, pouze pro informaci)

NVIDIA grafická karta

Pokud používáte LTS, nezpomeňte zvolit suffix LTS v názvu balíčků.

pacman -S xorg
pacman -S nvidia nvidia-utils
pacman -S nvidia-lts nvidia-utils-lts (varianta pro LTS kernel)

Virtualbox Support

Pokud systém testujete v virtualboxu, doporučuji nainstalovat další balíčky.

pacman -S virtualbox-guest-utils xf86-video-vmware

NVIDIA TTY (nespuštění tty terminálu, černá obrazovka)

Nvidia kartami občas bývá problém, dlouhé diskuze zde vést nebudu. Doporučuji přidat nvidia do KMS. Tento krok můžete udělat/neudělat kdykoliv bude potřeba, pokud ale máte černou obrazovku po restartu systému, budete toto muset udělat hned.

sudo vim /etc/mkinitcpio.conf
(editovat následující dvě řádky v souboru)
MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm)
FILES="/etc/modprobe.d/nvidia.conf

sudo mkinitcpio -P
nvim /etc/modprobe.d/nvidia.conf
(přidat tuto řádku do souboru a uložit)
options nvidia_drm modeset=1

Ještě pro jistotu doporučuji přidat *nvidia-drm.modeset=1 do příkazů při spuštění kernelu v grub.cfg (pokud používáte grub). Viz dokument https://wiki.archlinux.org/index.php/kernel_parameters

Později po restartu systému (teď ještě nerestartovat!) ověřit si správné instalovanou nvidia kartu pomocí příkazu

lspci -vnn | grep VGA

Přidání uživatele Linuxu

Nyní již můžeme přidat naše uživatele linuxu. Nutno v příkazech zaměnit ` za vaše jméno. Já v ukázkách používám jméno uživatele box`.

Velmi užitečnou výhodou v archu je použití již připravených skupin: storage a power. Umožňují jednoduše používat mountování disků a vypínání/restart systému přímo uživatelem, bez nutnosti dalších berliček.

useradd -m -g users -G wheel,storage,power -s /bin/bash 
passwd 
pacman -S sudo
EDITOR=nvim visudo,  (odkomentovat řádku) %wheel ALL=(ALL) ALL

Instalace Bootloader Grub2

Instalace bootloaderu pro možnost dual boot s windows, popř. přepínání s dalšími operačními systémy. Rovněž konfigurace dostupných kernelů pro zavedení a spuštění. Zde je celá řada možností. Uvádím zde jedno z nejstarších řešení.

pacman -S grub efibootmgr dosfstools os-prober mtools

Vytvoření adresáře kde bude mountována EFI partition:

mkdir /boot/efi

Nyní připojíme EFI partition, kterou jsme dříve vytvořili v prvním kroku instalace.

mount /dev/sda1 /boot/efi

Instalace grub2 například takto pro UEFI:

grub-install --target=x86_64-efi --bootloader-id=ARCH --efi-directory=/boot/efi --recheck

V tomto případě potom budeme mít v biosu v nabídce jméno EFI části ARCH (bootloader-id).

Nakonec se musí zavolat natažení konfigurace do grub.cfg

grub-mkconfig -o /boot/grub/grub.cfg

Základní systém je hotov.

Restart základního systému a jeho test

Nejprve regulerně opustě chroot prostředí pomocí exit příkazu nebo klávesovou zkratkou ctrl+d. Volitelně můžete odpojit mountované disky umount -R /mnt.

Nakonec zavolejte:

reboot

Po restartu systému se spustí grub2 a po správném zavedení systému se objeví tty terminál se zadáním uživatelského jména a zvoleného hesla.

Po úspěšném přihlášení jste ve svém novém Arch systému! Vítejte doma 

https://www.youtube.com/watch?v=gpIFaCIB9Cg&t=1170s

Důležité odkazy

Číst dál