Štítekjekyll

Picom Compositor

V dalším díle seriálu Tondy Fischera si nainstalujeme kompozitor Picom. Provedeme jeho základní konfiguraci a spouštění. Soustředíme se na praktickou stránku tohoto nástroje a rovněž historii projektu a správnou funkcionalitu.

Co je yshui/Picom?

Picom-Compositor Picom je samostatný kompositor pro Xorg, vhodný pro použití se správci oken (Window Manager), kteří neposkytují kompozici. Picom vznikl jako fork z populárního compton.

paru -S picom-git # git next version (snapshots, rolling)
paru -S picom # released version

Picom není pouze o grafických vychytávkách a animacích

Jeho silnou podporou je kvalitní vsynch, glx mode (gpu rendering) a vyhlazování.

Picom lze konfigurovat zcela minimalisticky pro striktně velmi svižné prostředí až po mnoho desítek grafických features a animací.

Jeho animační schopnosti jsou fakt omezené oproti KWin a dalším DE kompositorům.

Existují několik fork picoms, které se soustředí na skupinu animací, blur efektů a dalších grafických vylepšeních. Podívejte a sledujte toto issue Animation Support.

picom ibhagwan

picom jonaburg

picom dccsillag

Doporučená konfigurace (~/.config/picom/picom.conf)

Minimalistické řešení (vysoce efektivní)

backend = "glx";
fading = false
vsync = true
wintypes:
{
  tooltip = { fade = true; shadow = true; opacity = 0.9; focus = true; full-shadow = false; };
  dock = { shadow = false; }
  dnd = { shadow = false; }
  popup_menu = { opacity = 0.9; }
  dropdown_menu = { opacity = 0.9; }
};

Zlatá střední cesta

backend = "glx";
vsync = true
fading = false
round-borders = 15;
detect-rounded-corners = true;
shadow = true;
# The blur radius for shadows. (default 12)
shadow-radius = 14;
# The left offset for shadows. (default -15)
shadow-offset-x = -7;
# The top offset for shadows. (default -15)
shadow-offset-y = -7;
# The translucency for shadows. (default .75)
shadow-opacity = .5;
# Dim inactive windows. (0.0 - 1.0)
inactive-dim = 0.05;
# Fade windows during opacity changes.
fading = true;
# Opacity change between steps while fading in. (default 0.028).
fade-in-step = 0.056;
# Opacity change between steps while fading out. (default 0.03).
fade-out-step = 0.06;
# Window type settings
wintypes:
{
    tooltip =
    {
        # fade: Fade the particular type of windows.
        fade = true;
        # shadow: Give those windows shadow
        shadow = false;
        # opacity: Default opacity for the type of windows.
        opacity = 0.85;
        # focus: Whether to always consider windows of this type focused.
        focus = true;
    };
};

Spouštění picom v autorun skriptech

Picom nutno správně spouštět ve svých autorun skriptech s možností jeho opětovného spuštění v případě pádu.

run picom --experimental-backends --config $HOME/.config/picom/picom.conf
# run bash function
function run {
  if ! pgrep -f $1 ;
  then
    $@&
  fi
}

Moje doporučení

Používat základní yshui/Picom, který má největší množství oprav, je velmi rychlý a stabilní. Sice zatím v této době neobsahuje blurr efekty, ale rounding cornes již podporovány jsou (pro rounding corners mám ale ještě jiné řešení).

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

Důležité odkazy

Číst dál

Šifrovaná instalace Arch Linux pomocí Calam-Arch-Installer

Úvod

Pro začátečníka může být složité až skoro nemožné Arch Linux nainstalovat a nakonfigurovat podle svých potřeb. Někoho může i instalace v příkazovém řádku odradit. V dnešním návodu si ukážeme, jak nainstalovat Arch Linux pomocí instalátoru Calam-Arch-installer. Tento návod předpokládá,že Arch Linux bude jediným OS v zařízení.

