Форум проекта PuppyRus Linux

Дистрибутивы проекта PuppyRus Linux => Сборки Linux от пользователей => DDR01. DebianDogRetro Rus Stretch i686 => Тема начата: k0l0p0k от 05 Апрель 2019, 17:44:05

Название: AptToSfs - cоздание модуля из .deb
Отправлено: k0l0p0k от 05 Апрель 2019, 17:44:05
repo2pfs (https://forum.puppyrus.org/index.php?topic=21828.msg158502#msg158502)
сделать из локального deb файла модуль.

Делается свой модуль в DDR01 очень просто
Идем в Меню->Программирование->AptToSfs
(http://forum.puppyrus.org/index.php?action=dlattach;topic=21585.0;attach=17567)
Выбираем куда сохранить, не принципиально, можно или в корень системы / или в /tmp или на раздел
Ограничние - раздел должен быть не NTFS и не FAT
Если таких разделов нет(загрузились с флэшки к примеру) - остаются первые два варианта
В поле ввода вводим название пакета
жмем OK
все
Останется только ждать пока скрипт сделает свою работу, зависит в основном от скорости вашего интернета.
-----------------
Узнать необходимое название пакета то же не сложно, можно например тут:
https://packages.debian.org/ru/
Поиск там есть, пример:
допустим нам нужен файловый менеджер rox, в строке поиска набираем  rox
нам предложат пакет rox-filer
вот rox-filer и нужно будет ввести в поле ввода AptToSfs
это вариант поиска номер раз
- - - --
Пакетный менеджер дебиана тоже умеет искать, в консоли достаточно набрать
apt search нужная_вам_прога
( важно - предварительно  должен  быть выполнен хотя бы один раз apt-get update
иначе ничего не найдет  :o )
это вариант поиска номер два
поправка\дополнение
apt и apt-get нужно запускать из под рута,
а)либо входить под рутом :
sudo su или sudo -i или su, обычно дальше вводится пароль, у нас дистр экспериментальный, sudo пустит без пароля
б)либо перед командами вставлять sudo :
sudo apt-get update
sudo apt search нужная_вам_прога

-----
забыл
по окончании работы спросит удалять\нет каталог с результатами работы скрипта
можно удалить
готовый модуль находится рядом с этим каталогом и не "пострадает"  :)
Название: Re: Создание модуля.Используем AptToSfs
Отправлено: Pro от 06 Апрель 2019, 03:10:39
Про chroot и т.п. Можно не писать.

Что пооисходит с deb которые ранее скачались? Удаляются? Лежат где-то?
Название: Re: Создание модуля.Используем AptToSfs
Отправлено: k0l0p0k от 06 Апрель 2019, 07:22:58
Что происходит с deb которые ранее скачались? Удаляются? Лежат где-то?
похоже не сохраняются, каталог с результатами работы скрипта на выбор можно сохранить\удалить по окончании, /var/cache/apt/archives в нем не нахожу
----
/usr/local/bin/apt2sfs
493я строчка:
rm -rf "$WORK"/var/cache
и 510ю
trim "$WORK" #2>/dev/null ##sfs
можно закомментировать попробовать ..
будет сохраняться /var/cache/apt/archives
Название: Re: Создание модуля.Используем AptToSfs
Отправлено: k0l0p0k от 06 Апрель 2019, 07:59:38
из недостатков:
каждый раз делает apt-get update заново
думаю можно ведь в файлик  сохранить? (результаты apt-get update)
и в следующий раз подключать(практически моментально)
Дебиан не спешно обновляется, не нужно ему каждый день apt-get update  :)
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 08 Апрель 2019, 10:00:03
каждый раз делает apt-get update заново
Тоже заметил. Тоже не понравилось. надо бы сделать ключ копирования имеющихся
Дебиан не спешно обновляется
Да, но обновляется (не как замороженная репа арча)
Со старым apt-get update что-то может не сработать. Видимо поэтому так и сделано
Есть еще консольный скрипт /opt/bin/repo2sfs   у которого (вроде) нет этого недостатка, но есть другой - удаляет var - т.е. из чего было собрано потом не понять

