Blob Blame History Raw
%define realname childsplay_sp
%define alphabet_ver 0.9

Name:           childsplay
Version:        1.4
Release:        2%{?dist}
Summary:        Suite of educational games for young children
Group:          Amusements/Games
License:        GPLv3
URL:            http://www.schoolsplay.org/
Source0:        http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tgz
Source1:        childsplay.desktop
Source2:        childsplay.README.RPM
Source10:       alphabet_sounds_bg-%{alphabet_ver}.tgz
Source11:       alphabet_sounds_ca-%{alphabet_ver}.tgz
Source12:       alphabet_sounds_de-%{alphabet_ver}.tgz
Source13:       alphabet_sounds_el-%{alphabet_ver}.tgz
Source14:       alphabet_sounds_en_GB-%{alphabet_ver}.tgz
Source15:       alphabet_sounds_es-%{alphabet_ver}.tgz
Source16:       alphabet_sounds_fr-%{alphabet_ver}.tgz
Source17:       alphabet_sounds_it-%{alphabet_ver}.tgz
Source18:       alphabet_sounds_lt-%{alphabet_ver}.tgz
Source19:       alphabet_sounds_nb-%{alphabet_ver}.tgz
Source20:       alphabet_sounds_nl-%{alphabet_ver}.tgz
Source21:       alphabet_sounds_pt-%{alphabet_ver}.tgz
Source22:       alphabet_sounds_ro-%{alphabet_ver}.tgz
Source23:       alphabet_sounds_ru-%{alphabet_ver}.tgz
Source24:       alphabet_sounds_sl-%{alphabet_ver}.tgz
Source25:       alphabet_sounds_sv-%{alphabet_ver}.tgz
Patch0:         childsplay-1.4-lang_switch.patch

BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildArch:      noarch
BuildRequires:  desktop-file-utils
BuildRequires:  python
Requires:       pygame
Requires:       python-sqlalchemy
Requires:       hicolor-icon-theme
Requires:       pyfribidi
Requires:       dejavu-sans-fonts


Provides:       childsplay_sp = %{version}-%{release}
Provides:       childsplay_plugins = %{version}-%{release}
Obsoletes:      childsplay_plugins <= 0.90

%global python_sitedir %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")


%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 .

%package alphabet_sounds_bg
Summary:        Bulgarian alphabet sounds for Childsplay
Group:          Amusements/Games
Requires:       %{name} = %{version}-%{release}
%description alphabet_sounds_bg
Bulgarian alphabet sounds for Childsplay


%package alphabet_sounds_ca
Summary:        Catalan alphabet sounds for Childsplay
Group:          Amusements/Games
Requires:       %{name} = %{version}-%{release}
%description alphabet_sounds_ca
Catalan alphabet sounds for Childsplay


%package alphabet_sounds_de
Summary:        German alphabet sounds for Childsplay
Group:          Amusements/Games
Requires:       %{name} = %{version}-%{release}
%description alphabet_sounds_de
German alphabet sounds for Childsplay


%package alphabet_sounds_el
Summary:        New Greek alphabet sounds for Childsplay
Group:          Amusements/Games
Requires:       %{name} = %{version}-%{release}
%description alphabet_sounds_el
new Greek alphabet sounds for Childsplay


%package alphabet_sounds_en_GB
Summary:        British English alphabet sounds for Childsplay
Group:          Amusements/Games
Requires:       %{name} = %{version}-%{release}
%description alphabet_sounds_en_GB
British English alphabet sounds for Childsplay


%package alphabet_sounds_es
Summary:        Spanish alphabet sounds for Childsplay
Group:          Amusements/Games
Requires:       %{name} = %{version}-%{release}
%description alphabet_sounds_es
Spanish alphabet sounds for Childsplay


%package alphabet_sounds_fr
Summary:        French alphabet sounds for Childsplay
Group:          Amusements/Games
Requires:       %{name} = %{version}-%{release}
%description alphabet_sounds_fr
French alphabet sounds for Childsplay


%package alphabet_sounds_it
Summary:        Italian alphabet sounds for Childsplay
Group:          Amusements/Games
Requires:       %{name} = %{version}-%{release}
%description alphabet_sounds_it
Italian alphabet sounds for Childsplay


%package alphabet_sounds_lt
Summary:        Lithuanian alphabet sounds for Childsplay
Group:          Amusements/Games
Requires:       %{name} = %{version}-%{release}
%description alphabet_sounds_lt
Lithuanian alphabet sounds for Childsplay


