# cabal2spec-0.25.2 # https://fedoraproject.org/wiki/Packaging:Haskell # https://fedoraproject.org/wiki/PackagingDrafts/Haskell %global pkg_name xmonad %global common_summary xmonad tiling window manager %global common_description xmonad is a tiling window manager for X. Windows are arranged\ automatically to tile the screen without gaps or overlap, maximising\ screen use. All features of the window manager are accessible from\ the keyboard: a mouse is strictly optional. xmonad is written and\ extensible in Haskell. Custom layout algorithms, and other\ extensions, may be written by the user in config files. Layouts are\ applied dynamically, and different layouts may be used on each\ workspace. Xinerama is fully supported, allowing windows to be tiled\ on several screens. Name: %{pkg_name} Version: 0.10 Release: 11%{?dist} Summary: A tiling window manager Group: User Interface/X License: BSD # BEGIN cabal2spec URL: http://hackage.haskell.org/package/%{name} Source0: http://hackage.haskell.org/packages/archive/%{name}/%{version}/%{name}-%{version}.tar.gz ExclusiveArch: %{ghc_arches} BuildRequires: ghc-Cabal-devel BuildRequires: ghc-rpm-macros %{!?without_hscolour:hscolour} # END cabal2spec Source1: xmonad-session.desktop Source2: xmonad-start Source3: xmonad.desktop Source4: README.fedora Source5: xmonad-gnome-session.desktop Source6: xmonad.session Source7: xmonad.hs Patch0: track-currently-processing-event.patch BuildRequires: desktop-file-utils BuildRequires: ghc-X11-prof BuildRequires: ghc-containers-prof BuildRequires: ghc-mtl-prof BuildRequires: ghc-extensible-exceptions-prof BuildRequires: ghc-process-prof BuildRequires: ghc-unix-prof BuildRequires: ghc-utf8-string-prof Requires: %{pkg_name}-basic = %{version}-%{release} Requires: %{pkg_name}-config = %{version}-%{release} %description %{common_description} This is a meta-package that installs xmonad-basic and ghc-xmonad-contrib-devel, allowing xmonad to be customized with "~/.xmonad/xmonad.hs". To use xmonad with GNOME, please install xmonad-gnome. %package basic Summary: A tiling window manager Requires: %{pkg_name}-core = %{version}-%{release} # required until there is a command to open a system-default xterminal Requires: xterm Requires: dmenu Obsoletes: %{pkg_name}-core < 0.10-5 %description basic %{common_description} This meta-package allows running the default basic upstream xmonad configuration with xterm and dmenu. If you want to customize xmonad, please install xmonad or xmonad-gnome. %package core Summary: A tiling window manager # for xmessage Requires: xorg-x11-apps %description core This package just provides the core xmonad window manager program. To run the default xmonad configuration you should install xmonad-basic. If you want to customize xmonad please install either xmonad or xmonad-gnome. %package config Summary: xmonad config Requires: %{pkg_name}-core = %{version}-%{release} Requires: ghc-%{pkg_name}-devel = %{version}-%{release} Requires: ghc-xmonad-contrib-devel %description config This package provides a basic desktop configuration for xmonad. %package gnome Summary: xmonad GNOME session Requires: %{pkg_name}-config = %{version}-%{release} Requires: gnome-session, gnome-terminal %description gnome %{common_description} This package adds a "xmonad-gnome" X session configuration so that xmonad can be started easily from GDM to run in a GNOME session. %prep %setup -q %patch0 -p1 -b .track-currently-processing-event cp -p %SOURCE4 . %build %ghc_lib_build %install %ghc_lib_install install -p -m 0644 -D man/%{name}.1 %{buildroot}%{_mandir}/man1/%{name}.1 install -p -m 0644 -D %SOURCE1 %{buildroot}%{_datadir}/xsessions/%{name}.desktop install -p -m 0755 -D %SOURCE2 %{buildroot}%{_bindir}/%{name}-start desktop-file-install --dir=${RPM_BUILD_ROOT}%{_datadir}/applications %{SOURCE3} install -p -m 0644 -D %SOURCE5 %{buildroot}%{_datadir}/xsessions/%{name}-gnome.desktop install -p -m 0644 -D %SOURCE6 %{buildroot}%{_datadir}/gnome-session/sessions/%{name}.session install -p -m 0644 -D %SOURCE7 %{buildroot}%{_datadir}/xmonad/%{name}.hs rm %{buildroot}%{_datadir}/%{name}-%{version}/man/xmonad.hs # ship LICENSE in xmonad-core rm %{buildroot}%{_docdir}/%{name}-%{version}/LICENSE %ghc_package %ghc_description %ghc_devel_package %ghc_devel_description %ghc_devel_post_postun %files %files basic %{_datadir}/xsessions/%{name}.desktop %files core %doc CONFIG LICENSE README man/%{name}.hs README.fedora %attr(755,root,root) %{_bindir}/%{name} %attr(755,root,root) %{_bindir}/%{name}-start %{_mandir}/man1/%{name}.1* %{_datadir}/applications/%{name}.desktop %files config %{_datadir}/xmonad/%{name}.hs %files gnome %{_datadir}/xsessions/%{name}-gnome.desktop %{_datadir}/gnome-session/sessions/%{name}.session %ghc_files LICENSE %doc STYLE %changelog * Thu May 31 2012 Jens Petersen - 0.10-11 - really fix xmonad-start to use hardware-platform correctly * Tue May 29 2012 Jens Petersen - 0.10-10 - fix user binary ldd check on i686/i386 using "uname -i" not "arch", and then recompile directly instead of just touching xmonad.hs first * Fri May 25 2012 Jens Petersen - 0.10-9 - basic subpackage should only obsolete core from before the split * Thu May 24 2012 Jens Petersen - 0.10-8 - move xmonad.desktop from core to basic subpackage * Thu May 24 2012 Jens Petersen - 0.10-7 - xmonad-start: if user binary has missing shared lib dependencies touch xmonad.hs so it gets recompiled (#806624 reported by Erik Streb) * Fri Mar 23 2012 Jens Petersen - 0.10-6 - try delaying manpage terminal startup 5s to avoid window resize - add license to ghc_files * Mon Feb 20 2012 Jens Petersen - 0.10-5 - use gnome-terminal to display initial manpage from xmonad-gnome - change the xmonad-gnome session name to xmonad-gnome * Tue Feb 7 2012 Jens Petersen - 0.10-4 - new "basic" meta-subpackage for pulling in xterm and dmenu for the default basic upstream config, also used by the base package * Tue Feb 7 2012 Jens Petersen - 0.10-3 - xmonad-gnome sessions now use gnomeConfig in xmonad.hs - add note about gnome-panel menu activation in README.fedora * Fri Jan 6 2012 Jens Petersen - 0.10-2 - update to cabal2spec-0.25.2 * Fri Dec 2 2011 Jens Petersen - 0.10-1 - update to 0.10 and cabal2spec-0.24.1 - depends on utf8-string - re-enable haddock - replace gnomeConfig in xmonad-start with xmonad.hs in new config subpackage - drop the dynamic linking patch: dyn libs need to be default first (#744274) - require dmenu * Wed Oct 26 2011 Marcela Mašláňová - 0.9.2-11.2 - rebuild with new gmp without compat lib * Wed Oct 12 2011 Peter Schiffer - 0.9.2-11.1 - rebuild with new gmp * Thu Jul 28 2011 Jens Petersen - 0.9.2-11 - remove _isa again since it doesn't fix the libX11-devel multilib problem * Thu Jul 28 2011 Jens Petersen - 0.9.2-10 - add _isa to the ghc-xmonad-contrib-devel requires to avoid missing libX11.so when custom linking (reported by Evan Dale Aromin, #723558) * Thu Jun 16 2011 Jens Petersen - 0.9.2-9 - ignore user configured packages when recompiling user xmonad.hs to avoid linking errors (#713035) - don't display README.fedora initially on startup anymore - drop the ghc-xmonad requires from xmonad-core - update to cabal2spec-0.23.2 * Fri May 13 2011 Jens Petersen - 0.9.2-8 - add a core subpackage and let the base package can pull in ghc-xmonad*-devel - add a gnome subpackage for the gnome session - more README.fedora improvements - xmonad-start: quote the xterm commands and support ~/.xmonad/session - fix doc files conflicts by having xmonad-core require ghc-xmonad * Wed May 11 2011 Jens Petersen - 0.9.2-7 - xmonad-start no longer execs xmonad not to confuse gnome-session - xmonad-start now tries to setup a new xmonad.hs for GNOME desktop if running a xmonad-gnome session with xmonad-contrib installed - improvements to README.fedora * Fri Apr 22 2011 Jens Petersen - 0.9.2-6 - drop explicit requires on ghc-xmonad-devel for lighter installs - update readme to mention gsettings for gnome3 - enable ppc64 build - buildrequires desktop-file-utils - add an xsession file for a gnome-session too - add a gnome-session-3 .session file * Fri Apr 1 2011 Jens Petersen - 0.9.2-5 - use desktop-file-install to install xmonad.desktop correctly - update the desktop files for desktop-file-validate * Fri Mar 11 2011 Jens Petersen - 0.9.2-4 - disable haddock for now to build * Thu Mar 10 2011 Fabio M. Di Nitto - 0.9.2-3 - Enable build on sparcv9 * Mon Feb 07 2011 Fedora Release Engineering - 0.9.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Sat Jan 15 2011 Ben Boeckel - 0.9.2-1 - Update to 0.9.2 * Sat Jan 15 2011 Ben Boeckel - 0.9.1-12 - Update to cabal2spec-0.22.4 - Rebuild - Use %%{buildroot} * Sun Dec 5 2010 Jens Petersen - 0.9.1-11 - rebuild * Fri Nov 26 2010 Jens Petersen - 0.9.1-10 - backport exceptions changes from upstream darcs for ghc7 base4 - update url and drop -o obsoletes * Sun Nov 07 2010 Ben Boeckel - 0.9.1-9 - Rebuild * Wed Sep 29 2010 jkeating - 0.9.1-8 - Rebuilt for gcc bug 634757 * Thu Sep 23 2010 Jens Petersen - 0.9.1-7 - xmonad-start should run xterm in background - improve README.fedora more * Sun Sep 12 2010 Jens Petersen - 0.9.1-6 - add application desktop file for gnome-session to find xmonad so setting /desktop/gnome/session/required_components/windowmanager now works - add xmonad-dynamic-link.patch to dynamically link customized xmonad - move display of manpage for new users from xmonad.hs to xmonad-start and only display it when no ~/.xmonad/ - drop skel file and dont create ~/.xmonad by default * Sat Sep 4 2010 Jens Petersen - 0.9.1-5 - update to ghc-rpm-macros-0.8.1, hscolour and drop doc pkg (cabal2spec-0.22.2) * Fri Jun 25 2010 Jens Petersen - 0.9.1-4 - strip dynamic files (cabal2spec-0.21.4) * Tue Apr 27 2010 Jens Petersen - 0.9.1-3 - rebuild against ghc-6.12.2 * Wed Jan 13 2010 Jens Petersen - 0.9.1-2 - rebuild against ghc-mtl package * Mon Jan 11 2010 Jens Petersen - 0.9.1-1 - update to 0.9.1 - update to ghc-rpm-macros-0.5.1 and cabal2spec-0.21.1: - drop doc and prof bcond - use common_summary and common_description - use ghc_name, ghc_binlib_package and ghc_pkg_deps - build shared library - drop X11_minver for now: it breaks macros - drop redundant buildroot and its install cleaning * Tue Dec 8 2009 Jens Petersen - 0.9-4 - drop the ppc build cabal workaround * Tue Nov 17 2009 Jens Petersen - 0.9-3 - use %%ghc_pkg_ver for requires * Sun Nov 15 2009 Jens Petersen - 0.9-2 - also buildrequires and requires ghc-X11-doc * Sun Nov 15 2009 Jens Petersen - 0.9-1 - update to 0.9 (requires ghc-X11 >= 1.4.6.1) - drop superfluous X11_version from ghc-X11 requires - rename X11_version to X11_minver - remove extra xmonad.hs under datadir * Thu Jul 30 2009 Yaakov M. Nemoy - 0.8.1-15 - rebuild against newer packages from the mass rebuild * Mon Jul 27 2009 Fedora Release Engineering - 0.8.1-14 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Sat May 16 2009 Jens Petersen - 0.8.1-13 - buildrequires ghc-rpm-macros (cabal2spec-0.16) - rebuild for ghc-6.10.3 * Wed May 6 2009 Yaakov M. Nemoy - 0.8.1-12 - applies changes from jens' patch - renames xmonad.desktop entry - adds .orig of the xmonad default config - modifies manpage patch to use 'better' filenames - renames manpage patch * Mon Apr 27 2009 Yaakov M. Nemoy - 0.8.1-11 - adds runghc hack taken from haddock * Mon Apr 27 2009 Yaakov M. Nemoy - 0.8.1-10 - converts the sample config into a patch on the upstream source - renumbers down the source lines * Mon Apr 20 2009 Jens Petersen - 0.8.1-9 - update to latest macros.ghc without ghc_version (cabal2spec-0.15) - require xorg-x11-apps for xmessage * Mon Apr 6 2009 Jens Petersen - merge xmonad-session into xmonad-start - fix with_prof configure test * Thu Apr 02 2009 Till Maas - 0.8.1-8 - remove tabs in spec - rename start-xmonad to xmonad-start for consistency with xmonad-session - add directory creation and exec of xmonad to start-xmonad - install xmonad.hs that only displays manpage in /etc/skel/.xmonad/xmonad.hs - add xterm dependency * Tue Mar 31 2009 Yaakov M. Nemoy - 0.8.1-7 - added session and start scripts * Mon Mar 30 2009 Till Maas - 0.8.1-6 - add desktop file - install man page - include sample config file (xmonad.hs) - include other documentation files * Tue Mar 17 2009 Yaakov M. Nemoy - 0.8.1-5 - refixes permissions after doing it wrong the first time * Fri Mar 13 2009 Yaakov M. Nemoy - 0.8.1-4 - fixed license to BSD - fixed version of X11 to be a tad more flexible - fixes permissions of /usr/bin/xmonad * Mon Mar 2 2009 Yaakov M. Nemoy - 0.8.1-3 - updated to newest cabal2spec 0.12 - this includes the shiny new devel package * Tue Feb 24 2009 Yaakov M. Nemoy - 0.8.1-2 - updated spec to meet new guidelines ala cabal2spec 0.7 * Wed Jan 21 2009 ynemoy - 0.8.1-1 - initial packaging for Fedora created by cabal2spec