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

Revision 11632, 5.1 KB checked in by ara_t, 6 years ago (diff)

xmonad/xmobar: rebuild with ghc-8.4.2

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