# I do not know which language 'nb' is :/
%package alphabet_sounds_nb
Summary:        nb alphabet sounds for Childsplay
Group:          Amusements/Games
Requires:       %{name} = %{version}-%{release}
%description alphabet_sounds_nb
nb alphabet sounds for Childsplay


%package alphabet_sounds_nl
Summary:        Dutch alphabet sounds for Childsplay
Group:          Amusements/Games
Requires:       %{name} = %{version}-%{release}
%description alphabet_sounds_nl
Dutch alphabet sounds for Childsplay


%package alphabet_sounds_pt
Summary:        Portuguese alphabet sounds for Childsplay
Group:          Amusements/Games
Requires:       %{name} = %{version}-%{release}
%description alphabet_sounds_pt
Portuguese alphabet sounds for Childsplay


%package alphabet_sounds_ro
Summary:        Romanian alphabet sounds for Childsplay
Group:          Amusements/Games
Requires:       %{name} = %{version}-%{release}
%description alphabet_sounds_ro
Romanian alphabet sounds for Childsplay


%package alphabet_sounds_ru
Summary:        Russian alphabet sounds for Childsplay
Group:          Amusements/Games
Requires:       %{name} = %{version}-%{release}
%description alphabet_sounds_ru
Russian alphabet sounds for Childsplay


%package alphabet_sounds_sl
Summary:        Slovenian alphabet sounds for Childsplay
Group:          Amusements/Games
Requires:       %{name} = %{version}-%{release}
%description alphabet_sounds_sl
Slovenian alphabet sounds for Childsplay


%package alphabet_sounds_sv
Summary:        Swedish alphabet sounds for Childsplay
Group:          Amusements/Games
Requires:       %{name} = %{version}-%{release}
%description alphabet_sounds_sv
Swedish alphabet sounds for Childsplay


%prep
%setup -q -a 10 -a 11 -a 12 -a 13 -a 14 -a 15 -a 16 -a 17 -a 18 -a 19 -a 20 -a 21 -a 22 -a 23 -a 24 -a 25
# we don't use the buggy provided install
rm setup.py
rm `find alphabet_sounds_??-%{alphabet_ver} -name install.py`
rm -rf po
# fixup the python scripts to call python directly and make them executable
sed -i 's!/usr/bin/env python!%{_bindir}/python!' bin/%{name}
cp %{SOURCE2} README.RPM
# fix wrong end of line encoding
sed -i -e 's|\r||g' doc/license.txt
# lang lt miss subdir
pushd  alphabet_sounds_lt-%{alphabet_ver}/AlphabetSounds
mkdir lt
mv *.* lt
popd
%patch0 -p1


%build
# setup.py is not really usable for our needs
echo "## Automated file please do not edit" > SPBasePaths.py
echo "# This module holds all the paths needed for %{name}." >> SPBasePaths.py
echo "DOCDIR = '%{_datadir}/doc/%{name}-%{version}'" >> SPBasePaths.py
echo "PYTHONCPDIR = '%{python_sitedir}/%{realname}'" >> SPBasePaths.py
echo "BASEDIR = '%{_datadir}/%{realname}'" >> SPBasePaths.py
echo "SHARELIBDATADIR = '%{_datadir}/%{realname}'" >> SPBasePaths.py
echo "ALPHABETDIR = '%{_datadir}/%{realname}/alphabetsounds'" >> SPBasePaths.py
echo "LOCALEDIR = '%{_datadir}/locale'" >> SPBasePaths.py


%install
rm -rf $RPM_BUILD_ROOT
# setup.py is not really usable for our needs
mkdir -p $RPM_BUILD_ROOT%{_bindir}
mkdir -p $RPM_BUILD_ROOT%{python_sitedir}/%{realname}/lib
mkdir -p $RPM_BUILD_ROOT%{_datadir}/locale
mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{realname}

cp -a bin/%{name}  $RPM_BUILD_ROOT%{_bindir}

