Mamoru Tasaka 29aa73b
Name:		mcomix
Mamoru Tasaka 29aa73b
Version:	0.94
Mamoru Tasaka 29aa73b
Release:	2%{?dist}
Mamoru Tasaka 29aa73b
Summary:	User-friendly, customizable image viewer for comic books
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
Group:		Amusements/Graphics
Mamoru Tasaka 29aa73b
URL:		http://mcomix.sourceforge.net/
Mamoru Tasaka 29aa73b
# Version info: mcomix/mcomixstarter.py
Mamoru Tasaka 29aa73b
License:	GPLv2+
Mamoru Tasaka 29aa73b
Source0:	http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.bz2
Mamoru Tasaka 29aa73b
# Fedora specific: on Fedora's rpmbuild the following patch
Mamoru Tasaka 29aa73b
# is needed
Mamoru Tasaka 29aa73b
Patch0:		mcomix-0.92-fedora-rpmbuild-gtk.patch
Mamoru Tasaka 29aa73b
# Fedora specific(?): patch to search default localedir for gettext files
Mamoru Tasaka 29aa73b
Patch1:		mcomix-0.94-gettext-system-install.patch
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
BuildArch:	noarch
Mamoru Tasaka 29aa73b
BuildRequires:	gettext
Mamoru Tasaka 29aa73b
BuildRequires:	pygtk2
Mamoru Tasaka 29aa73b
BuildRequires:	python-imaging
Mamoru Tasaka 29aa73b
BuildRequires:	python-setuptools
Mamoru Tasaka 29aa73b
BuildRequires:	desktop-file-utils
Mamoru Tasaka 29aa73b
# The following BR is really needed for gconf2 macros
Mamoru Tasaka 29aa73b
BuildRequires:	GConf2
Mamoru Tasaka 29aa73b
Requires:	pygtk2
Mamoru Tasaka 29aa73b
Requires:	python-imaging
Mamoru Tasaka 29aa73b
Requires(pre):	GConf2
Mamoru Tasaka 29aa73b
Requires(preun):	GConf2
Mamoru Tasaka 29aa73b
Requires(post):	GConf2
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
%description
Mamoru Tasaka 29aa73b
MComix is a user-friendly, customizable image viewer. It is specifically
Mamoru Tasaka 29aa73b
designed to handle comic books, but also serves as a generic viewer. It
Mamoru Tasaka 29aa73b
reads images in ZIP, RAR, 7Zip or tar archives as well as plain image files. It
Mamoru Tasaka 29aa73b
is written in Python and uses GTK+ through the PyGTK bindings. 
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
%prep
Mamoru Tasaka 29aa73b
%setup -q
Mamoru Tasaka 29aa73b
%patch0 -p1 -b .rpmbuild
Mamoru Tasaka 29aa73b
%patch1 -p1 -b .gettext
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
%build
Mamoru Tasaka 29aa73b
# save timestamps
Mamoru Tasaka 29aa73b
sed -i -e 's|shutil.copy|shutil.copy2|' mcomix/main.py
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
# Rename: comicthumb -> mcomicthumb
Mamoru Tasaka 29aa73b
find . -name comicthumb\* | while read f
Mamoru Tasaka 29aa73b
do
Mamoru Tasaka 29aa73b
	mv $f $(echo $f | sed -e 's|comicthumb|mcomicthumb|')
Mamoru Tasaka 29aa73b
done
Mamoru Tasaka 29aa73b
grep -rl comicthumb . | xargs sed -i -e 's|comicthumb|mcomicthumb|g'
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
# Rename: application-x-foo.png -> application-x-mcomix-foo.png
Mamoru Tasaka 29aa73b
for f in mime/icons/*/application-x-*.png
Mamoru Tasaka 29aa73b
do
Mamoru Tasaka 29aa73b
	mv $f $(echo $f | sed -e 's|application-x|application-x-%{name}|')
Mamoru Tasaka 29aa73b
done
Mamoru Tasaka 29aa73b
grep -rl application-x . | while read f
Mamoru Tasaka 29aa73b
do
Mamoru Tasaka 29aa73b
	sed -i -e 's|application-x|application-x-%{name}|' $f
Mamoru Tasaka 29aa73b
done
Mamoru Tasaka 29aa73b
sed -i -e \
Mamoru Tasaka 29aa73b
	's|/application@x|/application@x-%{name}|' \
Mamoru Tasaka 29aa73b
	./mime/comicbook.schemas
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
# embed Fedora EVR
Mamoru Tasaka 29aa73b
sed -i -e "/^VERSION/s|^\(.*\)$|\1\nVERSION_fedora = '%{version}-%{release}'|" \
Mamoru Tasaka 29aa73b
	mcomix/constants.py
Mamoru Tasaka 29aa73b
sed -i -e "s|constants\.VERSION|constants.VERSION_fedora|" \
Mamoru Tasaka 29aa73b
	mcomix/about_dialog.py
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
for dir in mcomix/messages/*/LC*/
Mamoru Tasaka 29aa73b
do
Mamoru Tasaka 29aa73b
	msgfmt --statistics -o $dir/mcomix.mo $dir/mcomix.po || \