Co získáme instalací

• Plně LUKS šifrovaný oddíl obsahující souborový systém BTRFS s / boot, / root a / home • / a /home jako samostatné dílčí svazky, které umožňují snadnou a úložnou úsporu místa snímků kořenového systému • automatické vytváření snímků (při upgradu systému a každodenním a bootování) • schopnost zavést do funkčního snímku z nabídky grub (automatické vytváření spouštěcích položek) a poté nastavit tento nebo jiný snímek jako nový výchozí systém (z grafického uživatelského rozhraní)

Stažení a příprava instalačního USB

Nejprve si stáhneme ISO Calam-Arch-Installer Obraz zapíšeme na USB disk třeba pomocí nástroje Etcher.Restartujeme počítač a při zavádění systému v BIOSu nastavíme zavádění systému pomocí USB. Pří zavádění z USB se vám ukáže úvodní obrazovka instalátoru

Příprava instalace

Nejdříve je třeba udělat pár maličkostí před instalací našeho nového systému. Změňte výchozí nastavení btrfs calamar pro fstab.Následující krok vynutí, aby calamar přiřadil a používal kompresi na všech instalačních zařízeních btrfs; bez ohledu na to, zda jsou ssd nebo hdd. Použijeme kompresi zstd. Otevřete Terminal,Firefox s naším návodem a zadejte (nebo označte a zkopírujte níže uvedené příkazy pomocí ctrl-c a vložte do terminálu pomocí shift-ctrl-v | vždy můžete kopírovat a vložit všechny řádky zobrazené v jednom bloku najednou)

sudo sed -i 's/compress=lzo/compress=zstd/'
/usr/share/calamares/modules/fstab.conf
sudo sed -i 's/autodefrag/autodefrag,compress=zstd/'
/usr/share/calamares/modules/fstab.conf

Terminál necháme otevřený a můžeme přistoupit k samotné instalaci.

Instalace systému

Instalátor Calam-Arch-Installer je založený na instalačním frameworku Calamares, který používají i jiné linuxové distribuce EndeavourOS, Manjaro, Arcolinux a mnoho dalších. Instalátor nám položí několik otázek. Nejdříve nastavíme jazyk systému.

Nastavíme časové pásmo.

V dalším kroku vybereme požadované rozložení klvesnice

Nyní přejdeme k rozdělení disku.Nejdříve vytvoříme novou tabulku oddílů a jako typ oddílu zvolíme GPT zadáním ok,vytvoříme tabulku.

Dále zvolíme ruční rozdělení disku a vytvoříme oddíl 512MB Fat 32 s přípojným bodem /boot a s příznakem boot. Tímto vytvoříme systémový oddíl EFI.

Na zbytku volného místa vytvoříme souborový systém BTRFS, zaškrtneme šifrování a zvolíme heslo. Přípojný bod pro tento oddíl bude /

V dalším kroku vybereme jaké chceme použít grafické prostředí, ovladače grafické karty a nebo veškeré balíčky pro správu tisku.

V dalším kroku vytvoříme uživatele, heslo pro přihlášení do systému.

Klikneme na další a systém se nám nainstaluje. Po dokončení instalace systém NERESTARTOVAT, ale zadáme ještě několik příkazů. Prvním příkazem vytvoříme odkládací prostor. 8G nahradíme požadovanou velikostí.

swapsize=8G

Po vytvoření oddílu spustíme další příkazy.Stáčí je jen všechny zkopírovat (ctrl+c) a následně vložit do terminálu (ctrl+shift+v)

