Настройка и сборка mock-urpm(Для новичков)

Ответить
Аватара пользователя
Nemial
Сообщения: 600
Зарегистрирован: 13 дек 2014, 17:06
Operating system: ROSA Linux
Откуда: Калининград

Настройка и сборка mock-urpm(Для новичков)

Сообщение Nemial » 30 янв 2016, 22:26

А как собственно собирать с помощью mock-urpm, а то от многообразия опций у меня разбегаются глаза.
И хотелось бы знать тонкости данной программы, которые могут помочь в будущем.
AMD FX-8350\AMD Radeon R9 290\ 16 G RAM

Аватара пользователя
Галахов Роман
Сообщения: 2284
Зарегистрирован: 26 фев 2012, 20:02
Operating system: Rosa 2016.1 Fresh KDE (HP ProBook 440 G4 (y7z81ea))
Откуда: Моск. обл. Волоколамск

Re: Настройка и сборка mock-urpm(Для новичков)

Сообщение Галахов Роман » 30 янв 2016, 23:07

Такая тема уже есть http://forum.rosalab.ru/viewtopic.php?f ... hilit=mock
Rosa 2016.1 Fresh KDE5 x64-86 (HP ProBook 440 G4 (y7z81ea))

Аватара пользователя
Nemial
Сообщения: 600
Зарегистрирован: 13 дек 2014, 17:06
Operating system: ROSA Linux
Откуда: Калининград

Re: Настройка и сборка mock-urpm(Для новичков)

Сообщение Nemial » 31 янв 2016, 00:06

Я б не сказал, что название этой темы совпадает тем, что в той теме.
AMD FX-8350\AMD Radeon R9 290\ 16 G RAM

Xakep
Сообщения: 237
Зарегистрирован: 23 окт 2015, 17:45
Operating system: Linux ROSA Fresh R6
Win XP SP2
Win 10 Ent

Re: Настройка и сборка mock-urpm(Для новичков)

Сообщение Xakep » 31 янв 2016, 01:45

Если "новичок" не осилит то что описано в той теме, то ему не стоит вообще заниматься mock-urpm.
А если осилит, то эта тема не нужна...
О, сколько нам открытий чудных готовит Microsoft’а дух, и Intel - сын ошибок трудных, и Borland - Paradox’ов друг...

Аватара пользователя
VictorR2007
Сообщения: 5766
Зарегистрирован: 12 сен 2011, 13:00
Operating system: ROSA 2016.1
Откуда: Северодвинск

Re: Настройка и сборка mock-urpm(Для новичков)

Сообщение VictorR2007 » 31 янв 2016, 12:52

Там не так много опций.
Могу написать, как обычно им пользуюсь я.
Во первых, для создания src.rpm в домашнем каталоге нужен каталог rpmbuild.
В нём мне нужны только папки SOURCES и SRPMS.
Но вообще, если собирать пакеты с помощью команды rpm (опции),
то нужно ещё создать папки RPMS, SPEC и BUILD.
Тогда для создания нужного пакета src.rpm ложу все тарбалы и патчи в папку SOURCES.
Потом в папке со спеком даю команду rpm -bs *.spec.
Это если он один.
Нет нужды указывать его имя.
Готовый src.rpm будет в папке SRPMS.
Теперь о mock-urpm.
Всегда запускаю с ключём -v.
А то будет работать в фоне.
А так видно, как происходит сборка.
Если при сборке выдало ошибку, то после исправления спека и пересоздания src.rpm
запускаю с ключем --no-clean.
Тогда всё будет собираться в ранее созданном окружении.
Например, команда будет выглядеть так

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

mock-urpm -v --no-clean /home/victor/rpmbuild/SRPMS/qarecord-0.5.0-7.1.src.rpm
Немного попозже ещё допишу.

Аватара пользователя
VictorR2007
Сообщения: 5766
Зарегистрирован: 12 сен 2011, 13:00
Operating system: ROSA 2016.1
Откуда: Северодвинск

Re: Настройка и сборка mock-urpm(Для новичков)

Сообщение VictorR2007 » 31 янв 2016, 13:31

Теперь о первом запуске.
Даём например команду

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

mock-urpm -v /home/victor/rpmbuild/SRPMS/plasma5-kjots-5.0.0-0.1.src.rpm
При первом запуске выдаст запрос пароля администратора.
Вводим пароль, и поучаем запрос на какую платформу будет производиться сборка.
Так как источники берутся из системных источников,
то стоит заранее позаботиться на на время добавить их в источники программ.
Это, если например на Rosa-i586 вам нужно собрать пакеты для Rosa-x86_64 или
там Rosa-lts, OpenMandriva.
Выбираем нужное из списка и жмём Enter.
Рабочее окружение создаётся в каталоге /var/lib/mock-urpm
Я для удобства доступа добавляю его в точки входа.
Готовые пакеты будут в /var/lib/mock-urpm/Rosa-2014.1-x86_64/result
Ещё один важный каталог, это /var/cache/mock-urpm.
Если нужно добавить в сборочную дополнительные источники,
то нужно их добавить в системные источники,
потом очистить /var/cache/mock-urpm
и запустить пакет на сборку без параметра --no-clean.
При этом будет пересоздана сборочное окружение,
и в /var/cache/mock-urpm будут добавлены новые источники.
Но я не всегда поступаю так.
Иногда просто заменяю путь в файле

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

 /var/lib/mock-urpm/Rosa-2014.1-x86_64/root/etc/urpmi/urpmi.cfg
в необязательной строке, которая не отмечена как ignore
на нужный источник.
Потом даю команду

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

mock-urpm -v --update
Кстати, если выдаётся ошибка на установку пакетов при сборке,
можно установить командой

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

mock-urpm -v --install имя
или

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

