Appendix E. Sample spec file for desktop menu package
The following spec file is an example of how you could package a desktop entry (.directory) file and a desktop menu (.menu) file in an RPM package for shipping. Refer to Section 4.8.1.3. Desktop menu entries for documents for the structure of these files.
This example assumes a desktop entry file named menu-example.directory, a desktop menu file named menu-example.menu, and a readme file named README are located in a directory named menu-example-0 that is archived as menu-example-0.tgz.
When built, this results in a package named menu-example.
Name: menu-example
Version: 0
Release: 8%{?dist}.t1
Summary: Example of how to do a documentation menu package
Group: Development/Tools
License: GPLv2+
URL: http://engineering.redhat.com
Source0: %{name}-%{version}.tgz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildArch: noarch
%description
Example of how to do a documentation menu package
%prep
%setup -q
%build
%install
rm -rf %{buildroot}
mkdir -p $RPM_BUILD_ROOT%{_datadir}/desktop-directories
mkdir -p $RPM_BUILD_ROOT/etc/xdg/menus/settings-merged
install -m644 menu-example.directory $RPM_BUILD_ROOT%{_datadir}/desktop-directories/menu-example.directory
install -m644 menu-example.menu $RPM_BUILD_ROOT%{_sysconfdir}/xdg/menus/settings-merged/menu-example.menu
%{_fixperms} $RPM_BUILD_ROOT/*
%clean
rm -rf %{buildroot}
%files
%defattr(-,root,root,-)
%doc README
%{_datadir}/desktop-directories/menu-example.directory
%config(noreplace) %{_sysconfdir}/xdg/menus/settings-merged/menu-example.menu
%changelog
* Tue Nov 23 2010 Jeff Fearn <jfearn@redhat.com> 0-8
- Creation