source: projects/specs/trunk/x/xmonad/xmonad-vl.spec @ 11992

Revision 11992, 5.6 KB checked in by ara_t, 5 years ago (diff)

xmobar/xmonad: update/build with ghc-8.6.3

Line 
1%define pkg_name    xmonad
2%define pkg_version 0.15
3%define pkg_release 1%{?_dist_release}
4
5Summary:     Lightweight X11 window manager written in Haskell
6Summary(ja): Haskellで書かれたタイル型ウィンドウマネージャ
7Name:    %{pkg_name}
8Version: %{pkg_version}
9Release: %{pkg_release}
10
11License: BSD3
12Group:   User Interface/Desktops
13URL:     http://hackage.haskell.org
14
15Source0: packages
16Source1: xmonad.desktop
17
18# # Patch for building ghc-8.4
19# Source2: xmonad-0.13_using_ghc-8.4.patch
20
21Source11: X11-1.9.tar.gz
22Source12: X11.cabal
23Source13: extensible-exceptions-0.1.1.4.tar.gz
24Source14: extensible-exceptions.cabal
25Source15: setlocale-1.0.0.8.tar.gz
26Source16: setlocale.cabal
27Source17: utf8-string-1.0.1.1.tar.gz
28Source18: utf8-string.cabal
29Source19: xmonad-0.15.tar.gz
30Source20: xmonad.cabal
31
32BuildRoot: %{_tmppath}/%{name}-%{version}-root
33
34BuildRequires: ghc haskell-platform
35BuildRequires: libffi-devel gmp-devel zlib-devel
36
37BuildRequires: libghc-data-default-class
38BuildRequires: libghc-dlist
39BuildRequires: libghc-old-locale
40BuildRequires: libghc-data-default
41BuildRequires: libghc-semigroups
42
43BuildRequires: xorg-x11-devel
44BuildRequires: libXrandr-devel libXinerama-devel
45BuildRequires: libXScrnSaver-devel
46BuildRequires: docbook-utils docbook-utils-pdf docbook-style-xsl
47
48Requires: libXrandr-devel libXinerama-devel
49Requires: libXScrnSaver-devel
50Requires: haskell-platform-dep
51Requires: libghc-data-default-class
52Requires: libghc-dlist
53Requires: libghc-old-locale
54Requires: libghc-data-default
55Requires: libghc-semigroups
56
57
58Vendor: Project Vine
59Distribution: Vine Linux
60Packager: ara_t
61
62
63%description
64Xmonad is a minimalist tiling window manager for X, written in Haskell.
65Windows are managed using automatic layout algorithms, which can be dynamically
66reconfigured. At any time windows are arranged so as to maximise the use of
67screen real estate. All features of the window manager are accessible purely
68from the keyboard: a mouse is entirely optional.
69Xmonad is configured in Haskell, and custom layout algorithms may be implemented
70 by the user in config files.
71A principle of Xmonad is predictability: the user should know in advance
72 precisely the window arrangement that will result from any action.
73
74Please sample configure file as follows.
75`cp %{_docdir}/%{name}/%{name}-%{version}/xmonad.hs ~/.xmonad/`
76
77
78%description -l ja
79XmonadはHaskellで書かれたタイル型ウィンドウマネージャです。
80ウィンドウは自動的レイアウトアルゴリズムによって管理されており、
81ウィンドウはいつでも最大化されて配置されます。
82純粋にキーボード操作だけで操作することが可能であり、
83マウスの使用は単にオプションです。
84XmonadはHaskellで設定され、ユーザーが設定ファイルを書くことで
85レイアウトをカスタマイズすることができます。
86
87設定ファイルの例が
88%{_docdir}/%{name}/%{name}-%{version}/xmonad.hs
89にあるため、
90~/.xmonad 以下にコピーして使用して下さい。
91
92
93%prep
94%{__rm} -rf ${RPM_BUILD_ROOT}
95
96%build
97%ghc_pkg_init
98
99cd %{_builddir}
100for pkg in `sed '$d' %{SOURCE0}`; do
101    %{__tar} xzf %{_sourcedir}/${pkg}.tar.gz
102    pushd ${pkg}
103        %ghc_fix_dependencies ${pkg}
104        %cabal_configure2 %{name} ${pkg}
105        %cabal_build
106        %cabal_haddock
107        %cabal_copy_resister %{name}_${pkg}
108    popd
109done
110
111# build xmonad
112for pkg in `tail -n 1 %{SOURCE0}`; do
113    %{__tar} xzf %{_sourcedir}/${pkg}.tar.gz
114    pushd ${pkg}
115        %ghc_fix_dependencies ${pkg}
116        %cabal_configure2 %{name} %{name}-%{version}
117        %cabal_build
118        %cabal_haddock
119        %cabal_copy_resister %{pkg_name}-%{version}
120    popd
121done
122
123
124%install
125%{__mkdir_p} ${RPM_BUILD_ROOT}%{_datadir}/man/man1
126
127# copy man file
128pushd %{_builddir}/%{name}-%{version}/man
129    %{__mv} xmonad.1 ${RPM_BUILD_ROOT}%{_datadir}/man/man1
130    %{__mv} xmonad.1.html xmonad.1.markdown xmonad.hs \
131     ${RPM_BUILD_ROOT}%{_docdir}/%{name}/%{name}-%{version}
132popd
133
134%{__rm} -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-%{version}/man
135
136# xsession desktop entry
137%{__mkdir_p} %{buildroot}%{_datadir}/xsessions/
138%{__install} -m 644 %{SOURCE1} ${RPM_BUILD_ROOT}%{_datadir}/xsessions/
139
140# copy documents
141pushd %{_builddir}/%{name}-%{version}
142    %{__cp} CHANGES.md LICENSE README.md STYLE \
143     ${RPM_BUILD_ROOT}%{_docdir}/%{name}/%{name}-%{version}
144popd
145
146%clean
147%{__rm} -rf ${RPM_BUILD_ROOT}
148
149
150%post
151%ghc_pkg_recache
152
153%postun
154%ghc_pkg_recache
155
156
157%files
158%defattr(-, root, root)
159%{_bindir}/
160%{_libdir}/ghc-%{ghc_version}/
161%{_libdir}/ghc-lib/
162%{_datadir}/xsessions/
163%{_docdir}/%{name}
164%{_mandir}/man1/
165
166
167%changelog
168* Mon Dec 17 2018 Toshiaki Ara <ara_t@384.jp> 0.15-1
169- update to 0.15
170- build using ghc-8.6.3
171
172* Wed Aug 08 2018 Toshiaki Ara <ara_t@384.jp> 0.14-2
173- add Requires: libXScrnSaver-devel
174
175* Wed Aug 08 2018 Toshiaki Ara <ara_t@384.jp> 0.14-1
176- update to 0.14
177- add BuildRequires: libXScrnSaver-devel for X11-1.9
178- drop Patch2
179
180* Fri Jul 20 2018 Toshiaki Ara <ara_t@384.jp> 0.13-3
181- build using ghc-8.4.3
182
183* Fri May 18 2018 Toshiaki Ara <ara_t@384.jp> 0.13-2
184- rebuild using ghc-8.4.2
185- add Patch for building with ghc-8.4 (Source2)
186- add BuildRequires: libghc-old-locale
187- add BuildRequires: libghc-semigroups
188- rewrite using macro
189
190* Tue Jan 09 2018 Toshiaki Ara <ara_t@384.jp> 0.13-1
191- update to 0.13
192- build using ghc-8.2.2
193
194* Fri Feb 03 2017 Toshiaki Ara <ara_t@384.jp> 0.12-5
195- rebuild using ghc-8.0.1
196
197* Wed May 04 2016 Toshiaki Ara <ara_t@384.jp> 0.12-4
198- rebuilt
199
200* Tue Apr 12 2016 Toshiaki Ara <ara_t@384.jp> 0.12-3
201- correct SPEC file
202
203* Tue Mar 01 2016 Toshiaki Ara <ara_t@384.jp> 0.12-2
204- rebuild under dependent rpm packages
205
206* Sat Feb 27 2016 Toshiaki Ara <ara_t@384.jp> 0.12-1
207- new package
Note: See TracBrowser for help on using the repository browser.