Страница 1 из 1

как собрать свой rpm

Добавлено: 16 ноя 2021, 22:12
ArturS
Всем привет. Хочу поучаствовать в улучшении дистрибутива.
Но для этого нужно знать как создаются пакеты rpm.
Естественно, попытался почитать документацию. Более бестолковой и абстракной документации я ещё не видел...
rpm создаётся в каждом дистрибутиве со своими особенностями, но все отсылают читать основы к redhat.
Ведь всё сводится к конкретным шагам. Сначала сделай то, потом это.
А вот почему надо это делать, смотри пункт такой то в документации.
Вот это понятно. Такого я не нашёл, поэтому решил организовать диалог в форуме - как собрать свой rpm?
Меня интересуют тонкости присущие дистрибутиву РОСА.
Вопрос первый.
Я установил дистрибутив. Как подготовить окружение для создания пакетов rpm?
Как пример, страничка из wiki дистрибутива PCLinuxOS.
Там это не работает по причине устаревших скриптов, но смысл то понятен!
Хочется подобного алгоритма от РОСы...
Здесь мой кривой неоконченный перевод этой странички...

как собрать свой rpm

Добавлено: 16 ноя 2021, 22:25
ДонВенчензо
Зачем какие-то другие дистры. Своя ВиКи есть
http://wiki.rosalab.ru/ru/index.php?sea ... 1%82%D0%B8
Особенность перехода с rpm5 на rpm5 http://wiki.rosalab.ru/ru/index.php/%D0 ... 0%B0_RPM_4

как собрать свой rpm

Добавлено: 16 ноя 2021, 22:48
ArturS
Молодой человек чего то не понял...

как собрать свой rpm

Добавлено: 17 ноя 2021, 06:04
irton
Тонкости присущие дистрибутиву, можно смотреть непосредственно в spec файлах похожих не тот который хотите сделать.

На вики есть статья по началам работы с rpm и по структуре spec файла. Кроме этого есть Rosa templates - шаблоны спеков.

Ну и кроме того конкретности можно в группе телеграма подспросить, быстро отвечают обычно.

Как подготовить окружение, на вики тоже встречал. (Там несколько каталогов создать типа BUILD, BUILDROOT, SRPM и т.п.

как собрать свой rpm

Добавлено: 17 ноя 2021, 10:41
ArturS
irton писал(а):
17 ноя 2021, 06:04
(Там несколько каталогов создать типа BUILD, BUILDROOT, SRPM и т.п.
Так, начало есть.
SPEC разбирать будем в последнюю очередь. Именно поэтому считаю документацию по rpm бестолковой. Всегда пытаются впихнуть в первую очередь инфу про SPEC. Понял я уже, что SPEC - это рецепт по сборке пакета.
Сначала создадим окружение.
Я пишу на shell скриптик. Запускаю его от пользователя. Поправьте, пожалуйста, если что то пропустил.

Код: Выделить всё

#!/bin/sh
mkdir -p ~/rpmbuild/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS}
Дальше...

Какие пакеты дополнительно нужно установить в дистрибутиве ROSA для компилирования бинарных пакетов?

Существует ли одна команда для этого, как допустим в debian подобных диистрибутивах:

Код: Выделить всё

sudo apt-get install build-essential dh-make

как собрать свой rpm

Добавлено: 17 ноя 2021, 11:43
irton
Для компилирования нужен компилятор, но надо знать что ты компилировать собрался, т.е. gcc или может clang нужен, для питона python3-devel, для java - java-jdk , для ruby надо ruby это все вот понимать надо.

И поэтому я использую компиляцию в chroot. Т.е. у меня система puppy, а когда надо компилировать, я захожу в chroot от rosa и там компилирую.

как собрать свой rpm

Добавлено: 17 ноя 2021, 18:46
ArturS
Я понимаю вопрос так, как это прописано в lfs. rpm для меня новый взгляд на реальность. Понимаю, что в понятие devel включаются файлы(заголовки), необходимые для создания пакета. Их необходимо установить на время создания пакета, потом можно удалить. Понимаю, что есть прямые зависимости, без которых пакет работать не будет. Вот попытался добавить нехватающую зависимость к пакету medit - pygtk2. Это же ужас!!! Кто писал эту хрень? Ничего не понятно и ничего не работает! Казалось бы, чего проще? возьми готовый пакет с минимумом зависимостей и покажи на shell-командах. Нет, надо же поумничать, написать тонну мусора, чтобы никто не догадался. Вот и создал эту тему, чтобы понять, что там понаписали...

как собрать свой rpm

Добавлено: 17 ноя 2021, 20:18
ArturS
Вот скажите мне, почему этот пакет компилируется в ROSA, а rpm нет?
Подсказываю. нужно запустить скрипт rpkg.

как собрать свой rpm

Добавлено: 18 ноя 2021, 11:51
irton
Rpm создается из информации в spec файле, причем вызов компилятора и установка нужных зависимостей прописываются в spec и отдельно вызывать rpkg не требуется. Ваш пакет навереяка уже есть в Роса, можно посмотреть как спек сделан.

как собрать свой rpm

Добавлено: 18 ноя 2021, 11:58
irton
Наиболее простой способ вкатиться в сообщество:
1. Зарегистрироваться на abf
2. В свою персональную репу склонировать проект который хочется обновить
3. Попытаться обновить и проверить компиляцию в своем репозитарии.
4. Отправить пулл реквест в основной репозитарий.

как собрать свой rpm

Добавлено: 26 ноя 2021, 19:53
Barmalei
Форум в последнее время вымер. Отвечать некому стало.

как собрать свой rpm

Добавлено: 27 ноя 2021, 02:32
VictorR2007
ArturS писал(а):
26 ноя 2021, 22:52
К слову, скрин из PCLinuxOS, WM - IceWM, который ещё недоступен в вашей системе... ABF... Заставь дурака богу молиться... Это я не Вам!
Мы тут не трогаем PCLinuxOS. Развивается и мы рады за неё.
Вы пришли к нам сюда, так что будьте скромнее, и не трогайте Росу и не задевайте нас.
Мы вам не навязываемся, и не просим нас оценивать.
Так что или идите к себе в форум PCLinuxOS, или ведите здесь без флуда в темах и без всяких сравнений,
где и какая ОС лучше.
У нас форум не про это.

З.Ы.
Почистил флуд выше в этой теме.

как собрать свой rpm

Добавлено: 27 ноя 2021, 07:04
irton
В смысле нету icewm, когда были пруфы что он есть :))

как собрать свой rpm

Добавлено: 27 ноя 2021, 07:16
va9(2)
Barmalei писал(а):
26 ноя 2021, 19:53
Форум в последнее время вымер. Отвечать некому стало.
Не только с форумом это произошло. Еще и с сообществом росы в вк, с группой в телеге.

По теме, самое сложное для новичка, имхо, это найти и указать все необходимые зависимости для сборки пакета.