Содержание

PuppyRus-A-roll (PRA-roll) x86_64

  • x86_64 Linux дистрибутив, построенный на базе репозитория Arch Linux и пакетно совместимый с ним
    • Дистрибутив представляет из себя маленький и быстрый модульный (*.pfs) конструктор для домашнего использования. Достигается использованием initrd rootaufs2 и UIRD
    • Комбинация модулей (выбирается в меню или самостоятельно) даст Вам базовую систему с легким DE , драйверами под Ваше железо и набором софта.
    • Используется собственные дополнительные репозитории c оптимизированным по зависимостям и ресурсоемкости софтом. Возможно использование пакетов PRA в других pacman - совместимых дистрибутивах: Arch, Manjaro.
  • Возможна FRUGAL и FULL установка
    • FRUGAL позволяет простым копированием готовых модулей собрать оптимальную для Вашего железа и задач систему. Если нужен дистрибутив только с этим функционалом - лучше использовать DDR или LF
      • Возможная работа с usb-flash (в том числе с полным копированием в память)
      • Возможна установка в раздел с Windows и Linux второй системой
      • FRUGAL установка (с преднастройками) поможет новичкам проще и быстрее установить систему и не убить ее в процессе экспериментов
      • В репозитории есть модули оформления (084-*.pfs темы, иконки) и прочий софт, который можно отключать\подключать по горячему
    • FULL рекомендуется для опытных пользователей Arch Linux (владеющих pacman) и на стационарный компьютер
      • Возможна установка в каталог (несколько установок на одном разделе) или файл (можно на ntfs, т.е. на одном разделе с windows)
      • Можно включить постоянное обновление
      • Можно временно заморозить установленную систему (неубиваемость)
      • При наличии AUFS в ядре - по горячему подключать (отключать) модули.pfs

Скачать iso и модули

  • Свежие версии - в шапке форума и новостях
  • Распространяется в виде UEFI гибридного prarГГММ-x86_64-[TK]-XX.iso. Т.е. возможна LiveCD загрузка c CD или USB-флэш
  • ГГММ в названиях iso и модулей : Год, Месяц используемого замороженного среза Arch репозитория
  • ТК (опционально) в названиях iso и модулей: gtk2, gtk3, qt5 - ТооlKit (библиотеки элементов интерфейса)
  • XX: в названиях iso - порядковая версия iso

Выбор pra-roll*.iso

  • Версии разных лет могут отличалься по заимыслу и составу
  • Состав модулей и md5sum в файле *.md5.txt

PRAR-1811

В большей степени был подготовлен для FULL. Конструктор ТK и DE c максимальным использованием арч репозитория и минимальным своего

  1. GTK3.
    • Mate и OVS (Openbox Vala-panel, SpaceFM)
    • Manjaro ядро с проприетарными видеодрайверами
    • pulseaudio
    • NetworkManager + ModemManager
    • Браузер chromium
  2. LX* GTK2+QT5. Для опытных пользователей и слабого железа
    • LXDE-gtk2 и LXQT
    • Усеченный модуль linux-firmware-*.pfs
    • Браузер Pale Moon. Единственный поддерживаемый производителем gtk2
    • Настройка сети : netctl или connman

PRAR-1912

