File lessons4lizards_en.spec of Package lessons4lizards_en

#
# spec file for package lessons4lizards_en (Version 0.2)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#

# norootforbuild

Name:           lessons4lizards_en
URL:            http://developer.novell.com/wiki/index.php/Lessons_for_Lizards
%define my_lang en
%define my_book lessons4lizards
Version:        0.2
Release:        1
#OBS
Source0:        lessons4lizards_en-html.tar.bz2
Source1:        lessons4lizards_en-desktop.tar.bz2
Source2:        lessons4lizards_en.pdf
#Source3: lessons4lizards_en-graphics.tar.bz2
#Source4: lessons4lizards_en.tar.bz2
#SOURCES
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildArchitectures: noarch
Group:          Documentation/Other
License:        GNU Free Documentation License, Version 1.1 (GFDL)
Summary:        Lessons for Lizards - Understanding openSUSE
%define _defaultdocdir %{_datadir}/doc/manual
%define _docdir %{_datadir}/doc/manual
%define PDFDOC %{_defaultdocdir}/%{name}-pdf

%description
Lessons for Lizards (LfL) is a community cookbook-style book project
for the openSUSE distribution licensed under the GNU Free Documentation
License (GFDL).

Lessons for Lizards covers more specific or exotic topics than the
internally produced manuals, such as

* Experimental software

* Third party software

* Third party drivers

* Complex setups (such as a router for the home network)

If you want to contribute, please look at

http://developer.novell.com/wiki/index.php/Lessons_for_Lizards

for more information.



%prep
#%setup -c -q
%setup -c -q -a 1
#PREP
cp %{S:2} .
#PDFPREP

%build
# make sure index.html exists
for f in $(find html -type f -name 'book.*'); do
  pushd ${f%/*}
  ln -sf ${f##*/} index.html
  popd
done

%install
mkdir -p $RPM_BUILD_ROOT%{_defaultdocdir}
# is set for sles or sled as /sles or /sled
%define my_desktopdir /usr/share/susehelp/meta
echo %{my_desktopdir} | sed 's:\(\|xyzy\)::' >filelist
# mkdir -p  desktop/{startup,reference,application,apparmor-admin-guide}
###
install -d $RPM_BUILD_ROOT%{my_desktopdir}/%{name}
# product is name without language code
#%define gnome_dir /opt/gnome/share/gnome/help/lessons4lizards
#install -d $RPM_BUILD_ROOT/%{gnome_dir}
#
if [ -d html/%my_book -o %name = sled-desktop-qs_%{my_lang} ]; then
  if [ %name = sled-desktop-qs_%{my_lang} ]; then
    tar xvf %{S:1}
    sed 's:@PATH@:@PATH@/gnomequick:' desktop/.directory > desktop/gnome.desktop
    # mv desktop gnome
    tar xvf %{S:11}
    sed 's:@PATH@:@PATH@/kdequick:' desktop/.directory > desktop/kde.desktop
    sed -i 's:\(KDE\|GNOME\) *::
s/^\(DocPath\)/;\1/'  desktop/.directory
    # mv desktop kde
    # mkdir desktop
    # mv gnome kde desktop
    mkdir -p html/manual
    for d in html/SLED-*; do
      mv $d html/manual/${d#html/SLED-}
    done
  else
    mv html/%my_book html/manual
  fi
pushd desktop
for dir in $(find . -maxdepth 1 -type d) nixxx; do
  case $dir in
    ./book.heartbeat)
      mv index/*.desktop $dir/.directory $dir/*.desktop .
      rm -fr index $dir
      ;;
    ./stor_evms)
      mv index/*.desktop $dir/.directory $dir/*.desktop .
      rm -fr index $dir
      ;;
    #./index)
    #  mv index/*.desktop $dir/.directory $dir/*.desktop .
    #  rm -fr index $dir
    #  ;;
    *) true ;;
  esac
done
case %name in
  sles-preparation*|apparmor-admin*)
    mv -f bk0*/*desktop .; rm -fr bk0* ;;
esac
for f in $(find . -type f -name '*desktop'); do
    # /usr/share/doc/manual/suselinux-manual_en/manual
    sed -i "s|@PATH@|%{_defaultdocdir}/%{name}/manual|
s/\[\]//" $f
    if ! grep -q -e '^Name *=' $f; then
    # requiered if no "Name=" is present
      sed -i "s|^Name\[.*\]\(=.*\)|Name\1\\
&|" $f
    fi
