Tento návod popisuje, ako zálohovať zoznam nainštalovaných balíčkov na CachyOS a následne ich efektívne obnoviť po reinštalácii systému. Používame paru, keďže ide o AUR helper kompatibilný s Pacmanom.
1. Export zoznamu balíčkov
Pred reinštaláciou je dôležité vytvoriť zoznam všetkých nainštalovaných balíčkov, aby sme ich mohli jednoducho obnoviť.
Spustite nasledujúci príkaz, ktorý vytvorí zoznam explicitne nainštalovaných balíčkov (teda tých, ktoré ste nainštalovali manuálne, nie ako závislosti):
paru -Qqe > pkglist.txt
-Q – výpis zoznamu nainštalovaných balíčkov
-q – zobrazí len názvy balíčkov bez ďalších detailov
-e – exportuje len explicitne nainštalované balíčky (nie ich závislosti)
Výstup sa uloží do súboru pkglist.txt, ktorý si treba zálohovať.
1.2. Záloha všetkých balíčkov vrátane závislostí
Ak chcete zálohovať všetky balíčky, vrátane závislostí, použite:
paru -Qq > pkglist-full.txt
1.3. Záloha balíčkov s verziami
Ak potrebujete obnoviť presné verzie balíčkov:
paru -Q > pkglist-versioned.txt
2. Obnova balíčkov po reinštalácii
Po úspešnej inštalácii CachyOS môžete obnoviť svoje balíčky zo zálohy.
2.1. Obnova explicitne nainštalovaných balíčkov
Ak chcete obnoviť len tie balíčky, ktoré ste manuálne inštalovali:
paru -S --needed - < pkglist.txt
-S – inštaluje balíčky
--needed – preskočí už nainštalované balíčky
- – číta zoznam balíčkov zo štandardného vstupu
< pkglist.txt – presmeruje obsah súboru pkglist.txt ako vstup pre paru -S.
2.2. Obnova všetkých balíčkov (vrátane závislostí)
paru -S --needed - < pkglist-full.txt
2.3. Obnova balíčkov s presnými verziami
Ak chcete obnoviť aj presné verzie balíčkov:
xargs -a pkglist-versioned.txt paru -S --needed
3. Tipy a odporúčania
Zálohujte aj konfigurácie – Zoznam balíčkov nestačí, pretože niektoré programy majú dôležité konfiguračné súbory. Použite rsync alebo tar na zálohu ~/.config/.
Uložte záložné súbory na externé médium – Napríklad na USB disk alebo cloud.
Pred obnovou skontrolujte zoznam balíčkov – Možno obsahuje balíčky, ktoré už nepotrebujete.
Tento návod vám umožní efektívne zálohovať a obnoviť nainštalované balíčky na CachyOS bez zbytočnej manuálnej práce.
Skript - Export a import balíčkov v CachyOS s podporou AUR
1. Úvod
Tento návod popisuje postup exportu a importu balíčkov v CachyOS s podporou AUR balíčkov. Používa sa správca balíčkov paru a exportované balíčky sú rozdelené do dvoch samostatných súborov:
pkglist.txt pre oficiálne balíčky.
pkglist_aur.txt pre AUR balíčky.
Používateľ zadáva iba základnú cestu k súboru (napr. pkglist), a skript automaticky vytvorí alebo načíta správne súbory.
2. Vytvorenie a príprava skriptu
2.1 Vytvorenie .sh súboru
Pred použitím skriptu je potrebné vytvoriť súbor a vložiť doňho kód. Na to použite príkaz:
touch migrate_packages.sh
Potom súbor otvorte v obľúbenom textovom editore, napríklad vim, nano alebo kate:
nano migrate_packages.sh
Do tohto súboru vložte nasledujúci kód:
2.2 Skript na export a import balíčkov
#!/bin/bash
# Skript na migráciu balíčkov v CachyOS s podporou AUR balíčkov
# Používa výhradne `paru`.
export_packages() {
local BASE_PATH="$1"
local TYPE="$2"
if [ "$TYPE" == "all" ]; then
OFFICIAL_FILE="${BASE_PATH}.txt"
AUR_FILE="${BASE_PATH}_aur.txt"
paru -Qqe --repo > "$OFFICIAL_FILE"
paru -Qqm > "$AUR_FILE"
elif [ "$TYPE" == "official" ]; then
paru -Qqe --repo > "${BASE_PATH}.txt"
elif [ "$TYPE" == "aur" ]; then
paru -Qqm > "${BASE_PATH}_aur.txt"
fi
}
import_packages() {
local FILE="$1"
if [ -f "$FILE" ]; then
paru -S --needed - < "$FILE"
fi
}
while true; do
echo "----------------------------------------"
echo " Vyberte možnosť:"
echo " 1. Export všetkých balíčkov (oficiálne + AUR)"
echo " 2. Export iba oficiálnych balíčkov"
echo " 3. Export iba AUR balíčkov"
echo " 4. Import všetkých balíčkov (oficiálne + AUR)"
echo " 5. Import iba oficiálnych balíčkov"
echo " 6. Import iba AUR balíčkov"
echo " 7. Ukončiť"
echo "----------------------------------------"
read -p "Vaša voľba (1-7): " CHOICE
case $CHOICE in
1) read -p "Zadajte základnú cestu pre export: " BASE_PATH; export_packages "$BASE_PATH" "all" ;;
2) read -p "Zadajte základnú cestu pre export: " BASE_PATH; export_packages "$BASE_PATH" "official" ;;
3) read -p "Zadajte základnú cestu pre export: " BASE_PATH; export_packages "$BASE_PATH" "aur" ;;
4) read -p "Zadajte základnú cestu pre import: " BASE_PATH; import_packages "${BASE_PATH}.txt"; import_packages "${BASE_PATH}_aur.txt" ;;
5) read -p "Zadajte cestu k súboru: " FILE; import_packages "$FILE" ;;
6) read -p "Zadajte cestu k súboru: " FILE; import_packages "$FILE" ;;
7) exit 0 ;;
*) echo "Neplatná voľba." ;;
esac
done
2.3 Nastavenie spustiteľnosti skriptu
Po vložení kódu uložte súbor a nastavte ho ako spustiteľný pomocou príkazu:
chmod +x migrate_packages.sh
Teraz môžete skript spustiť príkazom:
./migrate_packages.sh
3. Použitie skriptu
Export balíčkov
Nie je potrebné zadávať príponu .txt
Používateľ zadáva iba základnú cestu (napr. pkglist), skript automaticky vytvorí:
pkglist.txt pre oficiálne balíčky.
pkglist_aur.txt pre AUR balíčky.
Príklady správneho zadania cesty:
pkglist → vytvorí pkglist.txt a pkglist_aur.txt.
/home/user/pkglist → vytvorí /home/user/pkglist.txt a /home/user/pkglist_aur.txt.
~/pkglist → vytvorí ~/pkglist.txt a ~/pkglist_aur.txt.
Import všetkých balíčkov
Zadajte základnú cestu (napr. pkglist).
Skript automaticky načíta pkglist.txt a pkglist_aur.txt, ak existujú.
Import iba oficiálnych alebo AUR balíčkov
Pri importe iba jedného typu balíčkov je nutné zadať celú cestu vrátane prípony .txt.
Príklad:
pkglist.txt pre oficiálne balíčky.
pkglist_aur.txt pre AUR balíčky.
4. Dôležité poznámky
Základná cesta bez prípony – pri exporte zadávate iba názov bez .txt a skript automaticky vytvorí potrebné súbory.
Formáty cesty:
Relatívna cesta: pkglist (v aktuálnom adresári).
Absolútna cesta: /home/user/pkglist.
Cesta relatívna k domovskému adresáru: ~/pkglist.
Ak súbor neexistuje, skript zobrazí chybu.
Nepoužívajte špeciálne znaky ani medzery v názvoch súborov.
5. Záver
Tento skript umožňuje jednoduchý export a import balíčkov v CachyOS so správnym rozdelením oficiálnych a AUR balíčkov. Používatelia zadávajú iba základnú cestu k súboru, pričom skript sa postará o vytvorenie alebo načítanie správnych súborov. Ak potrebujete ďalšie úpravy, kontaktujte správcu Wiki.