Т.к. PRAR-1811 не имел особой популярности - концепция дистрибутива была изменена в сторону уменьшения трудозатрат и универсальности:

  • Только gtk3, т.к. свежий софт и в первую очередь, основные браузеры, именно gtk3. Gtk2 DE и софт актуален больше для старых компьютеров, для которых лучше подойдут LF, DDR и пр. дистрибутивы проекта
  • Один, уже, мало распространенный DE : LXDE gtk3 и 2 дополнительных варианта панелей - tint2 (с патчем мониторинга) и vala-panel.
    • Дистрибутивов со стандартными DE хватает и без PRAR.
    • Собрать модули DE из PRAR-1811 для PRAR-1912 : sudo pacman2pfs `pfspkg модуль_DE_из_PRAR-1811.pfs`
  • Во FRUGAL варианте PRAR-1912 можно использовать с портитрованными модулями софта от LF01 как более свежий дистрибутив для свежего железа и опытных пользователей
  • В FULL варианте PRAR-1912 можно установить как легкий дистрибутив.
    • При этом не рекомендуется устанавливать модули не из arch репозитория (ffmpeg и т.п.), т.к их обновление не гарантируется
    • Включить обновление из Arch или Manjaro репозитория и доустановить из этих репозиториев софт. После чего использовать стандартно или с функционалом rootaufs2 т.е. заморозка состояния и горячее подключение модулей.pfs
    • При обновлении пакетов - соглашаться на замену из arch репозитория
  • Третий вариант использования - ознакомиться с эксклюзивными наработками PRAR и установить их pacman-ом в имеющийся Arch или Manjaro
  • Содержит initrd UIRD. Все компоненты опакечены
  • PRAR в таком виде планируется обновлять 1-2 раза в год. Если в процессе использования PRAR придет понимание, что основной FRUGAL дистрибутив проекта морально устарел - PRAR будет переделан уже под только FRUGAL использование и станет основным

PRAR-2008

  • Дальнейшее развитие идеи PRAR-1912.
  • Основные отличия :
    1. gtk3 и некоторые другие компоненты облегчены использованием -fake- пакетов (пустышек). Это позволит полноценно обновлять FULL установку pacman-ом без раздувания размера
      • Т.е. при FULL установке будет корректно обновляться pacman-ом.
      • Если нужны полные версии - устанавливаем из Arch репозитория.
      • В портированных пакетах прописаны конфликты. Они самоудалятся

PRAR-2008. Выбор initrd и ядра

Ядра

  • *overlayfs есть во всех перечисленных ядрах, но он по сравнению с AUFS имеет ограничения по количеству слоев и горячему подключению модулей
  1. Из репозиториев Arch
    • Собраны без AUFS.
    • Нет проприетарных видеодрайверов и т.п. в виде пакетов. Только dkms (надо компилировать самому)
    • Маленькие, усеченные ядра с монолитно вкомпиленнной поддержкой файловых систем и пр. , необходимого для загрузки без дополнительных модулей ядра
    • Позволяют обходиться в initrd без udev
    • Не требуют пересборки initrd при смене ядра (на такое же «монолитное»)
  2. Из репозиториев Manjaro
    • Собраны с AUFS.
    • Есть проприетарные видеодрайвера и т.п. в виде пакетов и GUI выбора ядра

initrd

    • Неудобен для FULL , т.к. нет автопересборки и будет работать только с маленькими ядрами Porteus и pf
    • Маленький initrd + ядра тоже маленькие
    • Т.к. это хук для стандартного mkinitramfs Arch Linux - удобно автопересобирается при обновлении ядра стандартным mkinitcpio
    • Имеет проблемы с mkinitcpio > 27. Используйте mkinitcpio27-27-4-any.pkg.tar.xz
    • Собран при помощи dracut
    • Максимальное (из вышеперечисленных initrd) количество возможностей и трюков

Особенности PRA-roll

  1. Только RU локализация.
    • Прочие вырезаны в iso через NoExtract в /etc/pacman.conf для уменьшения размера модулей (актуально для FRUGAL copy2ram)
    • Вернуть : подключить LOC-prar*.pfs или переустановить все пакеты из arch репозитория: pacman -S $(pacman -Qq | grep -v «$(pacman -Qmq)»)
    • Локализация скриптов PRA только RU
  2. Перед работой с pacman , нужно обновить базы: pacman -Sy. Если Вы часто используете pacman и pkgfile, удобно подключить модуль pkg-pra*.pfs c результатом выполнения pacman -Sy && pkgfile -u
  3. Для экономии места, в PRA отключена проверка подписи пакетов и pacman перекомпилен без gpg. Включить :
    • pacman -S pacman - установить из Arch репозитория
    • раскомментировать в /etc/pacman.conf строки Siglevel=
    • sudo pacman-key –init && sudo pacman-key –populate archlinux
  4. Поскольку дистрибутив построен на замороженном репозитории Arch, по команде pacman -Sy будут обновляться только пакеты из PRA и дополнительных репозиториев.
    • Разморозить можно правкой /etc/pacman.d/mirrorlist . Актуально только в FULL
  5. /usr/share/man info doc и т.п. вырезаны в модулях.pfs через NoExtract в /etc/pacman.conf. Вернуть: подключить модуль MAN-prar*.pfs
  6. Автологин в систему под пользователем live
    • Для нескольких пользователей в full - установите DM или используйте для каждого пользователя frugal со своей сохраненкой
    • Есть готовый модуль DM slim (самый маленький)
  7. Adobe Flash Player не включен в iso (кроме google-chrome). При необходимости - доустановите : sudo pacman -Sy flashplugin или pepper-flash. Подробности
  8. Необходимые для компиляции (AUR, ABS ) пакеты (gcc, make и т.п.) и части пакетов (/include и пр.) из базовых модулей выделены в отдельный модуль DEVX. Загрузить : sfs-get DEVX.
  9. Обновления (в том числе безопасности) для старых версий FRUGAL установки не планируются. Устанавливайте FULL или переходине на LF01 DDR

