Make RPM

Если у вас есть tar. Который нужно запаковать в rpm делать нужно примерно так:

# mkdir /root/rpmbuild
# cd /root/rpmbuild
# rpmdev-setuptree
# cd SOURCES/
# git clone -b BRANCHNAME https://YOUGITNAME.ru/REPO.git app
Cloning into 'app'...
remote: Counting objects: 3388, done.
remote: Compressing objects: 100% (2091/2091), done.
remote: Total 3388 (delta 1612), reused 1111 (delta 477)
Receiving objects: 100% (3388/3388), 552.47 KiB | 0 bytes/s, done.
Resolving deltas: 100% (1612/1612), done.
# rm -fr app/.git
# tar -zcf 123.tar.gz app
# cd ../SPECS
# wget https://YUOREPO>ru/123.spec ./
# rpmbuild --define '_topdir /root/rpmbuild/' -ba 123.spec

И собственно spec-файл:

# Имя пакета
Name: 123

# Небольшое описание для пакета
Summary: 123 Test for APP

# Версия вашего пакета
Version: 1.0

# Номер релиза пакета
Release: 1

# Любые лицензии которые вы хотите использовать
License: GNU GPL

# Какая группа 
Group: Applications

# Имя Фамилия человека
Packager: Name Surname

# Архитектура пакета (noarch/x86_64/i386/etc)
Buildarch: noarch

# Здесь можно ничего не трогать
Buildroot: %{_tmppath}/%{name}

# Пакер какой использован
#  tar / tar.gz / tar.bz2
Source0: %{name}.tar.gz

# Если rpm пошел узнавать про зависимости раскоментируй:
#AutoReqProv: no

# Если есть зависимости раскоментируй: 
#Requires: bash

# Подробное описание 
%description
123 for APP main application

# Это можно не трогать
%define debug_package %{nil}


%prep
%setup -q -c
cd app
#Тут можно сделать что-то до билда

%build
cd app
#Тут можно делать что-то во время билда

%install
rsync -a . %{buildroot}/

%clean
rm -rf %{buildroot}

%pre

%post

%preun

%postun

#%trigger

#%triggerin

#%triggerun

%changelog
* Tue Jun 01 2021 Name Surname <None>
- Test version.

%files
%attr(0755, root, root) %dir "/app"
%attr(0644, root, root) "/app/README.md"

#И дальше также все файлы по аналогии файлы лежат в SOURCES

Запись опубликована в рубрике Linux, Без рубрики. Добавьте в закладки постоянную ссылку.

Добавить комментарий