done
for d in $(find . -maxdepth 1 -type d -name 'book*'); do
  id=${d//\./}
  id=${id//\//}%{my_lang}
  pushd $d
  for f in $(find . -name '.directory'); do
    sed -i "s|@PATH@|%{_defaultdocdir}/%{name}/manual|
s/\[\]//
s|@id@|$id|" $f
  done
  popd
done
# Why not checking deeply hidden files (again?)
# Probably useful for stand-alone books
# for f in $(find . -maxdepth 1 -name '*.directory'); do
for f in $(find . -name '*.directory'); do
  id=%{name}
  id=${id//_/}
  sed -i "s|@PATH@|%{_defaultdocdir}/%{name}/manual|
s/\[\]//
s|@id@|$id|" $f
  # Fix the index.html reference
  if [ $f = ./.directory ]; then
    sed -i 's:\(^DocPath.*/\).*:\1index.html:
s/^\(Name\|Comment\)\(.*\)/\1\2 (%{my_lang})/' $f
  fi
  # make sure to sort startup guide first
  case %name in
    sles-startup*)
      [ $f = "./.directory" ] \
        && sed -i "s|^\(X-DOC-Weight\).*|\1=-2000|" $f ;;
  esac
done
# if [ %name = sled-desktop-qs_%{my_lang} ]; then
# # Probably useful for quick books
# for f in $(find . -maxdepth 2 -name '*.directory'); do
#   id=%{name}
#   id=${id//_/}
#   sed -i "s|@PATH@|%{_defaultdocdir}/%{name}/manual|
# s/\[\]//
# s|@id@|$id|" $f
#   # Fix the index.html reference
#   if [ $f = ./.directory ]; then
#     sed -i 's:\(^DocPath.*/\).*:\1index.html:
# s/^\(Name\|Comment\)\(.*\)/\1\2 (%{my_lang})/' $f
#   fi
# done
# fi
# remove the dots from the file names
for f in $(find . -type f -name '*desktop'); do
  d=${f%/*}
  n=${f##*/}; n=${n/\.desktop}; n=${n//\./_}; n=${n}.desktop
  [ $f = $d/$n ] || mv -v $f $d/$n
done
ren_dir () {
  for d in $(find . -maxdepth $1 -mindepth $1 -type d); do
    n=${d#*/}; n=${n//\./_}
    [ ${d#*/} = $n ] || mv -v $d $n
  done
}
ren_dir 1
ren_dir 2
#
cp -a . $RPM_BUILD_ROOT%{my_desktopdir}/%{name}
#obsolete with slash_flavor
#mkdir -p $RPM_BUILD_ROOT/usr/share/susehelp/meta/sled
# cp %{S:100} $RPM_BUILD_ROOT%{my_desktopdir}/.directory || :
popd
# Link it into the Gnome help system (must be found by calling
# susehelp help://suselinux-manual/
#pushd $RPM_BUILD_ROOT/%{gnome_dir}
if [ %{my_lang} = "en" ]; then
  target=$RPM_BUILD_ROOT%{_defaultdocdir}/%{name}/manual
  install -d $target
  ln -sf %{_defaultdocdir}/%{name}/manual C
else
  target=$RPM_BUILD_ROOT%{_defaultdocdir}/%{name}/manual
  install -d $target
  ln -sf %{_defaultdocdir}/%{name}/manual %{my_lang}
fi
#popd
else
# PDF only books
install -d html/manual
echo PDF only > html/manual/%{name}
fi

%clean
rm -rf %{buildroot}

%files -f filelist
%defattr(-, root, root)
%dir %{_defaultdocdir}
%doc *.pdf
%doc html/manual
# %{my_desktopdir}
%dir %{_datadir}/susehelp
#%{gnome_dir}
#%dir /opt/gnome
#%dir /opt/gnome/share
#%dir /opt/gnome/share/gnome
#%dir /opt/gnome/share/gnome/help

%changelog
* Mon Jul 30 2007 - toms@suse.de
- New release for Beta 1:
  * Updated Virtualization chapter from Alexey
  * New article about kover from ta-ro (from Hackweek)
  * New article about digikam-css from jjaeger1 (from Hackweek)
  * New article SCPM for PCMCIA jjaeger1
* Fri Mar 23 2007 - lrupp@suse.de
- don't remove BUILD_ROOT in %%install and "mkdir -p BUILD_ROOT/foo"
  directly afterwards
- added %%clean section
* Fri Mar 23 2007 - toms@suse.de
- Disabled source3 and source4
* Thu Mar 22 2007 - toms@suse.de
- First release 0.1
openSUSE Build Service is sponsored by