Mamoru Tasaka 29aa73b
		rm -f $dir/mcomix.mo
Mamoru Tasaka 29aa73b
done
Mamoru Tasaka 29aa73b
	
Mamoru Tasaka 29aa73b
%install
Mamoru Tasaka 29aa73b
python setup.py \
Mamoru Tasaka 29aa73b
	install \
Mamoru Tasaka 29aa73b
	--root $RPM_BUILD_ROOT
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
# Fix rpmlint on the following file on %%install,
Mamoru Tasaka 29aa73b
# not on %%prep, %%build
Mamoru Tasaka 29aa73b
sed -i -e '\@^#!.*%{_bindir}/env@d' \
Mamoru Tasaka 29aa73b
	$RPM_BUILD_ROOT%{python_sitelib}/%{name}/mcomixstarter.py
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
desktop-file-install \
Mamoru Tasaka 29aa73b
	--delete-original \
Mamoru Tasaka 29aa73b
	--remove-category Application \
Mamoru Tasaka 29aa73b
	--dir $RPM_BUILD_ROOT%{_datadir}/applications/ \
Mamoru Tasaka 29aa73b
	$RPM_BUILD_ROOT%{_datadir}/applications/%{name}.desktop
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/gconf/schemas
Mamoru Tasaka 29aa73b
install -cpm 644 ./mime/comicbook.schemas \
Mamoru Tasaka 29aa73b
	$RPM_BUILD_ROOT%{_sysconfdir}/gconf/schemas/%{name}.schemas
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
# gettext catalog files
Mamoru Tasaka 29aa73b
mkdir -p $RPM_BUILD_ROOT%{_datadir}/locale/
Mamoru Tasaka 29aa73b
mv $RPM_BUILD_ROOT%{python_sitelib}/%{name}/messages/*/ \
Mamoru Tasaka 29aa73b
	$RPM_BUILD_ROOT%{_datadir}/locale/
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
%find_lang %{name}
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
%pre
Mamoru Tasaka 29aa73b
%gconf_schema_prepare %{name}
Mamoru Tasaka 29aa73b
exit 0
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
%post
Mamoru Tasaka 29aa73b
%gconf_schema_upgrade %{name}
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
touch --no-create %{_datadir}/icons/hicolor
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
update-desktop-database &> /dev/null
Mamoru Tasaka 29aa73b
update-mime-database %{_datadir}/mime &> /dev/null
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
exit 0
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
%preun
Mamoru Tasaka 29aa73b
%gconf_schema_remove %{name}
Mamoru Tasaka 29aa73b
exit 0
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
%postun
Mamoru Tasaka 29aa73b
update-desktop-database &> /dev/null
Mamoru Tasaka 29aa73b
update-mime-database %{_datadir}/mime &> /dev/null
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
[ $1 -eq 0 ] || exit 0
Mamoru Tasaka 29aa73b
touch --no-create %{_datadir}/icons/hicolor
Mamoru Tasaka 29aa73b
%{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
exit 0
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
%posttrans
Mamoru Tasaka 29aa73b
%{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor
Mamoru Tasaka 29aa73b
exit 0
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
%files -f %{name}.lang
Mamoru Tasaka 29aa73b
%defattr(-,root,root,-)
Mamoru Tasaka 29aa73b
%doc COPYING ChangeLog README
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
%{_sysconfdir}/gconf/schemas/%{name}.schemas
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
%{_bindir}/%{name}
Mamoru Tasaka 29aa73b
%{python_sitelib}/%{name}/
Mamoru Tasaka 29aa73b
%{python_sitelib}/%{name}-%{version}-py*.egg-info/
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
%{_datadir}/applications/%{name}.desktop
Mamoru Tasaka 29aa73b
%{_datadir}/mime/packages/%{name}.xml
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
%{_mandir}/man1/mcomix.1*
Mamoru Tasaka 29aa73b
%{_mandir}/man1/mcomicthumb.1*
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
%{_datadir}/icons/hicolor/*/apps/%{name}*
Mamoru Tasaka 29aa73b
%{_datadir}/icons/hicolor/*/mimetypes/application-x-*.png
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
%changelog
Mamoru Tasaka 29aa73b
* Thu Oct 27 2011 Mamoru Tasaka <mtasaka@fedoraproject.org> - 0.94-2
Mamoru Tasaka 29aa73b
- Fix rpmlint issue
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
* Mon Oct 10 2011 Mamoru Tasaka <mtasaka@fedoraproject.org> - 0.94-1
Mamoru Tasaka 29aa73b
- 0.94
Mamoru Tasaka 29aa73b
Mamoru Tasaka 29aa73b
* Sun Aug 28 2011 Mamoru Tasaka <mtasaka@fedoraproject.org> - 0.92-1
Mamoru Tasaka 29aa73b
- Initial package
Mamoru Tasaka 29aa73b