sudo mkdir /mnt/btrfs
btrfsonluks=`sudo blkid -o device | grep luks`
sudo mount -o subvolid=5 $btrfsonluks /mnt/btrfs
sudo sed -i 's/compress=zstd 0 1/compress=zstd 0 0/' /mnt/btrfs/@/etc/fstab
sudo sed -i 's/compress=zstd 0 2/compress=zstd 0 0/' /mnt/btrfs/@/etc/fstab
sudo btrfs subvolume create /mnt/btrfs/@var-cache-pacman-pkg
fstabstr=`grep "/home" /mnt/btrfs/@/etc/fstab`
fstabstr=${fstabstr//\/home/\/var\/cache\/pacman\/pkg}
fstabstr=${fstabstr//@home/@var-cache-pacman-pkg}
sudo sh -c "echo $fstabstr >> /mnt/btrfs/@/etc/fstab"
sudo btrfs subvolume create /mnt/btrfs/@swap
sudo mkdir /mnt/btrfs/@/swap
sudo sh -c "printf '\n$btrfsonluks /swap
btrfs
subvol=@swap,defaults,compress=no 0 0\n' >> /mnt/btrfs/@/etc/fstab"
sudo truncate -s 0 /mnt/btrfs/@swap/swapfile
sudo chattr +C /mnt/btrfs/@swap/swapfile
sudo btrfs property set /mnt/btrfs/@swap/swapfile compression none
sudo fallocate -l $swapsize /mnt/btrfs/@swap/swapfile
sudo chmod 600 /mnt/btrfs/@swap/swapfile
sudo mkswap /mnt/btrfs/@swap/swapfile
sudo swapon /mnt/btrfs/@swap/swapfile
sudo sh -c "echo '/swap/swapfile none swap defaults 0 0' >>
/mnt/btrfs/@/etc/fstab"
wget https://raw.githubusercontent.com/osandov/osandov-linux/master/scripts/
btrfs_map_physical.c
gcc -O2 -o btrfs_map_physical btrfs_map_physical.c
offset=`sudo ./btrfs_map_physical /mnt/btrfs/@swap/swapfile`
offset_arr=(`echo ${offset}`)
offset_pagesize=(`getconf PAGESIZE`)
offset=$(( offset_arr[25] / offset_pagesize ))
sudo sed -i "s/loglevel=3/loglevel=3 resume_offset=$offset/"
/mnt/btrfs/@/etc/default/grub
sudo sed -i "s#loglevel=3#resume=$btrfsonluks loglevel=3#"
/mnt/btrfs/@/etc/default/grub
sudo sed -i 's/keymap encrypt filesystems/keymap encrypt filesystems resume/'
/mnt/btrfs/@/etc/mkinitcpio.conf
sudo mkdir /mnt/chroot
sudo mount -o compress=zstd,subvol=@ $btrfsonluks /mnt/chroot
efidevice=`sudo blkid -o device -l -t TYPE=vfat`
sudo mount $efidevice /mnt/chroot/boot/efi
sudo arch-chroot /mnt/chroot
sudo pacman --noconfirm -S cronie
sudo systemctl enable cronie.service
sudo grub-mkconfig -o /boot/grub/grub.cfg
sudo mkinitcpio -p linux

Nyní můžeme restartovat počítač.

Nový systém

Po restartu a přihlášení do nového systému, musíme nejdřív nainstalovat pomocníka YAY pro AUR repozitář. V AUR repozitáři se nachází zálohovací program Timeshift.

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

Nyní nainstalujeme program Timeshift a potřebné závislosti.

sudo pacman --noconfirm -Syy &&
yay --noconfirm -S timeshift timeshift-autosnap grub-btrfs

Poté spustíme následující příkazy

sudo cp /etc/timeshift/default.json /etc/timeshift/timeshift.json &&
fs_uuid=`sudo blkid -o device | grep luks` &&
fs_uuid=`sudo blkid -o value -s UUID $fs_uuid` &&
sudo sed -i "s/backup_device_uuid\" : \"/backup_device_uuid\" : \"$fs_uuid/"
/etc/timeshift/timeshift.json &&
fs_uuid=`sudo blkid -o device -l -t TYPE=crypto_LUKS` &&
fs_uuid=`sudo blkid -o value -s UUID $fs_uuid` &&
sudo sed -i "s/parent_device_uuid\" : \"/parent_device_uuid\" : \"$fs_uuid/"
/etc/timeshift/timeshift.json &&
sudo sed -i 's/run" : "true/run" : "false/' /etc/timeshift/timeshift.json &&
sudo sed -i 's/btrfs_mode" : "false/btrfs_mode" : "true/'
/etc/timeshift/timeshift.json &&
sudo sed -i 's/ "include_btrfs_home" : "false",/
"include_btrfs_home_for_backup" : "false",\n "include_btrfs_home_for_restore" :
"false",/' /etc/timeshift/timeshift.json &&
sudo sed -i 's/schedule_daily" : "false/schedule_daily" : "true/'
/etc/timeshift/timeshift.json &&
sudo sed -i 's/schedule_boot" : "false/schedule_boot" : "true/'
/etc/timeshift/timeshift.json &&
sudo sed -i 's/count_boot" : "5/count_boot" : "3/' /etc/timeshift/timeshift.json
sudo timeshift --create --comments "1st"

Omezení maximálního počtu snímků

max_snapshots=6

A jako poslední spustgíme příkazy.

sudo sh -c '
cat > /etc/systemd/system/limit-timeshift-snapshots-update-grub.service $max_snapshots'\` \&\& /usr/bin/grub-mkconfig -o /boot/grub/grub.cfg\"#"
/etc/systemd/system/limit-timeshift-snapshots-update-grub.service &&
sudo systemctl enable limit-timeshift-snapshots-update-grub.service &&
sudo systemctl start limit-timeshift-snapshots-update-grub.service

A je to nyní máte plně šifrovaný systém Arch Linux, s aumaticky vytvořenými snímky. Stačí jen při botování vybrat k jakému snímku se potřebujete vrátit.

Číst dál

Fórum Arch Linux Cz

Dnes bylo spuštěno oficiální fórum české komunity Arch Linuxu v plné a již funkční podobě. Samozřejmě je prozatím prázdné a nějakou dobu potrvá, než se zaplní obsahem, k čemuž doufáme, že přispějete i vy, návštěvníci stránek.

Fórum je zcela přístupné veřejnosti a pro prohlížení není třeba se registrovat. Pokud se zaregistrujete, můžete na fórum přispívat a pomáhat tak vylepšit jeho obsah. Registrace je zcela bezplatná a velmi rychlá.

Číst dál

Pacman a AUR pomocníci

V dalším díle seriálu Tondy Fischera o Arch LInuxu, se seznámíme se správci balíčku pro Arch Linux a ukážeme si tripy a triky pro pacmana. Podíváme se na AUR repozitář a o používání AUR pomocníků. Na video se můžete podívat na Youtube autora , nebo našem PeerTube kanále.

Pacman

První krůčky

Pacman-Arch-Wiki Správce balíků pacman je jednou z hlavních charakteristických vlastností Arch Linuxu. Kombinuje jednoduchý binární formát balíčku se snadno použitelným sestavovacím systémem (build system). Cílem pacmanu je umožnit snadnou správu balíčků, ať už jsou z oficiálních úložišť, nebo z vlastních sestavení uživatele.

Pacman udržuje systém aktuální synchronizací seznamů balíků s hlavním serverem. Tento model server/klient také umožňuje uživateli stahovat/instalovat balíčky jednoduchým příkazem, doplněný o všechny požadované závislosti.

Pacman je napsán v programovacím jazyce C a používá BSD tar formát pro balení.

sudo pacman -S awesome ## install package/meta-package
sudo pacman -Syu ## System update
sudo pacman -Syy ## sync database
pacman -Ss awesome ## search package with text 'gnome'
pacman -Qs awesome ## search installed packages
pacman -Si plasma-meta ## display extensive information
pacman -Qii awesome ## info + list of backup files
pacman -Qdt ## list packages no longer reqs (orphans)
sudo pacman -Sc ## clear packages in cached packages
sudo pacman -Scc ## all files in cache, strong aggresive, nothing leave in cache
sudo pacman -U /path/to/package/package_name-version.pkg.tar.zst #@ install local pckage, from AUR
sudo pacman -S --asdeps unzip ## install as dependency, can be removed as orphans
sudo pacman -Qe mc ## list version if it is explicitly installed
sudo pacman -D --asdeps unzip ## change the status to deps
sudo pacman -D --asexplicit unzip
sudo pacman -F pacman ## search files which are containing by package
sudo pacman --needed base-devel ## install if necessary
pactree awesome ## tree of depended packages

Pacman Configuration /etc/pacman.conf

Moje nastavení s barvami, přehlednou tabulkou stažení balíčků, opravodovým pacmanem a paralelním stahováním.

Color
CheckSpace
VerbosePkgLists
ILoveCandy
ParallelDownloads = 5

Bezpečnost a gpg podepisování: SigLevel = Required DatabaseOptional Pacman podporuje podpisy balíčků, které do balíků přidávají další vrstvu zabezpečení. Výchozí konfigurace, SigLevel = Required DatabaseOptional, umožňuje ověření podpisu pro všechny balíčky na globální úrovni.

Nikdy nepoužívejte SigLevel = Never (jen zcela v případě velké nouze, nebo člověka, kterého skutečně znáte a jeho závislost nelze obnovit kvůli nemoci například.)

Pacman Repositories multilib, extra, community a úrověň testing

Může se také stát, že úložiště obsahující balíček není ve vašem systému povoleno, např. Balíček může být v multilib úložišti, ale multilib není povolen ve vašem pacman.conf. Nutno povolit.

Můžete se stát i testerem pro Arch. Zapnout balíčky s -testing. Nutno pak ale updatovat celý systém, není jednoduchá změna! Pozor.

AUR (Arch User Repository)

Arch User Repository (AUR) je komunitní úložiště pro uživatele Arch. Obsahuje popisy balíků ( PKGBUILDs ), které vám umožňují sestavit balíček ze zdroje pomocí makepkg a poté jej nainstalovat pomocí pacman. AUR byla vytvořena za účelem organizace a sdílení nových balíčků z komunity a za účelem urychlení začlenění oblíbených balíčků do úložiště komunity.

Mnoho nových balíčků, které vstupují do oficiálních úložišť, začíná v AUR. V AUR mohou uživatelé přispívat svými vlastními sestavami balíků (PKGBUILDa 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 techniku ​​balení - může být vložen do komunitního úložiště (přímo přístupného pacmanem nebo abs).

Varování: Balíčky AUR jsou uživatelsky vytvářený obsah. Tyto PKGBUILDjsou zcela neoficiální a nebyli důkladně prověřeni. Jakékoli použití poskytnutých souborů je na vaše vlastní riziko.

Yay, Paru, Aura pomocníci AUR

  • JGuer/yay - Yet Another Yogurt - An AUR Helper napsán v Go
  • Morganamilo/paru - Paru AUR pomocník s mnoho features a minimální interakcí. Napsán Rust.
  • fosskers/aura - Nadstandardní služby, zajímavé funkce, downgrades a zabezpečení upgrades a snapshots ovládání. Napsáno v Haskell.

Paru instalace

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

Paru příklady užití

  • **paru ** - Interaktivně vyhledávejte a instalujte .
  • **paru** - Alias ​​pro paru -Syu.
  • **paru -S ** - Nainstalujte si konkrétní balíček.
  • paru -Sua - Upgradujte balíčky AUR.
  • **paru -Qua** - Vytiskněte dostupné aktualizace AUR.
  • **paru -G ** - Stáhněte si PKGBUILD a související soubory z .
  • paru -Gp - Vytiskněte PKGBUILD z .
  • paru -Gc - Vytiskněte si komentáře AUR pro .
  • paru --gendb - Vytvořte databázi devel pro sledování *-gitbalíčky. To je potřeba pouze tehdy, když zpočátku používáte paru.
  • **paru -Ui** - Vytvořte a nainstalujte PKGBUILD do aktuálního adresáře.

Aura instalace

git clone https://aur.archlinux.org/aura-bin.git
cd aura-bin
makepkg
sudo pacman -U 

Aura zajímavé příkazy

  • **aura -Pa** - Analyzujte všechny místně nainstalované balíčky AUR.
  • **aura -O** - Zobrazit osiřelé balíčky.
  • **aura -L** - Zobrazit protokol Pacman.
  • **aura -Li ** - Zobrazit historii instalace / upgradu balíčku.
  • aura -Cc - Odstranit všechny kromě nejnovější nverze každého balíčku uloženého v mezipaměti.
  • aura -C - Downgrade balíčku.
  • **aura -Cv** - Odstranit všechny /var/cache/aura/vcsmezipaměti
  • **aura -B** - Uložte záznam JSON všech nainstalovaných balíčků.
  • **aura -Br** - Obnovte uložený záznam. Podle potřeby se vrací zpět a odinstaluje.
  • **aura -Bc ** - Odstranit všechny kromě nejnovější nuložené státy.
  • **aura -Bl** - Zobrazit všechny uložené názvy souborů stavu balíčku.
  • **aura -Au** - Upgradujte všechny nainstalované balíčky AUR.
  • aura -Akuax - Oblíbený autor (upgrady, odstranění makedeps, ukazuje rozdíly PKGBUILD, ukazuje postup)
  • **aura -As ** - Hledejte AUR pomocí regexu.
  • **aura -Ap ** - Zobrazit balíček PKGBUILD.
  • **aura -Ad ** - Seznam závislostí balíčku.

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

Důležité odkazy

Číst dál

Quad Boot

Další díl seriálu o instalaci a nastavení Arch Linuxu od Tondy Fishera, obsahuje plné nastavení reálného desktopu se čtyřmi operačními systémy s výběrovým dialogem pro zvolení, který systém si při spuštění počítače vybrat. Jedná se tedy o quad booting (dual booting je pouze pro dva operační systémy). Video je již i na našem PeerTube kanále.

Diskový správce Gnome-Disks

sudo pacman -S gnome-disk-utility
  • Moutovat diskové oddíly pomocí ikony ozubených kol, zvolit Edit Mount Options.
  • Nastavit Display Name a Mount Point /mnt/displayName.
  • Ověřit, že změny se správně zapsaly do /etc/fstab.

Polkit-Gnome

sudo pacman -S polkit-gnome

Spustit jej v autorun.sh skriptu.

Support NTFS (Windows)

sudo pacman -S ntfs-3g

Podpora NTFS a mountování win partitions.

Grub Editace

sudo nvim /etc/default/grub
# V Grub přidat parameter GRUB_DISABLE_OS_PROBER=false
sudo grub-mkconfig -o /etc/grub/grub.cfg

sudo pacman -S grub-customizer

Grub rozlišení a themes

Konfigurace vhodného rozlišení

  • restart, v grub tabulce stisk C, cmd grub line napsat videoinfo, opsat si nejlepší rozlišení, např. 2048x1080x32.
  • Edit opět stejně grub soubor v /etc/default/grub, nastavit v GRUB_GFXMODE=2048x1080x32,auto vaše rozlišení, ne moje. A nezapomenout přegenerovat grub přes grub-mkconfig!

Instalace Grub2 Themes

cd ~/git/github
git clone https://github.com/vinceliuice/grub2-themes.git
sudo ./install.sh -t vimix -s 2k

https://www.youtube.com/watch?v=wj06-4Y7Pkk

Důležité odkazy

Číst dál