-# TODO
-# - lua-doc: spec file is created - OK
-# - add luadoc and doxygen to BRs
-# - move the generated html files (with luadoc) to correct place
-# - split two subpackage: awesome and awesome-doc (htmls)
-# - correct xsession.desktop file to appear in *dm
-%define subver rc6
-%define rel 2
-Summary: Awesome Window Manager
+Summary: awesome window manager
Summary(hu.UTF-8): awesome ablakkezelő
Summary(pl.UTF-8): Zarządca okien X - Awesome
Name: awesome
-Version: 3.0
-Release: 1
+Version: 3.1.2
+Release: 3
License: GPL v2
Group: X11/Window Managers
Source0: http://awesome.naquadah.org/download/%{name}-%{version}.tar.bz2
-# Source0-md5: 32bb9e94a63f421a7a8500f1041b6add
+# Source0-md5: 01ad5a4e4919b664bfe3f0c627ed291f
Source1: %{name}-xsession.desktop
Patch0: %{name}-3.0-lua-files.patch
-URL: http://awesome.naquadah.org
-# BuildRequires: luadoc - it's ready but need to build luadoc (it exists in SPEC-file)
+Patch1: %{name}-xcb.patch
+URL: http://awesome.naquadah.org/
BuildRequires: asciidoc
BuildRequires: cairo-devel
BuildRequires: cmake >= 2.6
BuildRequires: dbus-devel
-# doxygen required when build source code reference - see TODO
-# BuildRequires: doxygen
-BuildRequires: gdk-pixbuf-devel
+BuildRequires: doxygen
+BuildRequires: glib-devel
+BuildRequires: glib2-devel
BuildRequires: gperf
+BuildRequires: imlib2-devel
BuildRequires: libev-devel
-BuildRequires: lua51
+BuildRequires: lua-doc
BuildRequires: lua51-devel
BuildRequires: pango-devel
BuildRequires: pkgconfig >= 0.9.0
+BuildRequires: readline-devel
BuildRequires: rpmbuild(macros) >= 1.293
BuildRequires: sed >= 4.0
-BuildRequires: xcb-util-devel >= 0.3
+BuildRequires: xcb-util-devel >= 0.3.3
BuildRequires: xmlto
BuildRequires: xorg-lib-libICE-devel
BuildRequires: xorg-lib-libXext-devel
számítógéppel dolgozik és teljeskörű irányítást akar a grafikus
felületén.
+%description -l pl.UTF-8
+awesome jest zarządcą okien charakteryzującym się bardzo dużymi
+możliwościami konfiguracji i rozszerzania funkcjonalności, pozostając
+przy tym szybkim i lekkim. Cel ten został osiągnięty dzięki wbudowaniu
+w program języka skryptowego lua. Awesome został zaprojektowany z
+myślą o bardziej zaawansowanych użytkownikach: programistach oraz
+innych pracujących na codzień z komputerami, którzy chcą mieć dużą
+kontrolę nad swoim środowiskiem graficznym.
+
+%package doc
+Summary: awesome window manager API documentation
+Summary(hu.UTF-8): awesome ablakkezelő API dokumentációja
+Summary(pl.UTF-8): Dokumentacja API awesome
+Group: Documentation
+
+%description doc
+awesome window manager API documentation.
+
+%description doc -l hu.UTF-8
+awesome ablakkezelő API dokumentációja.
+
+%description doc -l pl.UTF-8
+Dokumentacja API zarządcy okien awesome.
+
+%package example-config
+Summary: Example config for awesome window manager
+Summary(hu.UTF-8): Egy alap/példa konfig az awesome ablakkezelőhöz
+Summary(pl.UTF-8): Przykładowy plik konfiguracyjny dla zarządcy okien awesome
+Group: Documentation
+Requires: %{name}-plugin-awful = %{version}-%{release}
+Requires: %{name}-plugin-beautiful = %{version}-%{release}
+Requires: %{name}-plugin-tabulous = %{version}-%{release}
+
+%description example-config
+Example config for awesome window manager. It can be a good starting
+point for those people, who have never used awesome window manager
+before.
+
+%description example-config -l hu.UTF-8
+Egy alap/példa konfig az awesome ablakkezelőhöz. Ha még sose
+használtál awesome 3.x ablakkezelőt, jó kiindulópont lehet.
+
+%description example-config -l pl.UTF-8
+Przykładowy plik konfiguracyjny dla zarządcy okien awesome. Ten plik
+jest dobrym punktem wyjścia dla osób nie używających wcześniej awesome
+3.x.
+
+%package plugin-awful
+Summary: awful plugin for awesome window manager
+Summary(hu.UTF-8): awful plugin az awesome ablakkezelőhöz
+Summary(pl.UTF-8): Wtyczka awful dla zarządcy okien awesome
+Group: X11/Window Managers
+
+%description plugin-awful
+AWesome Functions very UsefuL: awful plugin for awesome window
+manager.
+
+%description plugin-awful -l hu.UTF-8
+AWesome Functions very UsefuL: awful plugin az awesome ablakkezelőhöz.
+
+%description plugin-awful -l pl.UTF-8
+AWesome Functions very UsefuL: wtyczka awful dla zarządcy okien
+awesome.
+
+%package plugin-beautiful
+Summary: Theme library for awesome window manager
+Summary(hu.UTF-8): Theme könyvtár az awesome ablakkezelőhöz
+Summary(pl.UTF-8): Biblioteka styli dla zarządcy okien awesome
+Group: X11/Window Managers
+Suggests: WallpaperChanger
+
+%description plugin-beautiful
+Theme library for awesome window manager.
+
+%description plugin-beautiful -l hu.UTF-8
+Theme könyvtár az awesome ablakkezelőhöz.
+
+%description plugin-beautiful -l pl.UTF-8
+Biblioteka styli dla zarządcy okien awesome.
+
+%package plugin-invaders
+Summary: Awesome Invaders game
+Summary(hu.UTF-8): Awesome Invaders játék
+Summary(pl.UTF-8): Gra Awesome Invaders
+Group: X11/Window Managers
+Requires: %{name}-plugin-awful = %{version}-%{release}
+Requires: %{name}-plugin-beautiful = %{version}-%{release}
+Requires: ImageMagick
+
+%description plugin-invaders
+Awesome Invaders is, as the name says, an implementation of Space
+Invaders using awesome 3's Lua interface.
+
+%description plugin-invaders -l hu.UTF-8
+Awesome Invaders, ahogy a neve is mutatja, a Space Invaders
+megvalósítása az awesome 3 lua interfészét használva.
+
+%description plugin-invaders -l pl.UTF-8
+Awesome Invaders jest grą Space Invaders zaimplementowaną w intefejsie
+Lua zarządcy okien awesome 3.
+
+%package plugin-naughty
+Summary: Naughty is a lua library that implements popup notifications for awesome 3
+Summary(hu.UTF-8): Naughty egy lua-könyvtár, amely felugró értesítéseket tesz lehetővé awesome3-ban
+Summary(pl.UTF-8): Powiadomienia w postaci wyskakujących okienek dla awesome 3
+Group: X11/Window Managers
+Requires: %{name}-plugin-awful = %{version}-%{release}
+Requires: %{name}-plugin-beautiful = %{version}-%{release}
+
+%description plugin-naughty
+Naughty is a lua library that implements popup notifications for
+awesome3.
+
+%description plugin-naughty -l hu.UTF-8
+Naughty egy lua-könyvtár, amely felugró értesítéseket tesz lehetővé
+awesome3-ban.
+
+%description plugin-naughty -l pl.UTF-8
+Biblioteka lua dla zarządcy okien awesome 3 implementująca
+powiadomienia w formie wyskakujących okienek.
+
+%package plugin-revelation
+Summary: Plugin that allows to bring a view of all your open clients
+Summary(hu.UTF-8): Revelation egy nézetet hoz létre az összes megnyitott kliensről
+Summary(pl.UTF-8): Wtyczka do awesome 3 dająca widok wszystkich otwartych okien
+Group: X11/Window Managers
+
+%description plugin-revelation
+Revelation brings up a view of all your open clients; left-clicking a
+client pops to the first tag that client is visible on and
+raises/focuses the client. In addition, the Enter key pops to the
+currently focused client, and Escape aborts.
+
+%description plugin-revelation -l hu.UTF-8
+Revelation egy nézetet hoz létre az összes megnyitott kliensről; egy
+kliensre bal gombbal kattintva az első olyan cimkére ugorhatsz, ahol a
+kliens látható, és fókuszba hozza a klienst. Az Enter billentyűre a
+fókuszban levő kliensre ugrik, és az Escape billentyűvel megszakítható
+a művelet.
+
+%description plugin-revelation -l pl.UTF-8
+Revelation umożliwia podgląd wszystkich otwartych okien. Kliknięcie
+prawym przyciskiem myszy na okienko przełącza na pierwszy znacznik, na
+którym okno jest widoczne i przywołuje okno na pierwszy plan.
+Dodatkowo klawisz Enter przełącza fokus mięszy oknami a klawisz Esc
+przerywa podgląd okien.
+
+%package plugin-tabulous
+Summary: Fabulous tabs for awesome window manager
+Summary(hu.UTF-8): Tab-ok awesome-hoz
+Summary(pl.UTF-8): Zakładki dla zarządcy okien awesome
+Group: X11/Window Managers
+
+%description plugin-tabulous
+Fabulous tabs for awesome.
+
+%description plugin-tabulous -l hu.UTF-8
+Tab-ok awesome-hoz.
+
+%description plugin-tabulous -l pl.UTF-8
+Zakładki dla zarządcy okien awesome.
+
%prep
%setup -q
%patch0 -p1
+%patch1 -p1
%build
%cmake \
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT%{_datadir}/xsessions
+install -d $RPM_BUILD_ROOT{%{_datadir}/xsessions,%{_docdir}/%{name}-doc-%{version}}
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
install %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/xsessions/%{name}.desktop
+mv $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/luadoc $RPM_BUILD_ROOT%{_docdir}/%{name}-doc-%{version}/luadoc
+
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc AUTHORS LICENSE README STYLE
+%doc AUTHORS BUGS README STYLE
%attr(755,root,root) %{_bindir}/%{name}
%attr(755,root,root) %{_bindir}/%{name}-client
%attr(755,root,root) %{_bindir}/awsetbg
-%{_datadir}/%{name}
+%dir %{_datadir}/%{name}/lib
+%{_datadir}/%{name}/lib/capi.lua
+%dir %{_datadir}/%{name}
+%dir %{_datadir}/%{name}/icons
+%dir %{_datadir}/%{name}/icons
+%{_datadir}/%{name}/icons
%{_datadir}/xsessions/%{name}.desktop
%{_mandir}/man1/%{name}*
+%{_mandir}/man1/awsetbg*
%{_mandir}/man5/%{name}*
-# XXX shouldn't this dir be in filesystem or xorg packages?
+
+%files doc
+%defattr(644,root,root,755)
+%{_docdir}/%{name}-doc-%{version}
+
+%files example-config
+%defattr(644,root,root,755)
%dir %{_sysconfdir}/xdg
%dir %{_sysconfdir}/xdg/awesome
%{_sysconfdir}/xdg/awesome/*
+
+%files plugin-awful
+%defattr(644,root,root,755)
+%dir %{_datadir}/awesome/lib/awful
+%{_datadir}/awesome/lib/awful/*.lua
+
+%files plugin-beautiful
+%defattr(644,root,root,755)
+%dir %{_datadir}/awesome/themes/*
+%{_datadir}/awesome/lib/beautiful.lua
+%{_datadir}/awesome/themes
+
+%files plugin-invaders
+%defattr(644,root,root,755)
+%{_datadir}/awesome/lib/invaders.lua
+%dir %{_datadir}/awesome/icons/invaders
+%{_datadir}/awesome/icons/invaders/*.png
+
+%files plugin-naughty
+%defattr(644,root,root,755)
+%{_datadir}/awesome/lib/naughty.lua
+
+%files plugin-revelation
+%defattr(644,root,root,755)
+%{_datadir}/awesome/lib/revelation.lua
+
+%files plugin-tabulous
+%defattr(644,root,root,755)
+%{_datadir}/awesome/lib/tabulous.lua