cp -a lib/CPData $RPM_BUILD_ROOT%{_datadir}/%{realname}
cp -a lib/SPData $RPM_BUILD_ROOT%{_datadir}/%{realname}
cp -a alphabetsounds $RPM_BUILD_ROOT%{_datadir}/%{realname}
cp -a locale/* $RPM_BUILD_ROOT%{_datadir}/locale

cp -a *.py $RPM_BUILD_ROOT%{python_sitedir}/%{realname}
cp -a gui $RPM_BUILD_ROOT%{python_sitedir}/%{realname}
cp -a lib/*.py $RPM_BUILD_ROOT%{python_sitedir}/%{realname}/lib
cp -a ocempgui $RPM_BUILD_ROOT%{python_sitedir}/%{realname}

%find_lang %{realname}

# 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 \
  %{SOURCE1}

mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/64x64/apps
install -p -m 644 lib/SPData/menu/default/logo_cp_64x64.png \
  $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/64x64/apps/%{name}.png

#Remove provided font and symlink system one
rm $RPM_BUILD_ROOT%{_datadir}/%{realname}/SPData/DejaVuSansCondensed-Bold.ttf
rm $RPM_BUILD_ROOT%{_datadir}/%{realname}/SPData/DejaVu-ttf.copyright
ln -s ../../fonts/dejavu/DejaVuSansCondensed-Bold.ttf $RPM_BUILD_ROOT%{_datadir}/%{realname}/SPData/DejaVuSansCondensed-Bold.ttf

#Alphabet sounds
for sounds in bg ca de el en_GB es fr it lt nb nl ro ru sl sv 
do
  cp -a alphabet_sounds_$sounds-%{alphabet_ver}/AlphabetSounds/$sounds $RPM_BUILD_ROOT%{_datadir}/%{realname}/alphabetsounds
done
for sounds in ca de es fr it nl ru sl
do
  cp -a alphabet_sounds_$sounds-%{alphabet_ver}/FlashCardsSounds/$sounds $RPM_BUILD_ROOT%{_datadir}/%{realname}/CPData/FlashcardsData/names
done


%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 %{realname}.lang
%defattr(-, root, root, -)
%doc Changelog COPYING doc/* README README.RPM
%{_bindir}/%{name}
%dir %{_datadir}/%{realname}
%{_datadir}/%{realname}/SPData
%{_datadir}/%{realname}/CPData/*.*
%{_datadir}/%{realname}/CPData/BilliardData
%{_datadir}/%{realname}/CPData/FallinglettersData
%{_datadir}/%{realname}/CPData/FindsoundData
%{_datadir}/%{realname}/CPData/FishtankData
%{_datadir}/%{realname}/CPData/FlashcardsData/cards
%{_datadir}/%{realname}/CPData/FlashcardsData/sounds
%{_datadir}/%{realname}/CPData/FlashcardsData/names/en
%{_datadir}/%{realname}/CPData/LMemoryData
%{_datadir}/%{realname}/CPData/MemoryData
%{_datadir}/%{realname}/CPData/PackidData
%{_datadir}/%{realname}/CPData/PongData
%{_datadir}/%{realname}/CPData/PuzzleData
%{_datadir}/%{realname}/CPData/SoundmemoryData
%{_datadir}/%{realname}/alphabetsounds/en
%{python_sitedir}/%{realname}
%{_datadir}/applications/fedora-%{name}.desktop
%{_datadir}/icons/hicolor/*/apps/%{name}.png


%files alphabet_sounds_bg
%defattr(-, root, root, -)
%doc  alphabet_sounds_bg-%{alphabet_ver}/GPL-2
%{_datadir}/%{realname}/alphabetsounds/bg


%files alphabet_sounds_ca
%defattr(-, root, root, -)
%doc  alphabet_sounds_ca-%{alphabet_ver}/copyright  alphabet_sounds_ca-%{alphabet_ver}/GPL-2
%{_datadir}/%{realname}/CPData/FlashcardsData/names/ca
%{_datadir}/%{realname}/alphabetsounds/ca


%files alphabet_sounds_de
%defattr(-, root, root, -)
%doc  alphabet_sounds_de-%{alphabet_ver}/copyright  alphabet_sounds_de-%{alphabet_ver}/GPL-2
%{_datadir}/%{realname}/CPData/FlashcardsData/names/de
%{_datadir}/%{realname}/alphabetsounds/de


%files alphabet_sounds_el
%defattr(-, root, root, -)
%doc  alphabet_sounds_el-%{alphabet_ver}/copyright  alphabet_sounds_el-%{alphabet_ver}/GPL-2
%{_datadir}/%{realname}/alphabetsounds/el


%files alphabet_sounds_en_GB
%defattr(-, root, root, -)
%doc  alphabet_sounds_en_GB-%{alphabet_ver}/copyright  alphabet_sounds_en_GB-%{alphabet_ver}/GPL-2
%{_datadir}/%{realname}/alphabetsounds/en_GB


%files alphabet_sounds_es
%defattr(-, root, root, -)
%doc  alphabet_sounds_es-%{alphabet_ver}/copyright  alphabet_sounds_es-%{alphabet_ver}/GPL-2
%{_datadir}/%{realname}/CPData/FlashcardsData/names/es
%{_datadir}/%{realname}/alphabetsounds/es


