Blob Blame History Raw
%{!?ruby_sitelib:	%global ruby_sitelib	%(ruby -rrbconfig -e "puts Config::CONFIG['sitelibdir']")}
%define		rubyabi		1.8
%define		repoid		53230

%define		majorver	0.6.4.1
%undefine		minorver	

%define		fedorarel	6
%define		rel		%{?minorver:0.}%{fedorarel}%{?minorver:.%minorver}



Name:		alexandria
Version:	%{majorver}
Release:	%{rel}%{?dist}
Summary:	Book collection manager

Group:		Applications/Productivity
License:	GPLv2+
URL:		http://alexandria.rubyforge.org/
Source0:	http://rubyforge.org/frs/download.php/%{repoid}/%{name}-%{version}%{?minorver}.tar.gz
# Use 2 arguments format for bindtextdomain() instead of
# deprecated 4 arguments format
# ref: alexandria-Bugs-24882 alexandria-Bugs-24882
Patch0:		alexandria-0.6.4.1-use-2args-bindtextdomain.patch
# Fix for issue with right click on left pane
# ref: alexandria-Bugs-25021
Patch1:		alexandria-0.6.4.1-right-click-left-pane.patch
# Trial fix for hang up when importing list containing invalid isdn
# ref: alexandria-Bugs-25348
Patch2:		alexandria-0.6.4.1-hang-importing-invalid-isdn.patch
BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

BuildArch:	noarch
BuildRequires:	ruby(abi) = %{rubyabi}
BuildRequires:	rubygem(rake)
BuildRequires:	desktop-file-utils
BuildRequires:	gettext
BuildRequires:	intltool
BuildRequires:	scrollkeeper

BuildRequires:	ImageMagick

Requires:	ruby
Requires:	ruby(abi) = %{rubyabi}

# Amazon AWS v3 -> v4 switch
# AWS v4 is supported by alexandria itself
# But hpricot is still needed
#Requires:	ruby(amazon)
Requires:	ruby(gettext-package)
Requires:	ruby(hpricot)
Requires:	ruby(htmlentities)
Requires:	ruby(imagesize)
# Dependency removed on 0.6.4b1
#Requires:	ruby(mechanize)
Requires:	ruby(revolution)

# ruby(zoom) -> rubygem(zoom) switch
#Requires:	ruby(zoom)
Requires:	rubygem(zoom) >= 0.3.0
Requires:	ruby(marc)

Requires:	ruby(gconf2)
Requires:	ruby(gdkpixbuf2)
Requires:	ruby(glib2)
Requires:	ruby(gnome2)
Requires:	ruby(libglade2)

Requires(post):		scrollkeeper
Requires(postun):	scrollkeeper
Requires(pre):		GConf2
Requires(post):		GConf2
Requires(preun):	GConf2

%description
Alexandria is a GNOME application to help you manage your book collection.

%prep
%setup -q -n %{name}-%{majorver}%{?minorver}
%patch0 -p0 -b .up24882
%patch1 -p0 -b .up25021
%patch2 -p0 -b .up25348

# Embed Fedora EVR
%{__sed} -i.evr \
	-e "s|\(b.display_version = \).*$|\1'%{version}-%{release}'|" \
	Rakefile

%build
rake build


%install
%{__rm} -rf $RPM_BUILD_ROOT

# disable scrollkeeper
%{__rm} -rf tmpbin
%{__mkdir} tmpbin
%{__ln_s} -f /bin/true tmpbin/scrollkeeper-update
%{__ln_s} -f /bin/true tmpbin/gconftool-2
%{__ln_s} -f /bin/true tmpbin/gtk-update-icon-cache

export PATH="$(pwd)/tmpbin:$PATH"
#export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1
export PREFIX=$RPM_BUILD_ROOT%{_prefix}

rake install

%{__mkdir_p} $RPM_BUILD_ROOT%{_datadir}/applications/
desktop-file-install \
	--vendor fedora \
	--dir $RPM_BUILD_ROOT%{_datadir}/applications/ \
	--delete-original \
	$RPM_BUILD_ROOT%{_datadir}/applications/%{name}.desktop

# create 64x64, 128x128 icon
for s in 64 128 ; do
	%{__mkdir_p} $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${s}x${s}/apps/
	convert -scale ${s}x${s} \
		data/alexandria/icons/%{name}.png \
		$RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${s}x${s}/apps/%{name}.png
done

%{__mkdir_p} $RPM_BUILD_ROOT%{_sysconfdir}/gconf/schemas/
%{__install} -c -p -m 0644 schemas/%{name}.schemas \
	$RPM_BUILD_ROOT%{_sysconfdir}/gconf/schemas/