mock-urpm -v --install путь к пакету

Аватара пользователя
Nemial
Сообщения: 600
Зарегистрирован: 13 дек 2014, 17:06
Operating system: ROSA Linux
Откуда: Калининград

Re: Настройка и сборка mock-urpm(Для новичков)

Сообщение Nemial » 06 фев 2016, 15:05

VictorR2007, а у вас было такое что при обновлении mock-urpm --update(то есть его окружения), он ломал базу rpm, причем конкретно, что потом было нельзя обновиться основной системе. Да и стоит ли обновлять окружение или проще очистить окружение и закачать все заново?
AMD FX-8350\AMD Radeon R9 290\ 16 G RAM

Аватара пользователя
VictorR2007
Сообщения: 5766
Зарегистрирован: 12 сен 2011, 13:00
Operating system: ROSA 2016.1
Откуда: Северодвинск

Re: Настройка и сборка mock-urpm(Для новичков)

Сообщение VictorR2007 » 06 фев 2016, 17:55

Nemial писал(а):VictorR2007, а у вас было такое что при обновлении mock-urpm --update(то есть его окружения), он ломал базу rpm, причем конкретно, что потом было нельзя обновиться основной системе.
Нет, никогда не ломал.
Но я не пользуюсь стандартным mock-urpm.
У меня подключены локальные репы на внешнем диске.
А стандартный mock-urpm после создания сборочного окружения всё размонтирует, а потом, при подключении реп для
установки необходимых для сборки пакета зависимостей не может подключить локальные репы.
Поэтому сделал себе пакет mock-urpm-1.3.9-37, у которого таких проблем нет.
Можно посмотреть его здесь http://abf-downloads.rosalinux.ru/victo ... osa2014.1/
Да и стоит ли обновлять окружение или проще очистить окружение и закачать все заново?
Не всегда.
Если собирать локально много пакетов, например plasma5, то и без очистки кеша уходит примерно 8-10 часов.
А если очищать, то уйдёт пара суток.

Аватара пользователя
Nemial
Сообщения: 600
Зарегистрирован: 13 дек 2014, 17:06
Operating system: ROSA Linux
Откуда: Калининград

Re: Настройка и сборка mock-urpm(Для новичков)

Сообщение Nemial » 06 фев 2016, 19:51

VictorR2007. А как можно сделать локальные репы на диск?(может мне тоже будет так проще). И как тогда заставить подключить mock-urpm локальные репозитории?
AMD FX-8350\AMD Radeon R9 290\ 16 G RAM

Аватара пользователя
VictorR2007
Сообщения: 5766
Зарегистрирован: 12 сен 2011, 13:00
Operating system: ROSA 2016.1
Откуда: Северодвинск

Re: Настройка и сборка mock-urpm(Для новичков)

Сообщение VictorR2007 » 06 фев 2016, 20:17

Nemial писал(а):VictorR2007. А как можно сделать локальные репы на диск?(может мне тоже будет так проще).
Подключить диск, и создать на нём папку mirror
Потом нажать F3 и в соседней вкладке открыть домашний каталог.
Перетащить туда папку mirror и выбрать из всплывающего списка действий «Создать ссылку».
Далее запустить нужный из приложенных скриптов.
Если нужно, что-бы при синхронизации так-же загружались пакеты src.rpm,
то добавляем ключ --sources

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

sh rosa_mirror_script_x86_64.sh --sources
И как тогда заставить подключить mock-urpm локальные репозитории?
Уже писал выше.
Подключаем эти источники в управлении источниками.
Потом очищаем /var/cache/mock-urpm/
Потом запускаем сборку без параметра --no-clean.
Если запустить с этим параметром, то опять создастся кеш в /var/cache/mock-urpm/
со старыми источниками.
Если для сборки нужно сначала собрать необходимые зависимости,
то собираем нужный пакет, кладём в нужную папку и запускаем команду genhdlist2.
Например

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

genhdlist2 /home/victor/mirror/office/
Потом так-же подключаем его в источнике программ и всё повторяем.
Можно это сделать сразу, положив туда любой пакет из реп и подключить в источниках.
Потом только добавляем туда новые пакеты и заново запускаем genhdlist2 /home/victor/mirror/office/
а потом mock-urpm --update.
Тогда можно быстро продолжить сборку с параметром --no-clean.
Надеюсь что пишу понятно.
Если что, переспрашивайте.
Вложения
rosa_mirror_script_x86_64.sh.tar.gz
(8.89 КБ) 619 скачиваний
rosa_mirror_script_x86.sh.tar.gz
(8.9 КБ) 575 скачиваний

Аватара пользователя
Nemial
Сообщения: 600
Зарегистрирован: 13 дек 2014, 17:06
Operating system: ROSA Linux
Откуда: Калининград

Re: Настройка и сборка mock-urpm(Для новичков)

Сообщение Nemial » 16 янв 2017, 18:12

VictorR2007, а ты уже пробовал создавать локальные репы 2016.1 платформы, а то у меня не получается(скрипт с ней не работает)
AMD FX-8350\AMD Radeon R9 290\ 16 G RAM

Аватара пользователя
VictorR2007
Сообщения: 5766
Зарегистрирован: 12 сен 2011, 13:00
Operating system: ROSA 2016.1
Откуда: Северодвинск

Re: Настройка и сборка mock-urpm(Для новичков)

Сообщение VictorR2007 » 16 янв 2017, 18:36

Nemial писал(а):VictorR2007, а ты уже пробовал создавать локальные репы 2016.1 платформы, а то у меня не получается(скрипт с ней не работает)
У них пока выключена синхронизация.
Можно проверять по яндексу.
Как там начнут обновляться пакеты, так можно создать локальные репы.

Ответить