Blob Blame History Raw
Name:           childsplay
Version:        0.85.1
Release:        1%{?dist}
Summary:        Suite of educational games for young children
Group:          Amusements/Games
License:        GPL
URL:            http://childsplay.sourceforge.net/
Source0:        http://dl.sf.net/sourceforge/%{name}/%{name}-%{version}.tgz
Source1:        childsplay.desktop
Patch0:         childsplay-0.81.8-highscore.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildArch:      noarch
BuildRequires:  desktop-file-utils
Requires:       pygame, childsplay_plugins >= 0.85, hicolor-icon-theme

%description
Childsplay is a suite of educational games for young children. It's written in
Python and uses the SDL-libraries. The aim is to be educational and at the same
time be fun to play.

Some activities make use of language dependent voice samples, these sounds are
shared with gcompris. For those you'll have to install the gcompris-sound
package for the languages you intend to use. For example gcompris-sound-en .


%prep
%setup -q
%patch0 -p1 -z .highscore
# we don't use the buggy provided install
rm install.py
# the translation is merged into the assetml file, so don't ship it seperatly
rm -r assetml/childsplay/memory-136x136/po
# fixup the python scripts to call python directly and make them executable
sed -i 's!/usr/bin/env python!%{_bindir}/python!' %{name}.py letters-trans.py
chmod 755 %{name}.py letters-trans.py pyassetmlcreator.py
# move these out of Data so our wildcard install doesn't install them
mv Data/*.txt Data/logo_cp_*.png Data/childsplay.* .

%build
# INSTALL.sh is seriously borked, so DIY
echo "## Automated file please do not edit" > BASEPATH.py
echo "CPDIR=\"%{_datadir}/%{name}\"" >> BASEPATH.py  
echo "SHAREDATADIR=\"%{_datadir}/%{name}/Data\"" >> BASEPATH.py
echo "SHARELIBDATADIR=\"%{_datadir}/%{name}/plugins\"" >> BASEPATH.py
echo "LIBDIR=\"%{_datadir}/%{name}/plugins\"" >> BASEPATH.py
echo "MODULESDIR=\"%{_datadir}/%{name}/plugins\"" >> BASEPATH.py
echo "RCDIR=\"%{_datadir}/%{name}/plugins/ConfigData\"" >> BASEPATH.py
echo "LOCALEDIR=\"%{_datadir}/locale\"" >> BASEPATH.py
echo "ASSETMLDIR=\"%{_datadir}\"" >> BASEPATH.py
echo "CHILDSPLAYRC=\"childsplayrc\"" >> BASEPATH.py
echo "HOME_DIR_NAME=\".childsplay\"" >> BASEPATH.py


%install
rm -rf $RPM_BUILD_ROOT
# INSTALL.sh is seriously borked, so DIY
mkdir -p $RPM_BUILD_ROOT%{_bindir}
mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins
mkdir -p $RPM_BUILD_ROOT%{_datadir}/locale
mkdir -p $RPM_BUILD_ROOT%{_mandir}/man6
cp -a *.py  $RPM_BUILD_ROOT%{_datadir}/%{name}
ln -s ../share/%{name}/%{name}.py $RPM_BUILD_ROOT%{_bindir}/%{name}
ln -s ../share/%{name}/letters-trans.py \
  $RPM_BUILD_ROOT%{_bindir}/letters-trans
cp -a Data  $RPM_BUILD_ROOT%{_datadir}/%{name}
cp -a lib/* $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins
cp -a assetml/%{name}/* $RPM_BUILD_ROOT%{_datadir}/%{name}
cp -a locale/* $RPM_BUILD_ROOT%{_datadir}/locale
cp -a man/* $RPM_BUILD_ROOT%{_mandir}/man6

%find_lang %{name}

# below is the desktop file and icon stuff.
mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
desktop-file-install --vendor fedora            \
  --dir $RPM_BUILD_ROOT%{_datadir}/applications \
  --add-category X-Fedora                       \
  %{SOURCE1}
mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps
mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps
mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps
install -p -m 644 logo_cp_16x16.png \
  $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps/%{name}.png
install -p -m 644 logo_cp_32x32.png \
  $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps/%{name}.png
install -p -m 644 logo_cp_48x48.png \
  $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps/%{name}.png


%clean
rm -rf $RPM_BUILD_ROOT


%post
touch --no-create %{_datadir}/icons/hicolor || :
if [ -x %{_bindir}/gtk-update-icon-cache ]; then
   %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
fi

%postun
touch --no-create %{_datadir}/icons/hicolor || :
if [ -x %{_bindir}/gtk-update-icon-cache ]; then
   %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
fi


%files -f %{name}.lang
%defattr(-, root, root, -)
%doc README* doc/GPL* doc/README* License_*.ttf.txt
%{_bindir}/%{name}
%{_bindir}/letters-trans
%{_datadir}/%{name}
%{_mandir}/man6/*.6.gz
%{_datadir}/applications/fedora-%{name}.desktop
%{_datadir}/icons/hicolor/*/apps/%{name}.png


%changelog
* Fri Dec 22 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 0.85.1-1
- New upstream release 0.85.1

* Tue Oct 31 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 0.84.1-1
- New upstream release 0.84.1
- Install the (still used) assetml files under %%{_datadir}/%%{name} instead
  of under %%{_datadir}/assetml, since we no longer ship libassetml

* Fri Sep 22 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 0.83.1-1
- New upstream release 0.83.1

* Wed Sep  6 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 0.83-2
- Don't %%ghost the .pyo files (bug 205370)

* Sun Aug 27 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 0.83-1
- New upstream version 0.83

* Thu May 11 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 0.81.8-3
- Fix not finding of initial/default childsplayrc file.

* Wed May 10 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 0.81.8-2
- Ghost .pyo files
- BR: desktop-file-utils

* Fri May  5 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 0.81.8-1
- Initial package