Package sawfish: Specfile

# vim: set ft=spec: -*- rpm-spec -*-

%define platform %(%_datadir/automake/config.sub %_target_platform | sed -e 's,-%_vendor,,')
%define rep_archlibdir %(rep-config --execdir)
%define _libexecdir %_usr/libexec
%define PRIO 05

Name: sawfish
Version: 1.5.0
Release: alt0.r4474.1

Summary: An extensible window manager for the X Window System
Group: Graphical desktop/Sawfish
License: GPLv2
Url: http://sawfish.wikia.com/

Packager: Sir Raorn <raorn@altlinux.org>

Requires: rep-gtk >= 0.18-alt4
Provides: %_x11sysconfdir/sawfish/site-init.d
Provides: %_datadir/sawfish/site-lisp
Provides: %_datadir/sawfish/sounds
Provides: %_datadir/sawfish/themes

Source: %name-%version.tar
Patch: %name-%version-%release.patch

# These are not shell scripts, but shell-wrapped compiled rep scripts.
%add_findreq_skiplist %_bindir/sawfish-client
%add_findreq_skiplist %_bindir/sawfish-themer
%add_findreq_skiplist %_bindir/sawfish-ui
%add_findreq_skiplist %_libexecdir/sawfish/%version/%platform/sawfish-about
%add_findreq_skiplist %_libexecdir/sawfish/%version/%platform/sawfish-menu
%add_findreq_skiplist %_datadir/sawfish/%version/lisp/*

# Automatically added by buildreq on Mon Apr 27 2009
BuildRequires: libSM-devel libXext-devel libXinerama-devel libXrandr-devel libaudiofile-devel libgtk+2-devel librep-devel rep-gtk-devel

%description
Sawfish is an extensible window manager which uses a Lisp-based
scripting language.  All window decorations are configurable and the
basic idea is to have as much user-interface policy as possible
controlled through the Lisp language.  Configuration can be
accomplished by writing Lisp code in a personal .sawfishrc file, or
using a GTK+ interface.  Sawfish is mostly GNOME compliant.

%package gnome
Summary: GNOME integration package
Group: Graphical desktop/GNOME
PreReq: %name = %version-%release
PreReq: gnome-filesystem
Requires: gnome-session
Provides: gnome-wm

%description gnome
Sawfish GNOME integration package.

%package themer
Summary: GUI for creating sawfish window manager themes
Group: Graphical desktop/Sawfish
Requires: rep-gtk-libglade
Requires: %name = %version-%release

%description themer
The sawfish-themer package contains an optional theme builder for the
sawfish window manager. sawfish-themer allows static window themes to
be created and edited in a graphical environment.

%package -n rpm-build-%name
Summary: RPM macros for sawfish-related packages
Group: Development/Other
Conflicts: %name < %version-%release
Conflicts: %name > %version-%release

%description -n rpm-build-%name
RPM macros for sawfish-related packages.

%prep
%setup
%patch -p1
#cp -pfv %_datadir/automake/config.{guess,sub} .
sed -ie 's,^subversion=.*$,subversion="-%release",' configure.in

%build
%autoreconf
%configure \
	--with-gdk-pixbuf \
	--with-audiofile \
	--without-esd
# Fix platform name
sed -ie 's,^sawfishhosttype=.*$,sawfishhosttype=%platform,g' sawfish.pc
%make_build \
	host_type=%platform

%install
%make_install \
	host_type=%platform \
	DESTDIR=%buildroot \
	install

mkdir -p %buildroot{%_datadir/sawfish/site-lisp,%_sysconfdir/menu-methods,%_x11sysconfdir/{wmsession.d,sawfish/site-init.d}}

install -p -m644 sawfish-48.xpm %buildroot%_pixmapsdir/sawfish.xpm

install -p -m755 menu-method %buildroot%_sysconfdir/menu-methods/sawfish

install -p -m644 altlinux/site-init.jl %buildroot%_datadir/sawfish/site-lisp/
install -p -m644 altlinux/defaults.jl %buildroot%_x11sysconfdir/sawfish/site-init.d/00defaults.jl
install -p -m644 altlinux/menu.jl %buildroot%_x11sysconfdir/sawfish/site-init.d/00menu.jl
install -p -m644 altlinux/gnome-defaults.jl %buildroot%_x11sysconfdir/sawfish/site-init.d/01gnome.jl

mkdir -p %buildroot%_rpmmacrosdir
cat <<EOF >%buildroot%_rpmmacrosdir/sawfish
%%sawfish_version %version
%%sawfish_version_release %version-%release

%%sawfish_dir %_datadir/sawfish

%%sawfish_sitelispdir %_datadir/sawfish/site-lisp
%%sawfish_sitethemedir %_datadir/sawfish/themes
%%sawfish_sitesoundsdir %_datadir/sawfish/sounds
EOF

cat <<EOF > %buildroot%_x11sysconfdir/wmsession.d/%PRIO%name
NAME=Sawfish
ICON=%_pixmapsdir/sawfish.xpm
DESC=Sawfish Window Manager
EXEC=%_bindir/sawfish
SCRIPT:
exec %_bindir/sawfish
EOF

mkdir -p %buildroot%_rpmlibdir
cat <<EOF >%buildroot%_rpmlibdir/sawfish-files.req.list
# sawfish dirlist for %_rpmlibdir/files.req
%_x11sysconfdir/sawfish/site-init.d sawfish
%_datadir/sawfish/site-lisp sawfish
%_datadir/sawfish/sounds sawfish
%_datadir/sawfish/themes sawfish
EOF

%find_lang %name

%post
%install_info sawfish.info

%preun
%uninstall_info sawfish.info

%files -f %name.lang
%doc AUTHORS README OPTIONS README.IMPORTANT KEYBINDINGS
%config %_x11sysconfdir/wmsession.d/%PRIO%name
%dir %_x11sysconfdir/sawfish
%dir %_x11sysconfdir/sawfish/site-init.d
%config %_x11sysconfdir/sawfish/site-init.d/00*
%config %_sysconfdir/menu-methods/sawfish
%_bindir/sawfish
%_bindir/sawfish-client
%_bindir/sawfish-ui
%rep_archlibdir/*
%dir %_datadir/sawfish
%dir %_datadir/sawfish/%version
%dir %_libexecdir/sawfish
%dir %_libexecdir/sawfish/%version
%dir %_libexecdir/sawfish/%version/%platform
%_libexecdir/sawfish/%version/%platform/*
%dir %_datadir/sawfish/site-lisp
%_datadir/sawfish/site-lisp/site-init.jl
%dir %_datadir/sawfish/themes
%dir %_datadir/sawfish/sounds
%_datadir/sawfish/%version/lisp
%_datadir/sawfish/%version/themes
%_datadir/sawfish/%version/sounds
%_datadir/sawfish/%version/monitor.png
%_pixmapsdir/*
%_infodir/sawfish.info*

%files gnome
%config %_x11sysconfdir/sawfish/site-init.d/01*
%_desktopdir/sawfish.desktop

%if 0
%files themer
%_bindir/sawfish-themer
%_datadir/sawfish/%version/themer.glade
%endif

%files -n rpm-build-%name
%_rpmmacrosdir/sawfish
%_rpmlibdir/sawfish-files.req.list
%_pkgconfigdir/sawfish.pc

%changelog
* Fri May 01 2009 Alexey I. Froloff <raorn@altlinux.org> 1.5.0-alt0.r4474.1
- SVN revision 4474 (trunk)
- Packaged couple of README's

* Sat Apr 25 2009 Alexey I. Froloff <raorn@altlinux.org> 1.3.5.2-alt1
- SVN revision 4456 (branches/sawfish-1.3)
  + Dropped GNOME widget support (removed form rep-gtk)
- Use menu-messages catalog for menu translations
- sawfish.desktop moved to -gnome subpackage
- Translate option descriptions in sawfish-ui

* Sat Dec 27 2008 Sir Raorn <raorn@altlinux.ru> 1.3.5-alt2
- Rebuilt with new librep
- Sanitized platform name
- Fixed client connection (closes: #18361)
- Dropped invalid el translation from .desktop files (noted by repocop)
- Dropped %%sawfish_execdir macro since 3rd-party sawfish extensions
  can not be created
- Use files.req for 3rd-party script dependencies

* Fri Dec 26 2008 Sir Raorn <raorn@altlinux.ru> 1.3.5-alt1
- [1.3.5]

* Sun Dec 07 2008 Sir Raorn <raorn@altlinux.ru> 1.3.4-alt3
- Updated build dependencies
- Removed obsolete update_*/clean_* calls from post-scripts

* Wed Nov 12 2008 Sir Raorn <raorn@altlinux.ru> 1.3.4-alt2
- Provide gnome-wm (closes: #15948)
- GNOME instegration updated for recent gnome-session changes

* Sun Sep 21 2008 Sir Raorn <raorn@altlinux.ru> 1.3.4-alt1
- [1.3.4]
 + Removed obsolete GNOME capplet and configuration menu entries
 + New themes:
  o Elberg-tabbed
  o get-S-tabbed
  o mxflat

* Sat May 31 2008 Sir Raorn <raorn@altlinux.ru> 1.3.3-alt1
- Built for Sisyphus