Пароли по умолчанию

  • У пользователей root и live пароли: woofwoof
  • При использовании сервисов с авторизацией (ssh ftp …) рекомендуется поменять

Демон инициализации systemd

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

Работа с модулями.pfs и пакетами (.pkg.). Стандарты названий

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

  • Дистрибутив разбит на squashfs модули. Это позволит выбрать только нужные Вам
  • Скачать. В каждом каталоге - pra-roll, собранный на указанной дате среза Arch репозитория. Модули, имеющие в названии эту дату подойдут только к этому дистрибутиву pra-roll
  • В /modules находится модули, зависящие только от модулей из /base. Т.е. в каждый /modules/*.pfs включены все необходимые библиотеки. Любой из них можно удалить. Для создания новых модулей нужно загружать frugal : base_only
  • В PRAR1912, 2008 количество модулей уменьшано. Некорорые объединены в 001*.pfs
  • 000-kernel: модули ядра. Обязательный. Идет в комплекте с vmlinuz* и initramfs*
  • 001: главный модуль, собранный в основном, из репозитория Arch linux. Обязательный. Содержит Xorg
  • 020 - 035 - тулкиты (gtk2 ;gtk3; qt5), библиотеки
  • 040 - 055 ; 089-de: Desktop Environment (DE)
  • 045 - альтернативная панель DE
  • 070-pra-frugal: наработки PRA (скрипты с необходимыми зависимостями)
  • 070-pra-full: хуки PRA. Нужны только для пересборки initrd
  • 075: демон инициализации (systemd или minirc)
  • 083: настроенный профиль браузера (необязательный модуль)
  • 084-theme: оформление (тема gtk, иконки, прочее). Обязательный. Есть несколько вариантов
  • 089: насторйки, специфичные для PRA-roll, исправления
  • DEVX: нужен только для компиляции. Не входит в iso (загрузите из репозитория через sfs-get или меню).
  • 001-*_DEV: DEVX часть модуля 001. Входит в модуль DEVX*.pfs. Нужен тем, кто не хочет устанавливать FULL с полным DEVX, но собирается иногда компилить. В этом случае можно в замороженном FULL доустановить : pacman -S base-devel , скомпилить и вернуться в FULL
  • linux-firmware-: firmware. 3 варианта - облегченный (light), middle и полный (из Arch репозитория)
  • broadcom-wl: Модуль ядра для wifi broadcom. Подходит только к версии ядра в названии модуля
  • r8168: Модуль ядра для сетевых адаптеров Realtek RTL8111/8168B. Подходит только к версии ядра в названии модуля
  • mesa: 3D (в основном для игр) и VDPAU (снижение нагрузки на CPU).
  • connman: Утилита настройки сети (кроме модемов). Есть несколько вариантов GUI : gtk3 и qt5
  • networkmanager(NM): Тяжеловесная утилита настройки сети. В prar используется старая, облегченная версия
    • Рекомендуется только для сложных случаев и частых переключений.
    • Проводной DHCP настроится сам автоматически
    • Для простых случаев достаточно netctl (есть GUI настройки)
  • Modemmanager: нужен только при наличии модема
  • pulseaudio: многофункциональный звуковой сервер. Необязательный. Актуален при большом количестве звуковых устройств
  • gvfs: монтирование локальных (корзина, hdd, usbflash) и сетевых (ftp ssh) ресурсов в файловых менеджерах (ФМ)
    • Для spacefm не нужен
    • Во все прочие модули ФМ входит pup-volume. Монтирует только hdd, usbflash
  • nss: Системная библиотека. Нужна pdf chrome и пр.
  • icu: Системная библиотека. Нужна virtualbox и пр.
  • 090: модуль сохранение состояния системы (создается пользователем)
  • pkg: база пакетного менеджера (ПМ). Нужен только при работе с ПМ. Альтернатива - стандартное обновление списка пакетов
  • basilisk: Облегченный клон firefox. При FRUGAL установке будет автообновляться скриптом. При FULL будет автообновляться при запуске от root встроенными средствами
  • google-chrome: Проприетарный браузер от google. В отличии от свободного chromium имеет меньше зависимостей. Поэтому легче обновлять. Включает Adobe flash
    • В FULL удобнее google-chrome-*-2008-*.pfs. Автообновляется pacman - ом
    • FRUGAL - google-chrome-gtk3-p-*.pfs будет автообновляться скриптом.
  • smplayer-qt4: Включает в себя mplayer и qt4. Проигрывает ссылки youtube с vdpau ускорением (можно использовать вместе с basilisk).
  • premote: Монтирование smb ftp webdav dlna, клиенты rdp vnc

Установка

Установка PRA на hdd, usbflash, решение проблем после установки

  • Для всех вариантов установки есть GUI инсталлятор :
    • модуль: sudo sfs-get pra-installer
    • пакет: sudo pacman -Sy pra-installer
  • Для запуска PRA подойдет любой linux загрузчик: grub4dos, grub, grub2, burg.
  • При проблемах загрузки с медленных флэшек - используйте rootdelay=

FRUGAL

Варианты установки и параметры загрузки

  • Для запуска PRA подойдет любой linux загрузчик: grub4dos, grub, grub2, burg.
  • FRUGAL рекомендуется для «походного» использования с флэшки, экспериментов со свежим софтом и железом.
    • PRA-roll больше по размеру по потреблению ресурсов, чем прочие LF* дистрибутивы .
    • PRA-roll выпускается только x86_64, т.е. на совсем старом железе не пойдет
  • Возможно горячее подключение модулей PRA из http://mirror.yandex.ru/puppyrus/puppyrus-a64/pfs-portable/. Полная совместимость этих модулей с PRA-roll не гарантируется. Они не будут обновляться средствами pacman. Поэтому установка их не рекомендуется

Сохранение FRUGAL сессии

FULL

  1. При использования rootaufs2, возможно сохранение в файл или размещение корня системы в файле на разделе с windows
  2. При использования mkinitcpio-loop-subdir, возможно размещение корня системы в файле на разделе с windows

Если планируется автообновлять ядра - установите модуль 070-pra-full c mkinitrdcpio и хуками.

Копия PRA.iso (для начинающих)

  1. Разметить диск (например gparted или cfdisk). Нужен один раздел ext* (не gpt, если будете использовать grub4dos) под / и опционально раздел swap
    • Есть возможность установки в каталог (т.е. на 1 раздел с уже установленным в корень другим линуксом - п.2)
    • В файл (т.е. даже на один раздел с Windows - п.4)
  2. Установить линукс-загрузчик или использовать имеющийся.
    • Утилиты установки grub4dos в .iso /boot/grub4dos/install
  3. Загрузить систему с CD или флэш со всеми нужными Вам модулями (для выбора noload=). Недостающие модули можно подключить через sfs-get
  4. Скопировать подключенные модули (/mnt/live/memory/images) на подготовленный раздел (каталог, файл) в нужном порядке (089 последним).
    • Можно использовать графический установщик pra-installer
    • Если планируете использовать AUR - не забудьте модуль DEVX* (см. выше)
  5. Скопировать vmlinuz* и initramfs*
  6. Поправить конфиг. загрузчика.

Стандартная pacstrap установка Arch из пакетов (для опытных)

  1. Загрузить любой дистрибутив с pacman
  2. Подключить PRAR репозитории (взять /etc/pacman.conf из iso)
  3. pacstrap /mnt `cat pkg-list/001 pkg-list/070 |egrep -v '^#'`
    • где /mnt - примонтированный для установки раздел (или папка - в этом случае : pacstrap -d)
    • pkg-list/001 - список пакетов PRA-roll в iso (можете менять, если понимаете что и зачем делаете)
  4. В полученную таким образом установку системы
    • можно войти : arch-chroot /mnt
    • и изменить состав пакетов :
pacman-key --init && pacman-key --populate archlinux && pacman-key --refresh-keys && pacman ...

Комбинация режимов FULL и FRUGAL

Имея в initrd эти хуки можно

  • В FULL постоянно обновлять систему штатными средствами
  • В FULL с lf-aufs или lf-overlayfs - экспериментировать с системой, не боясь ничего испортить
  • В FULL с lf-aufs - дополнительно подключать по горячему портированные и прочие модули.pfs

Переход FULL <-> FRUGAL

FULL -> FRUGAL

  • Например для использования свежей версии с NTFS \ FAT флэшки или по сети
  • Сжимаем корень установленного дистрибутива в модуль :
sudo mksquashfs /mnt/sda1/prar prar.pfs

FRUGAL-> FULL

sudo unsquashfs prar.pfs

Стандартный initrd. Или с хуком subdir=

Решение проблем после установки

Rolling release или Arch Rollback Machine

Arch Rollback Machine

Переключение на Rolling release

  • Актуально только в FULL и только для опытных. Даст постоянные обновления (в том числе и PRA пакетов)
  • Переключение с замороженного среза Arch репозитория на rolling release:
sudo pacman-roll

Изменяет /etc/pacman.d/mirrorlist. Старый копирует в /etc/pacman.d/mirrorlist.0 *Обновить все пакеты:

sudo pacman -Syu --overwrite=*

Внимательно смотрите на предложенные замены. Не соглашайтесь заменить

  • cryptsetup на cryptsetup-static
  • systemd на minirc

Переход с Arch репозитория на репозиторий Manjaro

  • Даст большее количество пакетов
  • Возможность использовать : mhvd (портирован в PRA) , ядра с aufs, удобную настройку.

В /etc/pacman.d/mirrorlist оставляем только:

Server = https://mirror.yandex.ru/mirrors/manjaro/stable/$repo/$arch

Репозитории

Кроме официальных Arch, использованы:

Репозитории PRA

Дополнительные репозитории:

  • OBRevenge - pamac, palemoon и пр.
  • archlinuxcn - opera ; vivaldi ; yandex-browser ;teamviewer ;telegram ; wps-office ;sublime-text; unzip-natspec ; 7z-natspec
[archlinuxcn]
Server = http://repo.archlinuxcn.org/$arch
  • aur-archlinux - teamviewer; tor-browser; panther-launcher
[aur-archlinux]
Server = https://repo.itmettke.de/aur/$repo/$arch
  • Дополнительно можно подключить неофициальные.
  • Прочие pacman-совместимые репозитории (Manjaro и т.п.) подключать нельзя. В крайнем случае можно использовать только определенные пакеты (ядра, иконки, скрипты)

Установка (или сборка модуля) софта

sudo pacman -Sy программа

Подробнее про установку конкретной программы :https://wiki.archlinux.org

Сделать модуль (предварительно по максимуму выгрузите прочие модули):

sudo pacman2pfs программа

Если модуль есть в более старых версиях Pra-roll - сделать для новой версии:

sudo pacman2pfs `pfspkg старый_модуль.pfs`

Выбор браузера

  • google-chrome можно установить в 2х вариантах:
    • Из arch репозитория (например - archlinuxcn). Удобно для FULL
    • Портированный - google-chrome-gtk3-p-*.pfs. Удобно для FRUGAL. Будет автообновляться пересборкой модуля
  • palemoon и basilisk нет в arch репозиториях.
    • Для FRUGAL есть автообновление модулей.
    • Для FULL - запускайте от root и используйте встроенное в приложение автообновление

Установка Libre Office

Подробности

sudo pacman -Sy libreoffice-fresh-ru hunspell-ru avahi 

Пакет с более свежей версии собрать (без компиляции, просто перепаковка):

sudo packer libreoffice-dev-bin

Установка другого DE (рабочего стола)

  • Загружаем iso без Desktop Environment
  • Ctrl+Alt+F2 - логинимся в консоль под root
  • Устанавливаем нужные пакеты с помощью pacman или делаем модуль (pacman2pfs)
  • Для некоторых DE в репозитории PRA есть метапакеты (через свои зависимости установит все необходимое). Посмотреть все :
sudo pacman -Sys pra-de

Cups - печать

  • Установка:
sudo pacman manjaro-printer

Skype - видеосвязь с бесплатными звонками и чатом

Установка проприетарных видеодрайверов

  • Нужно производить из репозитория, откуда установлено ядро (пакет linux*)

Установка Wine (запуск Windows приложений)

  • От пользователя root разблокировать строки в /etc/pacman.conf :
[multilib]
Include = /etc/pacman.d/mirrorlist
  • sudo pacman -Sy
  • Через sfs-get подключить mesa*.pfs и icu*.pfs
  • sudo pacman2pfs wine
  • Для более сложных программ может дополнительно потребоваться:
sudo pacman2pfs wine-mono wine_gecko winetricks cabextract

Установка Kodi

Легкие версий gtk2 софта из репозитория PRA

  • abiword-gtk2 - текстовый редактор
  • avidemux-gtk2 - медиаконвертер
  • atrill-xfce - просмотрщик pdf
  • chromium-gtk2 - браузер
  • deadbeef-static - mp3 плеер
  • gnumeric-gtk2 - электронные таблицы
  • mhwaveedit - play & edit sound
  • mpvgui - GUI к mpv
  • netctlgui - GUI к netctl (настройка сети)
  • network-manager-applet-gtk2

Безопасность

Пароли

sudo

  • sudo по умолчанию настроено на полное разрешение запуска всем всего без пароля.
  • При FULL установке лучше уменьшить права live и включить запрос пароля
  • Запрос пароля включается добавлением в /base 089-zzz-sudoq-*.pfs

Работа под root (как в puppy)

  • Очень небезопасно
  • Включается добавлением в /base 089-zzz-root-*.pfs

run-as-nobody - запуск приложения от пользователя без прав

  • Рекомендуется использовать для браузеров и интернет приложений при работе от root или live c sudo без пароля :
    • run-as-nobody программа
    • Или сделать : sudo ln -s /usr/local/bin/run-as-nobody-ln /usr/local/bin/программа . Программа должна находиться в /usr/bin
    • Если для программы есть настроенный профиль - переместить его в /home/live/nobody и сделать : sudo chown -R nobody /home/live/nobody
  • В модуле профиля 083-*.pfs для большинства браузеров такой запуск сделан дополнительным ярлыком
    • Посмотреть от какого юзера запуск : ps axu|grep ваш_браузер
    • Вернуть запуск от пользователя live :
      • удалите /usr/local/bin/ваш_браузер
      • запускайте /usr/binl/ваш_браузер
      • отредактируйте ярлык /usr/share/applications/ваш_браузер-nobody.desktop
  • Т.к. браузер запущен от nobody - сохранить можно только в каталоги, доступные ему на запись, т.е. в /home/live/nobody или дать на любой нужный Вам каталог права на запись nobody

Защитный экран

Антивирус

Использование пакетов PRA в других pacman - совместимых дистрибутивах

Добавить в конец /etc/pacman.conf

[pra6407extra]
SigLevel = Never
Server = ftp://ftp.yandex.ru/puppyrus/puppyrus-a64/pra64-07/pkg/pra6407extra

[portable]
SigLevel = Never
Server = http://mirror.yandex.ru/puppyrus/roll//pkg/portable
Server = ftp://ftp.yandex.ru/puppyrus/roll//pkg/portable

[2a-any]
SigLevel = Never
Server = ftp://ftp.yandex.ru/puppyrus/2a-aarch64/pkg-repo/2a-any
Печать/экспорт