%files alphabet_sounds_fr
%defattr(-, root, root, -)
%doc  alphabet_sounds_fr-%{alphabet_ver}/copyright  alphabet_sounds_fr-%{alphabet_ver}/GPL-2
%{_datadir}/%{realname}/CPData/FlashcardsData/names/fr
%{_datadir}/%{realname}/alphabetsounds/fr


%files alphabet_sounds_it
%defattr(-, root, root, -)
%doc  alphabet_sounds_it-%{alphabet_ver}/copyright  alphabet_sounds_it-%{alphabet_ver}/GPL-2
%{_datadir}/%{realname}/CPData/FlashcardsData/names/it
%{_datadir}/%{realname}/alphabetsounds/it


%files alphabet_sounds_lt
%defattr(-, root, root, -)
%doc  alphabet_sounds_lt-%{alphabet_ver}/copyright  alphabet_sounds_lt-%{alphabet_ver}/GPL-2
%{_datadir}/%{realname}/alphabetsounds/lt


%files alphabet_sounds_nb
%defattr(-, root, root, -)
%doc  alphabet_sounds_nb-%{alphabet_ver}/copyright  alphabet_sounds_nb-%{alphabet_ver}/GPL-2
%{_datadir}/%{realname}/alphabetsounds/nb


%files alphabet_sounds_nl
%defattr(-, root, root, -)
%doc  alphabet_sounds_nl-%{alphabet_ver}/copyright  alphabet_sounds_nl-%{alphabet_ver}/GPL-2
%{_datadir}/%{realname}/CPData/FlashcardsData/names/nl
%{_datadir}/%{realname}/alphabetsounds/nl


%files alphabet_sounds_ro
%defattr(-, root, root, -)
%doc  alphabet_sounds_ro-%{alphabet_ver}/copyright  alphabet_sounds_ro-%{alphabet_ver}/GPL-2
%{_datadir}/%{realname}/alphabetsounds/ro


%files alphabet_sounds_ru
%defattr(-, root, root, -)
%doc  alphabet_sounds_ru-%{alphabet_ver}/copyright  alphabet_sounds_ru-%{alphabet_ver}/GPL-2
%{_datadir}/%{realname}/CPData/FlashcardsData/names/ru
%{_datadir}/%{realname}/alphabetsounds/ru

%files alphabet_sounds_sl
%defattr(-, root, root, -)
%{_datadir}/%{realname}/alphabetsounds/sl
%{_datadir}/%{realname}/CPData/FlashcardsData/names/sl


%files alphabet_sounds_sv
%defattr(-, root, root, -)
%doc  alphabet_sounds_sv-%{alphabet_ver}/copyright  alphabet_sounds_sv-%{alphabet_ver}/GPL-2
%{_datadir}/%{realname}/alphabetsounds/sv


%changelog
* Fri Oct 23 2009 Johan Cwiklinski <johan AT x-tnd DOT be> 1.4-2
- fix get_locale issue (bug #530599)

* Sun Sep 13 2009 Johan Cwiklinski <johan AT x-tnd DOT be> 1.4-1
- 1.4

* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild

* Sat May 23 2009 Johan Cwiklinski <johan AT x-tnd DOT be> 1.3-1
- 1.3

* Sat Apr 11 2009 Johan Cwiklinski <johan AT x-tnd DOT be>  1.1-5
- Added missing BR 

* Tue Mar 31 2009 Tom "spot" Callaway <tcallawa@redhat.com> 1.1-4
- fix dejavu-fonts dependency

* Mon Mar 30 2009 Johan Cwiklinski <johan AT x-tnd DOT be> 1.1-3
- Symlink to system font (BZ #477372)

* Sun Mar 29 2009 Johan Cwiklinski <johan AT x-tnd DOT be> 1.1-2
- Versions for Obsoletes and Provides were inverted

* Sun Mar 29 2009 Johan Cwiklinski <johan AT x-tnd DOT be> 1.1-1
- Upgrade to 1.1
- Added localized alphabet sounds

* Thu Jan 17 2008 Hans de Goede <j.w.r.degoede@hhs.nl> 0.90.2-1
- New upstream version 0.90.2
- Drop upstreamed replace-cfg patch

* Sun Aug 26 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 0.90-1
- New upstream version 0.90, license changed to GPL version 3,
  no other changes.

* Mon Aug  6 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 0.85.1-3 
- Update License tag for new Licensing Guidelines compliance

* Thu Jun  7 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 0.85.1-2
- Add pyfribidi Requires for Hebrew support

* 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