Вот с этим var и надо в 1ю оченредь разобраться - есть ли смысл его держать в модуле...
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: k0l0p0k от 08 Апрель 2019, 11:39:39
chromium у Вас что-то очень большой - наверное локали не вырезаны
да, пока после apt2sfs ничего не трогал, как есть
версия совсем без локалей - 86 790 144 байта
все локали включены - 90 951 680 байтов
если вырезать все лишние локали, мегабайта 3.5 сэкономится
я не знаю стоит нет в данном случае экономить "на спичках" 
И в портированных модулях var точно надо удалять
ок
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: k0l0p0k от 08 Апрель 2019, 12:18:36
в стандарте - "Если пусто - i686" ,
что делать с i386 ? большой разницы между  i386 и i686 нет, оставлять поле пустым? или все же помечать?
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 08 Апрель 2019, 13:25:45
DDR 64 не планирую
Поэтому - 32\64 никак не указываем
В непортированных добавляем -ddr01-
В портированных ( -p- )коцаем var (инфу про пакеты)
Надо стараться все портировать. Особенно что для пра03 пригодится
Посмотрите названия моих модулей.

я не знаю стоит нет в данном случае экономить "на спичках"
Я не сышал про нерусскоязычных юзеров наших дистров
Украинцы  не жаловались
Смысл держать все локали?
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: k0l0p0k от 08 Апрель 2019, 13:44:22
Смысл держать все локали?
смысл заморачиваться с вырезанием? если экономия с трудом видна?
3 сэкономленных Мб - 3% от размера модуля, на фоне запущенного браузера эти 3% превращаются в 0.5 (3\600). Хром все же не на самых слабых компах юзать будут
еще могу понять если экономия значительная(пример: в gftp вырезать var - худеет в два раза)
не то что бы я против вырезания, вручную с этим возится как-то неохота, для кого?
---
Поэтому - 32\64 никак не указываем
ок, уберу, название укоротится заодно
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 08 Апрель 2019, 14:17:47
смысл заморачиваться с вырезанием?
"Копейка рубль бережет". Дистр чисто фругальный.
Я вырезаю. Вам , как автору модуля виднее  ;)
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: k0l0p0k от 08 Апрель 2019, 14:20:25
Я вырезаю.
trim в apt2sfs вижу
он же ответственнен за вырезание?
попробую сейчас еще раз на чистой системе, если ненужные локали "порежутся" - перезалью
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: krasnyh от 08 Апрель 2019, 14:22:33
не то что бы я против вырезания, вручную с этим возится как-то неохота
Уже давно для этих целей в PRA существует trim http://forum.puppyrus.org/index.php?topic=21214.15
Он привязан в PRA к pacman2pfs, в ddr1 наверно запускается с AptToSfs.

