Accepting request 208377 from Base:System

- What a ghastly %description ... Where'd that come from? ;) Fixed
  with text from the README and a little added mention of Norton Cmdr

- What's with those "trailing spaces" for filenames with length <13?

- fix the urar patch (add trailing whitespace) (thanks to D. Werner again) (forwarded request 208356 from dnh)

OBS-URL: https://build.opensuse.org/request/show/208377
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mc?expand=0&rev=55
This commit is contained in:
Stephan Kulow 2013-11-29 11:03:56 +00:00 committed by Git OBS Bridge
commit 458ccde130
3 changed files with 72 additions and 38 deletions

View File

@ -1,6 +1,7 @@
--- src/vfs/extfs/helpers/urar.in.orig 2013-11-12 18:27:16.000000000 +0100
+++ src/vfs/extfs/helpers/urar.in 2013-11-12 19:05:31.000000000 +0100
@@ -42,14 +42,36 @@
diff -urN -x '*~' mc-4.8.10.orig/src/vfs/extfs/helpers/urar.in mc-4.8.10/src/vfs/extfs/helpers/urar.in
--- mc-4.8.10.orig/src/vfs/extfs/helpers/urar.in 2013-08-02 17:02:39.000000000 +0200
+++ mc-4.8.10/src/vfs/extfs/helpers/urar.in 2013-11-25 23:10:36.000000000 +0100
@@ -42,14 +42,43 @@
$UNRAR v -c- -cfg- "$1" | @AWK@ -v uid=`id -u` -v gid=`id -g` '
BEGIN { flag=0 }
/^-----------/ { flag++; if (flag > 1) exit 0; next }
@ -13,10 +14,13 @@
- $1="-rw-r--r--"
- printf "%s 1 %s %s %d %02d/%02d/%02d %s ./%s\n", $1, uid, gid, $2, a[2], a[1], a[3], $6, $8
+flag == 1 {
+ name="";
+ name=""; delete fields; delete seps;
+
+ ### split line, save n-fields and save seperators in 'seps'
+ nf = split($0, fields, " ", seps);
+ ### split line, save n-fields and save seperators in "seps"
+ ### tested with busybox awk
+ nameparts = split($0, fields, " ");
+ split($0, seps, "[^ \t]+");
+ sub("^ ", "", seps[8]);
+
+ ### split date for reformatting
+ split(fields[5], date, "-");
@ -30,14 +34,18 @@
+ }
+ }
+
+ ### join filename from fields 8 .. nf (saved above)
+ for(i = 8; i <= nf; i++) {
+ name=name fields[i] seps[i];
+ }
+ ### remove padding blanks from short names
+ if (length(name)<13) {
+ sub(" *$", "", name);
+ ### join filename from fields 8 .. nameparts (saved above)
+ for(i = 8; i <= nameparts; i++) {
+ name=name seps[i] fields[i];
+ }
+ name=name seps[i];
+
+# ### where did this come from? I say: if in doubt: pass on the
+# ### unrar bug to our users ... I leave this in for reference.
+# ### remove padding blanks from short names
+# if (length(name)<13) {
+# sub(" *$", "", name);
+# }
+
+ printf("%s 1 %s %s %d %02d/%02d/%02d %s ./%s\n",
+ fields[1], uid, gid, fields[2], date[2],

View File

@ -1,3 +1,34 @@
-------------------------------------------------------------------
Mon Nov 25 22:45:29 UTC 2013 - dnh@opensuse.org
- What a ghastly %description ... Where'd that come from? ;) Fixed
with text from the README and a little added mention of Norton Cmdr
-------------------------------------------------------------------
Mon Nov 25 22:12:19 UTC 2013 - dnh@opensuse.org
- What's with those "trailing spaces" for filenames with length <13?
-------------------------------------------------------------------
Mon Nov 25 03:47:18 UTC 2013 - dnh@opensuse.org
- fix the urar patch (add trailing whitespace) (thanks to D. Werner again)
-------------------------------------------------------------------
Sat Nov 23 18:11:35 UTC 2013 - dnh@opensuse.org
- fix the urar patch (thanks to D. Werner again)
-------------------------------------------------------------------
Sat Nov 23 05:42:12 UTC 2013 - dnh@opensuse.org
- fix SLE* %post scriptlet error (%set_permissions not available)
-------------------------------------------------------------------
Fri Nov 22 18:34:57 UTC 2013 - dnh@opensuse.org
- make urar-helper patch portable (tested with busybox awk)
-------------------------------------------------------------------
Fri Nov 15 07:31:20 UTC 2013 - dnh@opensuse.org

45
mc.spec
View File

@ -44,12 +44,7 @@ Patch20: mc-f-keys.patch
Patch21: mc-extfs-helpers-deb.patch
# add mc-extfs-helpers-urar.patch (by dnh@opensuse.org) - Fix urar
# extfs failing on files with spaces (bnc#849082), needs gawk >= 4.0.0
# and is not portable to other awks, so expect upstream changes. As of
# now (Fri Nov 15 09:43:39 2013), upstream uses a "index by the CRC
# field" approach as mentioned in bnc#849082. I prefer the gawk >=
# 4.0.0 version with the "seps" fourth argument to the "split"
# function. YOpinionMV ;)
# extfs failing on files with spaces (bnc#849082). Forwarded to upstream.
Patch22: mc-extfs-helpers-urar.patch
#debian fixes for vfs
@ -89,28 +84,17 @@ BuildRequires: xdg-utils
BuildRequires: xorg-x11-devel
BuildRequires: xz
Requires(pre): permissions
Requires: gawk >= 4.0.0
Recommends: %{name}-lang = %{version}
%description
Midnight Commander is a Norton Commander clone, a program that
manipulates and manages files and directories. It is useful, fast, and
has color display on the Linux console. It also has mouse support if
you run the gpm mouse server. This program requires the terminal
description files in /usr/lib/terminfo, which are found in ncurses.rpm
(the essential ones) or terminfo.rpm (the rest).
GNU Midnight Commander (also referred to as MC) is a user shell much
like the (in)famous Norton Commander with text-mode full-screen
interface. It can be run on the OS console, in xterm and other
terminal emulators.
You can also use Midnight Commander under the X Window System with your
mouse. If you enter 'mc -c', colors are used.
In Midnight Commander, the screen is divided into four sections: The
majority of the screen is covered by two directory panels. The second
to last line on the screen is the shell command line. The last line
displays the function key assignments. At the very top, the menu list
is shown. One of the directories displayed is the current working
directory. This is where most of the commands are found. For certain
commands, like copy and move, the second directory is used as the
target directory.
GNU Midnight Commander allows you to manage files while making most of
your screen and giving you a clear representation of the filesystem, yet
it's simple enough to be run over a telnet or ssh session.
%lang_package
@ -129,7 +113,7 @@ target directory.
%patch18
%patch20
%patch21
%patch22
%patch22 -p1
%patch24
%patch31
%patch32
@ -177,7 +161,11 @@ rm -rf %{buildroot}%{_datadir}/locale/be@tarask
rm -rf %{buildroot}
%post
%if 0%{?suse_version} >= 1140
%set_permissions %{_libexecdir}/mc/cons.saver
%else
%run_permissions
%endif
%verifyscript
%verify_permissions -e %{_libexecdir}/mc/cons.saver
@ -220,6 +208,13 @@ rm -rf %{buildroot}
%files lang -f %name.lang
%defattr(-, root, root)
%if 0%{?suse_version} < 1140 || 0%{?sles_version} && 0%{?sles_version} <= 11
%lang(sv) %dir %{_datadir}/locale/sv_SE
%lang(sv) %dir %{_datadir}/locale/sv_SE/LC_MESSAGES
%lang(szl) %dir %{_datadir}/locale/szl
%lang(szl) %dir %{_datadir}/locale/szl/LC_MESSAGES
%endif
%lang(hu) %dir %{_mandir}/hu/
%lang(hu) %dir %{_mandir}/hu/man1/
%lang(hu) %{_mandir}/hu/man1/mc.1.gz