%{__mkdir_p} $RPM_BUILD_ROOT%{_datadir}/locale/
%{__cp} -pr data/locale/* $RPM_BUILD_ROOT%{_datadir}/locale/

# Clean up documents
%{__rm} -rf $RPM_BUILD_ROOT%{_defaultdocdir}

# %%{_datadir}/menu seems to be used for debian
# Removing for Fedora
%{__rm} -rf $RPM_BUILD_ROOT%{_datadir}/menu/

%find_lang %{name}

%clean
%{__rm} -rf $RPM_BUILD_ROOT

%pre
if [ "$1" -gt 1 ]; then
	export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source`
	gconftool-2 --makefile-uninstall-rule \
		%{_sysconfdir}/gconf/schemas/%{name}.schemas >/dev/null
fi
exit 0

%post
touch --no-create %{_datadir}/icons/hicolor/

%{_bindir}/scrollkeeper-update -q -o %{_datadir}/omf/%{name}

export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source`
gconftool-2 --makefile-install-rule \
	%{_sysconfdir}/gconf/schemas/%{name}.schemas > /dev/null
exit 0

%preun
if [ "$1" -eq 0 ]; then
	export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source`
	gconftool-2 --makefile-uninstall-rule \
		%{_sysconfdir}/gconf/schemas/%{name}.schemas > /dev/null
fi
exit 0

%postun
%{_bindir}/scrollkeeper-update -q
[ "$1" -eq 0 ] || exit 0

touch --no-create %{_datadir}/icons/hicolor/
%{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor

exit 0

%posttrans
%{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor
exit 0

%files -f %{name}.lang
%defattr(-,root,root,-)
%doc COPYING
%doc ChangeLog 
%doc INSTALL
%doc README*
%doc TODO
%doc doc/[A-Z]*
%doc doc/cuecat_support.rdoc

%{_mandir}/man1/%{name}.1*

%{_bindir}/%{name}
%{ruby_sitelib}/%{name}.rb
%{ruby_sitelib}/%{name}/

%{_sysconfdir}/gconf/schemas/%{name}.schemas

%{_datadir}/%{name}/
%{_datadir}/gnome/help/%{name}/
%{_datadir}/omf/%{name}/
%{_datadir}/sounds/%{name}/

%{_datadir}/applications/fedora-%{name}.desktop
%{_datadir}/icons/hicolor/*/apps/%{name}.*

%changelog
* Mon Apr 13 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.4.1-6
- Trial fix to fix hang when importing list containing invalid
  isdn (alexandria-Bugs-25348)

* Wed Apr  8 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.4.1-5
- Embed Fedora EVR

* Tue Apr  7 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.4.1-4
- Fix for strange behavior with right click on left pane
  (alexandria-Bugs-25021)

* Thu Mar 26 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.4.1-2
- Fix arguments of bindtextdomain() for ruby(gettext) 2.0.0
  (alexandria-Bugs-24882)

* Mon Mar 16 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.4.1-1
- 0.6.4.1 (fixing alexandria-Bugs-24568)

* Sun Mar 15 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.4-1
- 0.6.4
- Patch from upstream to fix issue when book entry is once sorted
  (alexandria-Bugs-24568)

* Fri Mar  6 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.4-0.2.b1
- Add ruby(htmlentities) dependency

* Tue Mar  3 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.4-0.1.b1
- Update to 0.6.4 beta 1
- Drop all patches, merged into upstream

* Fri Feb 27 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.3-11
- library UTF-8 patch update

* Thu Feb 26 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.3-10
- Use upstreamed patch for UTF-8 strings issue

* Thu Feb 26 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.3-9
- Attempt to handle UTF-8 strings in library names correctly
  (alexandria-Bugs-20168)

* Tue Feb 24 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp>
- F-11: Mass rebuild

* Tue Feb 24 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.3-8
- Global-ize "nested" macro
- GTK icon cache update scripts update

* Wed Feb  4 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.3-7
- Add hpricot dependency again (for Amazon provider)

* Sun Jan 11 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.3-6
- Rebuild to restore ARCHIVESIZE

* Wed Jul 16 2008 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.3-5
- Remove workaround for bug 436697 (tooltips crash).
  This was a bug on ruby-gnome2 which is fixed in 0.17.0 rc1
  (ref: alexandria-Bugs-19042)

* Thu Apr  3 2008 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.3-4
- Drop ruby(amazon) dependency (Amazon no longer provides AWSv3,
  AWSv4 is supported by alexandria itself)

* Sun Mar 23 2008 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.3-2
- Disable tooltips on_motion func for now to workaround for
  bug 436697

* Sat Feb 23 2008 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.3-1
- 0.6.3
- One patch removed (applied by upstream)

* Mon Dec 31 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.2-2
- Trial workaround patch for bug 427070

* Thu Dec 20 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.2-1
- 0.6.2
- Two patches for 0.6.2b2 are removed.

* Sun Dec 16 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.2-0.6.b2
- Pass exception when user don't use evolution for mailer.
- Fix crash when yelp is not installed.
- Add INSTALL to %%doc as this file contains some useful information.

* Wed Dec 12 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.2-0.3.b2
- Also require ruby(revolution)

* Tue Nov 13 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.2-0.2.b2
- Add more requires of ruby modules to support more function

* Sun Nov  4 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.2-0.1.b2
- And try 0.6.2 beta 2

* Fri Nov  2 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.2-0.1.b1
- Try 0.6.2 beta 1

* Fri May 11 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.1-3
- This time completely disable scrollkeeper-update
- Create 128x128 icon also

* Tue May  1 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.1-2
- Fix scriptlets typo

* Sun Apr 22 2007 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 0.6.1-1
- Initial packaging