LINUX.ORG.RU

Помогите составить спек для rpm

 ,


0

1

Нужно тут одну прогу закатать в rpm'ку. С rpm дистрами не работал.
У программки примерно такая иерархия директорий:

/prg_name
/icons/ #Иконки и другая лабуда
/libs/ #Либы
Остается просто добавить в %files?
А как правильно распаковать?
Спасибо!

★★★★★

Распаковать что? rpm-пакет?

mky ★★★★★
()

Взять простенький спек (например, этот) и поправить под себя.

Kuzz ★★★
()

Summary: blah-blah-blah
Name: blah-blah-blah
Version: 0.0.1
Release: 1%{?dist}
License: GPLv2
URL: http://blah-blah-blah.com
Source0: %{name}_%{version}.tar.gz
Group: blah-blah-blah/blah-blah-blah
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

BuildRequires: blah-blah-blah, blah-blah-blah

%description
blah-blah-blah

%prep
%setup -q
echo -e «2\n\/usr» | ./configure.sh

%build
make

%install
rm -rf $RPM_BUILD_ROOT

make install DESTDIR=$RPM_BUILD_ROOT

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-,root,root,-)
#%doc doc/*
%{_bindir}/*
%{_datadir}/%{name}/*
%{_datadir}/applications/*
%{_datadir}/pixmaps/*
%{_datadir}/doc/*
%{_mandir}/*

toney ★★★★★
()

А как правильно распаковать?

А, в смысле, прога уже собрана и в архиве, а ставиться будет в /opt?

Тогда в SOURCES - архив с программой +

%install
rm -rf $RPM_BUILD_ROOT
cp prg_name $RPM_BUILD_ROOT
mkdir $RPM_BUILD_ROOT/icons
cp icons/* $RPM_BUILD_ROOT/icons

Kuzz ★★★
()
Ответ на: комментарий от deterok

Если что - сегодня на Transmission GUI проверял. Так получается упаковать:

Name:		trgui
Version:	0.32
Release:	1%{?dist}
Summary:	Transmission GUI

Group:		Applications/System
License:	GPLv3+
URL:		http://code.google.com/p/ioping
Source0:	trgui-%{version}.tar.xz
BuildRoot:	%(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)

BuildRequires:	gcc, make

%description
This tool lets you monitor I/O latency in real time, in a way
similar to how ping(1) does for network latency.

%prep
%setup -q


%build


%install
rm -rf $RPM_BUILD_ROOT
mkdir $RPM_BUILD_ROOT
mkdir $RPM_BUILD_ROOT/opt
mkdir $RPM_BUILD_ROOT/opt/%{name}
cp history.txt  LICENSE.txt  readme.txt  transgui  transgui.gtk2  transgui.ico  transgui.png  VERSION.txt $RPM_BUILD_ROOT/opt/%{name}
mkdir $RPM_BUILD_ROOT/opt/%{name}/lang
cp lang/* $RPM_BUILD_ROOT/opt/%{name}/lang

%clean
rm -rf $RPM_BUILD_ROOT


%files
%defattr(-,root,root,-)
%attr(755,root,root) /opt/%{name}/*
%attr(755,root,root) /opt/%{name}/lang/*
%doc

%changelog
* Mon Aug  1 2011 Konstantin Khlebnikov <koct9i@gmail.com> - 0.6-1
init

И да, имя архива и директория с файлами (внутри архива) должны совпадать

Kuzz ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.