]>
Commit | Line | Data |
---|---|---|
109d9bb2 JP |
1 | # |
2 | # Conditional build: | |
3 | %bcond_with doc # build with docs (broken) | |
4 | # | |
95aecafe JP |
5 | Summary: Tiling window manager |
6 | Name: xmonad | |
109d9bb2 | 7 | Version: 0.12 |
7f36db1a | 8 | Release: 2 |
95aecafe JP |
9 | License: BSD |
10 | Group: X11/Window Managers | |
c9815d67 | 11 | Source0: http://hackage.haskell.org/package/%{name}-%{version}/%{name}-%{version}.tar.gz |
109d9bb2 | 12 | # Source0-md5: 6fd5f268d38e940e090af0726795f513 |
95aecafe JP |
13 | Source1: %{name}.desktop |
14 | URL: http://www.xmonad.org | |
15 | BuildRequires: ghc >= 6.12.3 | |
c9815d67 | 16 | BuildRequires: ghc-X11 >= 1.6 |
ce57e46f | 17 | BuildRequires: ghc-extensible-exceptions |
95aecafe | 18 | BuildRequires: ghc-mtl |
366777fb | 19 | BuildRequires: ghc-setlocale |
109d9bb2 | 20 | BuildRequires: ghc-utf8-string >= 0.3 |
95aecafe JP |
21 | BuildRequires: rpmbuild(macros) >= 1.608 |
22 | %requires_eq ghc | |
c9815d67 JP |
23 | %requires_releq ghc-extensible-exceptions |
24 | %requires_releq ghc-mtl | |
366777fb | 25 | %requires_releq ghc-setlocale |
c9815d67 JP |
26 | %requires_releq ghc-utf8-string |
27 | %requires_releq ghc-X11 | |
95aecafe JP |
28 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
29 | ||
30 | # debuginfo is not useful for ghc | |
31 | %define _enable_debug_packages 0 | |
32 | %define _xdeskdir %{_datadir}/xsessions | |
33 | ||
34 | %description | |
35 | xmonad is a tiling window manager for X. Windows are arranged | |
36 | automatically to tile the screen without gaps or overlap, maximising | |
37 | screen use. All features of the window manager are accessible from the | |
38 | keyboard: a mouse is strictly optional. xmonad is written and | |
39 | extensible in Haskell. Custom layout algorithms, and other extensions, | |
40 | may be written by the user in config files. Layouts are applied | |
41 | dynamically, and different layouts may be used on each workspace. | |
42 | Xinerama is fully supported, allowing windows to be tiled on several | |
43 | screens. | |
44 | ||
45 | %package doc | |
46 | Summary: HTML documentation for %{name} | |
47 | Summary(pl.UTF-8): Dokumentacja w formacie HTML dla %{name} | |
48 | Group: Documentation | |
49 | ||
50 | %description doc | |
51 | HTML documentation for %{name}. | |
52 | ||
53 | %description doc -l pl.UTF-8 | |
54 | Dokumentacja w formacie HTML dla %{name}. | |
55 | ||
56 | %prep | |
57 | %setup -q | |
58 | ||
59 | %build | |
60 | runhaskell Setup.lhs configure -v2 \ | |
61 | --prefix=%{_prefix} \ | |
62 | --libdir=%{_libdir} \ | |
63 | --libexecdir=%{_libexecdir} \ | |
64 | --docdir=%{_docdir}/%{name}-%{version} | |
65 | ||
66 | runhaskell Setup.lhs build | |
109d9bb2 | 67 | %if %{with doc} |
95aecafe | 68 | runhaskell Setup.lhs haddock --executables |
109d9bb2 | 69 | %endif |
95aecafe JP |
70 | |
71 | %install | |
72 | rm -rf $RPM_BUILD_ROOT | |
73 | install -d $RPM_BUILD_ROOT%{_libdir}/%{ghcdir}/package.conf.d | |
74 | ||
75 | runhaskell Setup.lhs copy --destdir=$RPM_BUILD_ROOT | |
76 | ||
77 | install -d $RPM_BUILD_ROOT{%{_deskdir},%{_xdeskdir}} | |
c9815d67 | 78 | cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_xdeskdir}/%{name}.desktop |
95aecafe JP |
79 | |
80 | # work around automatic haddock docs installation | |
81 | rm -rf %{name}-%{version}-doc | |
109d9bb2 | 82 | %if %{with doc} |
95aecafe | 83 | cp -a $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/html %{name}-%{version}-doc |
109d9bb2 | 84 | %endif |
95aecafe JP |
85 | %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version} |
86 | ||
87 | %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/man | |
88 | %{__rmdir} $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version} | |
89 | install -d $RPM_BUILD_ROOT%{_mandir}/man1 | |
c9815d67 | 90 | cp -p man/xmonad.1 $RPM_BUILD_ROOT%{_mandir}/man1 |
95aecafe JP |
91 | |
92 | runhaskell Setup.lhs register \ | |
93 | --gen-pkg-config=$RPM_BUILD_ROOT/%{_libdir}/%{ghcdir}/package.conf.d/%{name}.conf | |
94 | ||
95 | %clean | |
96 | rm -rf $RPM_BUILD_ROOT | |
97 | ||
98 | %post | |
99 | %ghc_pkg_recache | |
100 | ||
101 | %postun | |
102 | %ghc_pkg_recache | |
103 | ||
104 | %files | |
105 | %defattr(644,root,root,755) | |
106 | %doc man/xmonad.hs | |
107 | %attr(755,root,root) %{_bindir}/xmonad | |
108 | %{_libdir}/%{ghcdir}/package.conf.d/%{name}.conf | |
109 | %{_libdir}/%{ghcdir}/%{name}-%{version} | |
110 | %{_mandir}/man1/xmonad.1* | |
111 | %{_xdeskdir}/%{name}.desktop | |
112 | ||
109d9bb2 | 113 | %if %{with doc} |
95aecafe JP |
114 | %files doc |
115 | %defattr(644,root,root,755) | |
116 | %doc %{name}-%{version}-doc/* | |
109d9bb2 | 117 | %endif |