File lessons4lizards_en.spec of Package lessons4lizards_en

#
# spec file for package lessons4lizards_en (Version 0.2)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# 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:        72
#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
BuildArch:      noarch
Group:          Documentation/Other
License:        GNU Free Documentation License, Version 1.1 (GFDL 1.1)
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



%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