К основному контенту

Mock in Fedora

В Fedora есть такой прекрасный инструмент mock .
Mock позволяет без лишнего захламливания системы правильно собирать rpm пакеты. Причем можно это делать под разные релизы и архитектуру.

Вот краткая инструкция к применению:
1. Инсталируем mock если он не установлен
su -c 'yum install mock -y'
2. Добавляем нужного пользователя в группу mock
su -c 'adduser -m -G mock user'
3. Теперь от добавленого пользователя в удобном месте делаем 3 каталога:
mkdir ./results
mkdir ./specs
mkdir ./sources
Первый каталог results в него будут помещаться полученые rpm, во второй каталог specs, помещаем необходимые spec файлы и в каталог sources складываем необходимые исходники.

4. Собираем src.rpm пакет
mock -r fedora-18-x86_64 --arch=x86_64 --init --resultdir=./results --buildsrpm --spec=./specs/name.spec --sources=./sources
В даном примере выбрана конфигурация под fedora-18-x86_64 и архитектуру x86_64

5. Собираем бинарный rpm пакет
mock -r fedora-18-x86_64 --no-cleanup-after --arch=x86_64 --resultdir=./results --rebuild ./results/name.src.rpm
опция --no-cleanup-after нужна чтобы небыло очистки chroot, посмотреть результаты ошибок в каталоге ./results

Прекрасная документация по mock находиться на официальной Wiki .

Комментарии

Популярные сообщения из этого блога

FF 31.x ESR and Nagios Checker

Оказывается FireFox 31.x сделали ESR. И достаточно быстро его затискали в обновление CentOS 6 . Но этот Firefox уже с новым интерфейсом и на нем отсутcтвует статус бар внизу :( В частности я использую Nagios Checker его перенести нельзя и мне это доставляет большое неудобство. К счастью прям на странице Nagios Checker рекомендуют установить дополнение status-4-evar , и все сразу становится как было :)

bootc

 С большим опозданием, хочу сообщить вам о новой крутой технологии bootc . Получается она вышла достаточно давно, и уже с весны 2025 года стала доступна в RHEL 10. Сам я с этой технологией познакомился случайно, благодаря статье про Fedora Hummingbird из журнала Fedora Magazine . Там упоминается это замечательная технология как bootc. По сути bootc - переводится как загружаемый контейнер.  Т.е. контейнер может работать как обычный OCI/Docker контейнер, но также может работать в виртуальных машинах и даже на голом железе. Причем сам контейнер по сути есть атомарный т.е. (immutable) и после создания его нельзя изменить и как следствие надежный и безопасный. При обновлении старый объект удаляется и заменяется новым. Причем все это может делать сам контейнер, следить о появлении новой версии в регистре, скачивать слой контейнера и если что не так то откатывать изменение. Причем вся сборка этого контейнера управляется через API (API-driven), т.е. полная автоматизация, модульность...

Install Redmine 2.3.1 in CentOS 6.x

Я собрал стек Ruby on Rails версии 3.2.13 под ruby 1.8.7 из дистрибутива CentOS 6.x. Теперь можно легко и просто установить на сервер с EL6 систему управления проектами Redmine версии 2.3.1 . Установить все это можно простым скриптом ( если не нравится скрипт то можно посмотреть внутрь него и выполнить все шаги руками ) Загрузка скрипта P.S. К сожалению из за невозможности удалять пакеты в системе сборки koji пришлось сделать репозитарий на google drive. P.P.S. С помощью костылей в виде указывание EPOCH в spec, удалось таки собрать пакеты в russian KOJI, так что в качестве репозитария можно указывать теперь: baseurl=http://koji.russianfedora.ru/repos/dist-el6-build/latest/$basearch/