P.s. Гуи не запускается. Скрин.
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: k0l0p0k от 08 Апрель 2019, 14:36:33
Уже давно для этих целей в PRA существует trim
угу
сейчас проверю вырежет нет при запуске под ddr
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 08 Апрель 2019, 14:36:59
для этих целей в PRA существует trim
Локали по нестандартным путям не вырезаются
Здесь не поможет
trim я уже добавил в AptToSfs (т.е. он и так выполняется)
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: k0l0p0k от 08 Апрель 2019, 14:44:50
сейчас проверю вырежет нет при запуске под ddr
не вырезал :( , в
/mnt/+tmp+chromium-l10n.pfs/usr/lib/chromium/locales
все локали на месте
и размер каталога 35,5 МиБ  :o
тут можно занятся вырезанием
----
trim для ddr нужно модифицировать(?)
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: krasnyh от 08 Апрель 2019, 14:50:48
Локали по нестандартным путям не вырезаются
Так дописать в trim? Я не помню все нестандартные пути, подсмотрел здесь http://forum.puppyrus.org/index.php?topic=19919.msg150861#msg150861
opt/*/locales/*
usr/*/translations/*
usr/**/locales/*
usr/lib/*/locale*/*
Могут быть в /opt, в /lib, в папке /translations, в папке /locales.

Вырезать все лишние локали желательно, зачем они болтаются.

Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 08 Апрель 2019, 14:51:25
trim для ddr нужно модифицировать
Если только когда определимся, что делать со списками пакетов.deb в модулях
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: k0l0p0k от 08 Апрель 2019, 14:58:01
Если только когда определимся, что делать со списками пакетов.deb в модулях
на работу самой программы эти списки влиять не будут ( ? никак )
влияют только на работу ПМ
пока то же не знаю как лучше  ???
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 08 Апрель 2019, 15:03:03
на работу самой программы эти списки влиять не будут ( ? никак )
да
Я пока склоняюсь :
Добавить в 001 списки gtk2 gtk3 qt4 mesa и т.п. (а их в отдельные модули) и везде эти списки вырезать
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: k0l0p0k от 08 Апрель 2019, 15:24:48
и везде эти списки вырезать
может наоборот? в каждом модуле свой список(то что есть именно в этом модуле)
а в рабочей системе объединять их в один?
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 08 Апрель 2019, 16:21:59
в каждом модуле свой список(то что есть именно в этом модуле)
а в рабочей системе объединять их в один?
Вроде в ДД где-то есть подобный механизм
Это по любому в памяти будет разворачиваться. А там не мало
Проще и быстрее - как я написал
Тем более дистр чисто фругальный. Надо все портировать
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: k0l0p0k от 08 Апрель 2019, 16:38:49
Добавить в 001 списки gtk2 gtk3 qt4 mesa и т.п. (а их в отдельные модули) и везде эти списки вырезать
а если юзер вздумает по стандарту проги ставить? - apt (apt-get) в сохраненку ?
ПМ будет считать что, например qt4 в системе есть, а его на самом деле нет
сейчас вот с mesa точно такая ситуация

Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 08 Апрель 2019, 16:41:37
Надо просто знать что эти модули дополнительно подключаются
Если даже забыл - в консоль выведется каких либ не хватает
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 12 Апрель 2019, 09:39:52
еще один недостаток apt2sfs выявился, несущественный:
скачивая крупный пакет(487мб) - индикации процесса не вижу, совсем, то ли висит, то ли скачивает - непонятно, хотя тут не столько apt2sfs сколько apt-get виноват наверное
посмотрите ключи apt-get
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: k0l0p0k от 12 Апрель 2019, 10:24:48
посмотрите ключи apt-get
или мониторить размер рабочего каталога ..
и попробовать сделать как в sfs-get прогрессбар ..
(мысли вслух :) )
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 12 Апрель 2019, 10:26:14
или мониторить размер рабочего каталога ..
возможно проще pv
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: k0l0p0k от 12 Апрель 2019, 10:43:26
или мониторить размер рабочего каталога ..
возможно проще pv
вариант
хотя du -h <каталог> мне кажется проще ..
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 12 Апрель 2019, 10:54:18
теоретически можно вообще chroot2pfs 001 и в нем запускать synaptic
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 12 Апрель 2019, 11:05:36
Вот с этим var и надо в 1ю очередь разобраться - есть ли смысл его держать в модуле...
пришел к выводу - нет. Достаточно иметь список пакетов из которых сделан модуль
На крайняк всегда можно по этому списку заново собрать
В аттаче trim-deb : создает в /var/lib/dpkg/имя_модуля.list этот список
И apt2sfs c trim-deb
Пример модуля  (http://forum.puppyrus.org/index.php?topic=21606.msg155884#msg155884)
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 12 Апрель 2019, 11:08:41
скачивая крупный пакет(487мб) - индикации процесса не вижу
https://askubuntu.com/questions/445245/how-do-i-enable-fancy-apt-colours-and-progress-bars
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: k0l0p0k от 12 Апрель 2019, 11:49:16
В аттаче trim-deb : создает в /var/lib/dpkg/имя_модуля.list этот список
6я строчка, добавил ключик f, без него rm много лишних вопросов задает:
rm -Rf "$1"/var/lib/dpkg
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: k0l0p0k от 12 Апрель 2019, 12:49:24
Цитата
скачивая крупный пакет(487мб) - индикации процесса не вижу
https://askubuntu.com/questions/445245/how-do-i-enable-fancy-apt-colours-and-progress-bars
не помогает
если в консоли apt-get install - прогресс и без этих модификаций виден
в apt2sfs прогресс apt-get update виден, а вот apt-get install на большом файле - почему-то нет
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: k0l0p0k от 12 Апрель 2019, 12:57:05
apt-get -y --force-yes install $INSTALL #| tee /tmp/aptout
закоментил tee - прогресс стало видно .. странно(277 строчка)
---
а используется этот /tmp/aptout только как лог apt-get'a при неудаче - особо не нужен
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 12 Апрель 2019, 15:27:19
закоментил tee - прогресс стало видно .. странно(277 строчка)
089-ddr01-upd-sf27.pfs (ftp://ftp.yandex.ru/puppyrus/ddr/ddr01/pfs/089-ddr01-upd-sf27.pfs)
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 28 Июнь 2019, 16:57:52
Разобрался с принципом работы AptToSfs (http://forum.puppyrus.org/index.php?topic=21828.new#new)
Доработал - если подключен pkg-ddr01*.pfs - не делает apt update
Название: Re: Вынести ПМ apt и пр. в отдельный модуль
Отправлено: ШАМАНЯ от 20 Июль 2019, 13:51:30
ddr01-1907-i686-test1.iso (http://file.puppyrus.org/users/pra/iso/ddr01-1907-i686-test1.iso)
Изменений много, возможно не совместимых с предыдущей базой 001-ddr01-sf18.pfs. Народ в отпусках, на дачах. Поэтому решил пока выложить тест исо
apt2sfs не смог сделать пакет htop
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 20 Июль 2019, 13:58:27
Вроде, те пакеты, что уже есть в базе - не сделать
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: erasy от 26 Июль 2019, 11:16:41
В DDR apt не рабочий.
Да ладно... Можно примеры? Лучше перейти в его раздел
Немного погорячился... В принципе, работает apt-get, у apt update на выходе ошибки GPG:
Код
W: Ошибка GPG: http://mirror.yandex.ru/debian stretch Release: gpgv, gpgv2 or gpgv1 required for verification, but neither seems installed
E: Репозиторий «http://mirror.yandex.ru/debian stretch Release» не подписан.
N: Обновление из этого репозитория нельзя выполнить безопасным способом, и поэтому по умолчанию он отключён.
N: Смотрите справочную страницу apt-secure(8) о создании репозитория и настройке пользователя.
И так со всеми репозиториями. И как результат:
Код
live@DDR01:~$ sudo apt install inkscape
Чтение списков пакетов… Готово
Построение дерева зависимостей     
Чтение информации о состоянии… Готово
E: Не удалось найти пакет inkscape
Я понимаю, что все это решаемо (а может и уже решено), просто получается, что куда ни ткнешь - всюду нужно сначала что-нибудь подпилить. (Кстати, в меню Программирование => Convert-SFS и Программирование => Распаковка составого PFS-пакета не работают (неверное имя ярлыка), но работают в консоли)

Apt2sfs, похоже, тоже использует apt, т.к. его работа заканчивается той же ошибкой:

Mount bind the main module, prepare the chroot.
OK
Copy contents /etc/resolv.conf to provide network connection.
OK
Copy status and available files.
OK
Do the required mount binds for chroot.
OK
non-network local connections being added to access control list
Checking network connection...
OK
Skip apt-get update
Installing to working directory: inkscape
Чтение списков пакетов… Готово
Построение дерева зависимостей     
Чтение информации о состоянии… Готово
E: Не удалось найти пакет inkscape
Restoring now, there were errors
Succesfully unmounted and cleaned up!
Directory /tmp/inkscape has been removed.
Press any key to close . . .
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 26 Июль 2019, 11:45:06
ошибки GPG:
Для экономии места, в DDR удалена проверка подписи пакетов (http://wiki.puppyrus.org/puppyrus/ddr?&#%D0%BE%D1%81%D0%BE%D0%B1%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B8_ddr)
Побочек, кроме таких сообщений не выявил. Как их отключить не знаю
sudo apt install inkscape - у меня норм. С какого исо ставили? Обновляли?
Я понимаю, что все это решаемо (а может и уже решено), просто получается, что куда ни ткнешь - всюду нужно сначала что-нибудь подпилить
Это форум любительских дистров. Тут других дистров нет
Зато они обладают уникальными особенностями, которых больше нет нигде
Чтобы уменьшить к-во ошибок нужно максимально использовать готовые решения
Но по фругалу их нет
Я про это Вам и написал в исходной теме
Встроенными в Slax консольными с gui-оберткой собственного изготовления)
У нас тут сейчас если кто и делает что-то - исключительно совсем свое
Причем все делают одно и то же, но объединяться, чтобы выдать качественный продукт, не хотят
Вот и вы туда же
Встроенными в Slax консольными с gui-оберткой собственного изготовления)
Есть иллюзии , что получится "без необходимости допиливания?"  :)

apt2sfs repo2pfs - все на apt , все работают
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: k0l0p0k от 26 Июль 2019, 11:46:46
у apt update на выходе ошибки GPG
некритично, хотя и неприятно
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 26 Июль 2019, 12:34:25
некритично, хотя и неприятно
Можно погуглить, почитать маны
Отключил через /etc/apt/apt.conf.d/99*
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: k0l0p0k от 26 Июль 2019, 12:55:28
Можно погуглить, почитать маны
конечно, но некогда, лето ..
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 26 Июль 2019, 13:40:45
работает apt-get, у apt update на выходе ошибки GPG
Поэкспериментировал
Похоже apt update не работает (возможно в конфигах надо gpg выкл)
apt-get update работает

Лечится
Код
# cat 99gpg-auth-no 
APT::Get::AllowUnauthenticated "true";
Acquire::AllowInsecureRepositories "true";
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 26 Июль 2019, 16:06:25
Лечится
089-ddr01-upd-sf50.pfs (ftp://ftp.yandex.ru/puppyrus/ddr/ddr01/pfs-test/089-ddr01-upd-sf50.pfs)
089-ddr01-upd-sf43e.pfs (ftp://ftp.yandex.ru/puppyrus/ddr/ddr01/pfs/089-ddr01-upd-sf43e.pfs)

Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: arcad от 31 Март 2021, 18:44:34
Делается свой модуль в DDR01 очень просто
Идем в Меню->Программирование->AptToSfs
Я бы так не сказал, так и не понял, как сделать из локального deb файла модуль.
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: krasnyh от 31 Март 2021, 19:25:20
Код
sudo repo2pfs путь/*.deb
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 01 Апрель 2021, 09:45:31
как сделать из локального deb файла модуль.
repo2pfs не покатит для локального. Только из репы
В apt2sfs вроде что-то подобное было - не разбирался
Универсальный рецепт для любого пакета здесь (https://wiki.puppyrus.org/puppyrus/pfs#%D0%B2%D0%B0%D1%80%D0%B8%D0%B0%D0%BD%D1%82%D1%8B_%D1%83%D0%BC%D0%B5%D0%BD%D1%8C%D1%88%D0%B5%D0%BD%D0%B8%D1%8F_%D1%80%D0%B0%D0%B7%D0%BC%D0%B5%D1%80%D0%B0_%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D1%8F)
Для локального пакета п.1 пропускаем
Вместо п.2 : Распаковать пакет : dpkg-deb –extract имя_пакета /путь/к/директории (https://wiki.puppyrus.org/setups/deb#%D0%BF%D0%B5%D1%80%D0%B5%D0%BF%D0%B0%D0%BA%D0%BE%D0%B2%D0%BA%D0%B0_deb)
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: krasnyh от 01 Апрель 2021, 10:07:57
repo2pfs не покатит для локального
Из-за неудовлетворенных зависимостей?

Я проверил на DDR с nano, он запустился:
Код
apt update
apt download nano
repo2pfs ./nano.deb
pfsload nano.pfs
nano
Название: Re: AptToSfs - cоздание модуля из .deb
Отправлено: sfs от 01 Апрель 2021, 10:23:08
Из-за неудовлетворенных зависимостей?
да. И nano тут плохой пример
Давно в эти скрипты не лазал. Уже не помню
Хотя - может и подтянет зависимости :
 Установка DEB файла с помощью apt (https://zalinux.ru/?p=3988)
Цитата
Программа apt также умеет устанавливать пакеты из указанных файлов, при этом одновременно будут установлены необходимые зависимости для этого пакета: sudo apt install ./ПАКЕТ.deb
2. Apt2Sfs собирает все подключенные модули в новый AUFS и делает в него chroot. Т.е. типа chroot2pfs
Возможно тут что-то получится с локальным деб
Ну или chrot2pfs + dpkg -i + apt-get install -f