AF Linux

AUFS frugal

Скачать

Предистория: SFSLinux=.deb+Puppy ArchPupRus ALF ПапиРус21 Байт006a,008

Поставленные задачи:

  1. упростить и ускорить сборку использованием готовых отработанных методик и пакетов arch linux
  2. за счет pacmanXG упростить пользователю установку софта

AF скорее не дистрибутив, а методика сборки модульного frugal дистрибутива. Сборка рассчитана на подготовленного пользователя. Использование по замыслу должно быть не сложнее Puppy. В любом случае желателен опыт Arch и Puppy

Дальнейший текст изобилует ссылками на arch-wiki. Она обновляется, переводится на русский (часто более старая версия, хотя бы просматривайте английскую версию) и содержит ответы на любые вопросы.

  • Дистрибутив собран на пакетной базе Arch Linux
  • использованы наработоки PuppyRus218 (конфиг ядра, pfs-utils).
  • собственные наработки: sfrugal sfs-get
  • Live система rootaufs (доработана)
  • Функционал и состав аналогичен PuppyRus Byte 218

Отличия AF от родительских и аналогичных сборок

  • Arch: ядро не из core, frugal
  • PuppyRus218: systemd, полноценный пакетный менеджер (pacman) с GUI и софтом, AF имеет больший размер (частично решаемо)
  • ArchPup: rootaufs, systemd, не использовался spkg, AF более совместим с Arch

Варианты развития

  1. Дальнейшее использование репозитория Arch Linux (или другого pacman совместимого с ним), совершенствование live и frugal
  2. Перепаковка других совместимых дистрибутивов. Добавление модульности и frugal
  3. Создание своего репозитория с использованием ABS и AUR

Модули

Назначение модулей

Модули с названиями заглавными буквами - мета модули (pfsmerge составные)

  • arch*.sfs - базовый модуль. Только arch пакеты
  • AF.pfs :
    • конвертированные arch пакеты (чтобы не пересобирать arch*.sfs)
    • 00Sf* - sfrugal
    • 0af-* - модуль совместимости arch-puppy
    • puppy-* - универсальный puppy модуль
  • linux-pf375.pfs - модули ядра
  • SFS-TK-AF*.pfs - универсальный набор утилит

Слои AUFS

Сверху вниз (файлы верхних слоев перекроют прочие)

  • rootaufs - аналог сохраненки
  • overlay= - базовые squashfs модули. Слои AUFS в порядке перечисления, т.е. файлы 1го модуля (AF.pfs) перекроют прочие.
  • sfsdiru= - см. sfrugal
  • sfsdir=

Варианты сборки базового модуля

Для уменьшения размера модуля, что актуально для полной загрузке в RAM, используйте скрипт trim

  • Удаляет неиспользуемые локализации и временные зоны
  • Удаляет man info doc
  • Выделяет компоненты нужных только разработчикам (devx)
  • Чистит cache и т.п.

makechrootpkg сборка

  1. Загрузите любой свежий arch или используйте любой linux
  2. Пропишите ближайший репозиторий в mirrorlist
  3. Обновите базу пакетов pacman -Syy
  4. Установите или соберите devtools
  5. Воспользуйтесь инструкцией или готовыми скриптами из arch-chroot.tbz2 в корне базового модуля

сhroot перепаковка

  1. Возьмите любой понравившийся arch live-дистрибутив
  2. Распакуйте
  3. chroot.sh (из arch-chroot.tbz2 в корне базового модуля)
  4. pacman -Rs лишнее && pacman -Syu && pacman -S нужное
  5. Запакуйте в squashfs (mksquashfs или pfs-utils)

Конвертация в .pfs

  1. Скачиваем нужные пакеты.pkg.tar.xz
  2. Скриптом pkg2pfs конвертируем в .pfs
  3. Собираем по PuppyRus методике

Live CD (flash) система

Т.е. тот самый frugal. Ключевой момент - сборка initrd

Обзор

rootaufs

Доработана и использована https://aur.archlinux.org/packages/mkinitcpio-rootaufs

Наиболее проста и функциональна. Основные параметры ядра описаны в af.txt.gz в корне CD. Дополнительные: vga=

Larch

Целая система сборки. Сложна и малофункциональна. Можно использовать только hook для mkinitcpio

Сборка AUFS ядра

Настройка

Сеть

Время

WM

JWM

Пакеты

Пакетный менеджер (ПМ)

  • Для принудительного обновления списка пакетов : pacman -Syy
  • Скачать пакет, но не устанавливать его: pacman -Sw имя_пакета
  • -Qu : доступные обновления
  • Для получения списка файлов неустановленного пакета можно использовать утилиту pkgfile из состава пакета pkgtools

Создание пакета

Создание репозитория

Интернационализация

Интернационализация присутствует с Arch в полном объеме. В AF намененно вырезана для оптимизации размера. Вернуть или сделать под другой язык можно пересборкой с изменением скрипта trim

Печать/экспорт