2 %bcond_with ext2undel # with ext2 undelete fs
3 %bcond_without perl_vfs # without perl depending vfs'es -- to avoid perl autoreq
4 %bcond_with samba # with SAMBA vfs support
5 %bcond_without x # without text edit in X support
7 Summary: A user-friendly file manager and visual shell
8 Summary(de.UTF-8): Visuelle Shell Midnight Commander
9 Summary(es.UTF-8): Interpretador de comandos visual Midnight Commander
10 Summary(fr.UTF-8): Un gestionnaire de fichiers puissant et agréable en mode console
11 Summary(hu.UTF-8): Egy felhasználóbarát fájlkezelő és vizuális shell
12 Summary(ja.UTF-8): 使いやすいファイルマネージャとビジュアルシェル
13 Summary(pl.UTF-8): Midnight Commander - powłoka wizualna
14 Summary(pt_BR.UTF-8): Interpretador de comandos visual Midnight Commander
15 Summary(ru.UTF-8): Диспетчер файлов Midnight Commander
16 Summary(tr.UTF-8): Midnight Commander görsel kabuğu
17 Summary(uk.UTF-8): Диспетчер файлів Midnight Commander
18 Summary(zh_CN.UTF-8): 一个方便实用的文件管理器和虚拟Shell
24 Group: Applications/Shells
25 Source0: http://ftp.midnight-commander.org/%{name}-%{version}.tar.xz
26 # Source0-md5: 3c1f77b71dba1f4eeeedc4276627fed7
27 Source3: %{name}-non-english-man-pages.tar.bz2
28 # Source3-md5: 17d7b574e1b85ad6f8ddceda9e841f19
29 Source7: %{name}.desktop
31 Patch1: %{name}-no-ws-visible.patch
32 Patch2: %{name}-no-compute-totals.patch
33 Patch3: %{name}-file-find-case-insensitive.patch
34 Patch4: %{name}-confirm-exit.patch
35 Patch5: %{name}-noperl-vfs.patch
36 # at now syntax highligthing for PLD-update-TODO and CVSROOT/users
37 Patch6: %{name}-pld-developerfriendly.patch
38 Patch7: ebook-ext.patch
40 URL: http://www.midnight-commander.org/
41 BuildRequires: autoconf >= 2.60
42 BuildRequires: automake >= 1.5
43 %{?with_ext2undel:BuildRequires: e2fsprogs-devel}
45 BuildRequires: gettext-tools >= 0.18.1
46 BuildRequires: glib2-devel >= 1:2.30.0
48 BuildRequires: gpm-devel
50 BuildRequires: libssh2-devel >= 1.2.5
51 BuildRequires: libtool >= 2:2
52 BuildRequires: pam-devel
53 BuildRequires: pcre-devel
54 BuildRequires: pkgconfig
55 BuildRequires: rpm-pythonprov
56 BuildRequires: rpmbuild(macros) >= 1.268
57 BuildRequires: sed >= 4.0
58 BuildRequires: slang-devel >= 2.2.1
59 BuildRequires: tar >= 1:1.22
60 %{?with_x:BuildRequires: xorg-lib-libX11-devel}
63 Requires: glib2 >= 1:2.30.0
64 Requires: libssh2 >= 1.2.5
65 Requires: pam >= 0.77.3
67 Requires: setup >= 2.4.6-2
70 Suggests: cdrtools-utils
83 Suggests: p7zip-standalone
84 Suggests: perl-tools-pod
98 Conflicts: bash < 2.05b
100 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
102 %define specflags_ia32 -fomit-frame-pointer
105 Midnight Commander is a visual shell much like a file manager, only
106 with way more features. It is text mode, but also includes mouse
107 support if you are running GPM. Its coolest feature is the ability to
108 FTP, view tar, zip files, and poke into RPMs for specific files. :-)
110 %description -l de.UTF-8
111 Midnight Commander ist ein Visual-Shell, ähnlich einem Dateimanager,
112 aber mit zusätzlichen Funktionen. Es läuft im Textmodus, kann jedoch
113 eine Maus unterstützen, wenn GPM betrieben wird. Seine coolsten
114 Fähigkeiten sind die FTP-Option, das Einsehen von tar- und zip-Dateien
115 und das Herausfischen von spezifischen Dateien aus RPMs.
117 %description -l es.UTF-8
118 Midnight Commander es un interpretador de comandos visual que más
119 parece un administrador de archivos, solamente con varias
120 características a más. Es un programa en modo texto, pero incluye
121 soporte para ratón, si estuviera ejecutando GPM o en una ventana
122 xterm. Su característica más genial es la habilidad de cotillear en
123 RPMs buscando archivos específicos. :-)
125 %description -l fr.UTF-8
126 Midnight Commander est une interface pour la ligne de commande qui
127 tient beaucoup du gestionnaire de fichiers, mais est bien plus
128 puissant. Il fonctionne en mode console (texte), mais peut être
129 contrôlé à la souris si GPM est présent. Ses caractéristiques les plus
130 remarquables sont la possibilité de se connecter à un serveur FTP, de
131 visualiser des archives tar, de compresser des fichiers avec zip, de
132 récupérer des fichiers dans les packages RPM, et tout ceci simplement.
134 %description -l hu.UTF-8
135 Midnight Commander egy vizuális shell, lényegében egy fájlkezelő
136 sok-sok lehetőséggel. Szöveges módú, de az egeret is támogatja, ha fut
137 a GPM. A legjobb lehetőség az FTP elérése, tar, zip és RPM fájlok
140 %description -l ja.UTF-8
141 Midnight Commander はいろいろな機能を持ったファイルマネージャ兼
142 ビジュアルシェルです。これはテキストモードのアプリケーションですが、
143 GPM を使っている場合、マウスが使えます。 Midnight Commander には、 FTP
144 に接続できたり、 tar や zip や RPM の中が見えるなど、クールな機能
147 %description -l pl.UTF-8
148 Midnight Commander jest wizualną powłoką podobną do Norton Commandera.
149 Pracuje w trybie tekstowym, ale ma także obsługę myszki. Jest super ;)
150 MC ma wbudowanego klienta FTP, może zaglądać do skompresowanych
151 archiwów tar i zip, a także oglądać pliki w pakietach RPM.
153 %description -l pt_BR.UTF-8
154 Midnight Commander é um interpretador de comandos visual que mais
155 parece um gerenciador de arquivos, somente com várias características
156 a mais. Ele é um programa de modo texto, mas inclui suporte para mouse
157 se você estiver rodando GPM ou em uma janela xterm. Sua característica
158 mais legal é a habilidade de bisbilhotar em RPMs procurando arquivos
161 %description -l tr.UTF-8
162 Midnight Commander bir dosya yöneticisine çok benzeyen ancak daha
163 yetenekli bir görsel kabuktur. Metin ekranda çalışır ve GPM
164 çalışıyorsa fare desteği vardır. En hoş özellikleri FTP yapabilmesi,
165 tar, zip ve RPM dosyalarının içeriklerini gösterebilmesidir.
173 %{!?with_perl_vfs:%patch5 -p1}
180 %{__sed} -i 's:|hxx|:|hxx|tcc|:' misc/syntax/Syntax.in
182 sed -E -i -e '1s,#!\s*/usr/bin/env\s+python2(\s|$),#!%{__python3}\1,' -e '1s,#!\s*/usr/bin/env\s+python(\s|$),#!%{__python3}\1,' -e '1s,#!\s*/usr/bin/python(\s|$),#!%{__python3}\1,' \
183 src/vfs/extfs/helpers/uc1541
193 export X11_WWW="xdg-open"
195 PYTHON=%{_bindir}/python3 \
196 %{?with_ext2undel:--enable-vfs-undelfs} \
197 %{?with_samba:--enable-vfs-smb} \
198 --with-smb-configdir=/etc/samba \
199 --with-smb-codepagedir=/etc/samba/codepages \
200 --with%{!?with_x:out}-x \
203 --with-screen=slang \
204 --disable-silent-rules
209 rm -rf $RPM_BUILD_ROOT
210 install -d $RPM_BUILD_ROOT{%{_sbindir},%{_pixmapsdir},%{_desktopdir}} \
211 $RPM_BUILD_ROOT/etc/{rc.d/init.d,pam.d,shrc.d,sysconfig} \
212 $RPM_BUILD_ROOT%{_mandir}/man8
215 DESTDIR=$RPM_BUILD_ROOT
217 install %{SOURCE7} $RPM_BUILD_ROOT%{_desktopdir}
218 install %{SOURCE8} $RPM_BUILD_ROOT%{_pixmapsdir}
221 for b in man1 man8 ; do
222 install -d $RPM_BUILD_ROOT%{_mandir}/{$a,$a/$b}
223 for c in man/$a/$b/* ; do
224 install $c $RPM_BUILD_ROOT%{_mandir}/$a/$b
229 install contrib/{mc.sh,mc.csh} $RPM_BUILD_ROOT/etc/shrc.d
231 %{__rm} $RPM_BUILD_ROOT%{_mandir}/*/man8/mcserv.8
234 %{__rm} $RPM_BUILD_ROOT%{_datadir}/mc/hints/mc.hint.sv_SE
235 # another variant of it
236 %{__rm} $RPM_BUILD_ROOT%{_datadir}/mc/hints/mc.hint.it_IT
238 %{__mv} $RPM_BUILD_ROOT%{_datadir}/mc/hints/mc.hint.{zh,zh_CN}
243 rm -rf $RPM_BUILD_ROOT
245 %files -f %{name}.lang
246 %defattr(644,root,root,755)
248 %config /etc/shrc.d/mc.*
249 %attr(755,root,root) %{_bindir}/mc*
250 %dir %{_libexecdir}/mc
251 %attr(755,root,root) %{_libexecdir}/mc/cons.saver
252 %attr(755,root,root) %{_libexecdir}/mc/*.sh
253 %attr(755,root,root) %{_libexecdir}/mc/*.csh
258 %{_datadir}/mc/syntax
260 %dir %{_datadir}/mc/examples
261 %dir %{_datadir}/mc/examples/macros.d
262 %{_datadir}/mc/examples/macros.d/*
264 %dir %{_datadir}/mc/help
265 %{_datadir}/mc/help/mc.hlp
266 %lang(es) %{_datadir}/mc/help/mc.hlp.es
267 %lang(hu) %{_datadir}/mc/help/mc.hlp.hu
268 %lang(it) %{_datadir}/mc/help/mc.hlp.it
269 %lang(pl) %{_datadir}/mc/help/mc.hlp.pl
270 %lang(ru) %{_datadir}/mc/help/mc.hlp.ru
271 %lang(sr) %{_datadir}/mc/help/mc.hlp.sr
272 %dir %{_datadir}/mc/hints
273 %{_datadir}/mc/hints/mc.hint
274 # disabled hint files contain only English messages (as for 4.8.26)
275 %lang(be) %{_datadir}/mc/hints/mc.hint.be
276 %lang(bg) %{_datadir}/mc/hints/mc.hint.bg
277 %lang(ca) %{_datadir}/mc/hints/mc.hint.ca
278 %lang(cs) %{_datadir}/mc/hints/mc.hint.cs
279 %lang(da) %{_datadir}/mc/hints/mc.hint.da
280 %lang(de) %{_datadir}/mc/hints/mc.hint.de
281 #%lang(de_CH) %{_datadir}/mc/hints/mc.hint.de_CH
282 %lang(el) %{_datadir}/mc/hints/mc.hint.el
283 %lang(en_GB) %{_datadir}/mc/hints/mc.hint.en_GB
284 %lang(eo) %{_datadir}/mc/hints/mc.hint.eo
285 %lang(es) %{_datadir}/mc/hints/mc.hint.es
286 %lang(et) %{_datadir}/mc/hints/mc.hint.et
287 %lang(eu) %{_datadir}/mc/hints/mc.hint.eu
288 %lang(fa) %{_datadir}/mc/hints/mc.hint.fa
289 %lang(fr) %{_datadir}/mc/hints/mc.hint.fr
290 #%lang(fr_CA) %{_datadir}/mc/hints/mc.hint.fr_CA
291 %lang(ga) %{_datadir}/mc/hints/mc.hint.ga
292 %lang(gl) %{_datadir}/mc/hints/mc.hint.gl
293 %lang(hu) %{_datadir}/mc/hints/mc.hint.hu
294 %lang(id) %{_datadir}/mc/hints/mc.hint.id
295 %lang(it) %{_datadir}/mc/hints/mc.hint.it
296 %lang(ja) %{_datadir}/mc/hints/mc.hint.ja
297 %lang(ko) %{_datadir}/mc/hints/mc.hint.ko
298 %lang(lt) %{_datadir}/mc/hints/mc.hint.lt
299 %lang(nb) %{_datadir}/mc/hints/mc.hint.nb
300 %lang(nl) %{_datadir}/mc/hints/mc.hint.nl
301 %lang(pl) %{_datadir}/mc/hints/mc.hint.pl
302 %lang(pt) %{_datadir}/mc/hints/mc.hint.pt
303 %lang(pt_BR) %{_datadir}/mc/hints/mc.hint.pt_BR
304 %lang(ro) %{_datadir}/mc/hints/mc.hint.ro
305 %lang(ru) %{_datadir}/mc/hints/mc.hint.ru
306 %lang(sk) %{_datadir}/mc/hints/mc.hint.sk
307 %lang(sr) %{_datadir}/mc/hints/mc.hint.sr
308 %lang(sv) %{_datadir}/mc/hints/mc.hint.sv
309 %lang(tr) %{_datadir}/mc/hints/mc.hint.tr
310 %lang(uk) %{_datadir}/mc/hints/mc.hint.uk
311 %lang(zh_CN) %{_datadir}/mc/hints/mc.hint.zh_CN
312 %lang(zh_TW) %{_datadir}/mc/hints/mc.hint.zh_TW
314 %dir %{_libexecdir}/mc/ext.d
315 %attr(755,root,root) %{_libexecdir}/mc/ext.d/archive.sh
316 %attr(755,root,root) %{_libexecdir}/mc/ext.d/doc.sh
317 %attr(755,root,root) %{_libexecdir}/mc/ext.d/image.sh
318 %attr(755,root,root) %{_libexecdir}/mc/ext.d/misc.sh
319 %attr(755,root,root) %{_libexecdir}/mc/ext.d/package.sh
320 %attr(755,root,root) %{_libexecdir}/mc/ext.d/sound.sh
321 %attr(755,root,root) %{_libexecdir}/mc/ext.d/text.sh
322 %attr(755,root,root) %{_libexecdir}/mc/ext.d/video.sh
323 %attr(755,root,root) %{_libexecdir}/mc/ext.d/web.sh
325 %dir %{_libexecdir}/mc/extfs.d
326 %{_libexecdir}/mc/extfs.d/README*
328 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/a+
329 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/apt+
330 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/deb*
331 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/dpkg+
332 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/mailfs
333 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/patchfs
334 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/rpms+
335 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/ulib
336 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/uzip
338 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/audio
339 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/bpp
340 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/changesetfs
341 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/gitfs+
342 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/hp48+
343 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/iso9660
344 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/lslR
345 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/patchsetfs
346 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/rpm
347 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/s3+
348 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/trpm
349 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/u7z
350 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/uace
351 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/ualz
352 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/uar*
353 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/uc1541
354 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/ucab
355 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/uha
356 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/ulha
357 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/unar
358 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/urar
359 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/uwim
360 %attr(755,root,root) %{_libexecdir}/mc/extfs.d/uzoo
361 %dir %{_libexecdir}/mc/fish
362 %{_libexecdir}/mc/fish/README.fish
363 %attr(755,root,root) %{_libexecdir}/mc/fish/[a-z]*
364 %{_desktopdir}/mc.desktop
365 %{_pixmapsdir}/mc.png
367 %{_mandir}/man1/mc.1*
368 %{_mandir}/man1/mcedit.1*
369 %{_mandir}/man1/mcview.1*
370 %lang(es) %{_mandir}/es/man1/*
371 %lang(hu) %{_mandir}/hu/man1/*
372 %lang(it) %{_mandir}/it/man1/*
373 %lang(pl) %{_mandir}/pl/man1/*
374 %lang(ru) %{_mandir}/ru/man1/*
375 %lang(sr) %{_mandir}/sr/man1/*
377 %dir %{_sysconfdir}/mc
378 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mc/*.*