Link Search Menu Expand Document

Ctlos iso

Ctlos iso

YouTube link Старая версия, но многое объясняет.

Содержание

  1. Создание iso образа
    1. Подготовка
    2. Локальный репозиторий
    3. Сборка aur пакетов
    4. Репозиторий iso
    5. Сборка образа
    6. Пересборка
    7. Списки пакетов

Создание iso образа

YouTube link Старое видео, но многое объясняет.

Подготовка

Установить пакеты для сборки.

yay -S git archiso mkinitcpio-archiso --noconfirm --needed

Для сборки необходимо подключить локально ctlos_repo, или изменить под себя pacman.conf и пакеты.

Задействован chaotic репозиторий, проще всего его установить, через yay из aur.

yay -S chaotic-keyring chaotic-mirrorlist --noconfirm --needed

Локальный репозиторий

Нужен в том случае, если вы хотите, что-то собрать и добавить из aur.

Создание директории и клонирование репозитория ctlos. Еще немного о лакальном репо.

mkdir ~/ctlos
cd ~/ctlos
git clone https://github.com/ctlos/ctlos_repo

Или ssh.

git clone git@github.com:ctlos/ctlo_repo.git

Сборка aur пакетов

Найти нужный пакет на сайте аур aur.archlinux.org и загрузить snapshot вида *.tar.gz.

Собираем пакеты в build.

mkdir ~/ctlos/ctlos_repo/build
cd ~/ctlos/ctlos_repo/build
wget https://aur.archlinux.org/cgit/aur.git/snapshot/gtk3-mushrooms.tar.gz

Распаковываем и собираем пакет.

tar -xvzf gtk3-mushrooms.tar.gz
cd gtk3-mushrooms
makepkg -s

Копируем собраные пакеты в ~/ctlos/ctlos_repo/x86_64, инициализируем репозиторий. Пакеты в формате *.pkg.tar.xz, или zst.

cd ~/ctlos/ctlos_repo/x86_64
repo-add ctlos_repo.db.tar.zst *.tar.zst

Или.

./update.sh --add

После добавления новых пакетов из aur необходимо переинициализировать репозиторий.(Удалить файлы баз данных), или запустить скрипт update.sh он сам все пересоздаст.

repo-add ctlos_repo.db.tar.zst *.tar.xz

repo-add ctlos_repo.db.tar.zst *.pkg.tar.zst

Или.

./update.sh --add

Репозиторий iso

Клонируем репозиторий. Ветка master по умолчанию.

cd ~/ctlos
git clone --depth=1 https://github.com/ctlos/ctlosiso

Добавляем пользовательский репозиторий для aur пакетов. В /ctlos/ctlosiso/pacman.conf.

[ctlos_repo]
SigLevel = Optional TrustAll
Server = file:///home/creio/ctlos/ctlos_repo/$arch

Закоментировать репозиторий ctlos, если нужно.

#[ctlos_repo]
#SigLevel = Never
#Server = https://raw.github.com/ctlos/ctlos_repo/dev/repo/$arch

Сборка образа

Сделать скрипты исполняемыми.

cd ctlosiso
chmod +x {autobuild.sh,chroot.sh,mkarchiso}
  • Пакеты: packages.x86_64

Скрипту autobuild.sh обязательно нужно передать аргумент, любой. Я обычно отправляю xfce_1.7.0 de/wm и версию.

sudo ./autobuild.sh xfce_1.7.0

Готовый образ и хэши создаются в данной директории ~/ctlos/ctlosiso/out.

Пересборка

Удалить каталоги и запустить скрипт сначала.

sudo rm -rf {out,work}

Или отредактировать.

sudo nano /bin/pacstrap

Изменить строку, для пропуска установленных пакетов.

if ! pacman -r "$newroot" -Sy "${pacman_args[@]}"; then

На.

if ! pacman -r "$newroot" -Sy --needed "${pacman_args[@]}"; then

Удалить файлы блокировки.

sudo rm -v work/build.make_*

Списки пакетов

Список установленных пакетов в системе. Подробно.

LANG=C pacman -Sl | awk '/\[installed\]$/ {print $1 "/" $2 "-" $3}' > ~/pkglist.txt

LANG=C pacman -Sl | awk '/\[installed\]$/ {print $2}' > ~/.pkglist.txt

Кратко.

pacman -Qqe > ~/pkglist.txt

pacman -Qqm > ~/aurlist.txt