[OE-core] [PATCH] coreutils: revert upstream commit causing havoc with ls output

Paul Gortmaker paul.gortmaker at windriver.com
Sat May 21 00:02:43 UTC 2016


A recent commit causes ls to have the following behaviour:

   meta-overc:~$ mkdir abc
   meta-overc:~$ cd abc
   meta-overc:~/abc$ touch  aaaa bbbb 'filename with spaces'
   meta-overc:~/abc$ ls
   aaaa  bbbb  'filename with spaces'
   meta-overc:~/abc$

Note the appearance of quotation marks.  This new behaviour was
introduced as "opt-out" and not "opt-in", and further, the opt-out
suggestion causes other breakage.  More details can be found here:

  https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=813164

Several large distros are voting with their feet and actively
reverting the change, as per what can be seen above for Debian.

Here we do the same; I've marked the patch as upstream inappropriate
since it doesn't appear that the coreutils folks are going to change
the default back to the old way based on what we do here.

Signed-off-by: Paul Gortmaker <paul.gortmaker at windriver.com>

diff --git a/meta/recipes-core/coreutils/coreutils-8.25/disable-ls-output-quoting.patch b/meta/recipes-core/coreutils/coreutils-8.25/disable-ls-output-quoting.patch
new file mode 100644
index 000000000000..581c933e0317
--- /dev/null
+++ b/meta/recipes-core/coreutils/coreutils-8.25/disable-ls-output-quoting.patch
@@ -0,0 +1,49 @@
+Subject: revert inconsistent ls quoting
+
+This is a revert of upstream commit 109b9220cead6e979d22d16327c4d9f8350431cc.
+
+Bug-Debian: https://bugs.debian.org/813164
+
+Upstream-Status: Inappropriate
+
+Originally-by: Adam Borowski <kilobyte at angband.pl>
+[PG: patch from https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=813164#78 ]
+Signed-off-by: Paul Gortmaker <paul.gortmaker at windriver.com>
+
+---
+
+--- coreutils-8.25.orig/NEWS
++++ coreutils-8.25/NEWS
+@@ -71,9 +71,6 @@ GNU coreutils NEWS
+   df now prefers sources towards the root of a device when
+   eliding duplicate bind mounted entries.
+ 
+-  ls now quotes file names unambiguously and appropriate for use in a shell,
+-  when outputting to a terminal.
+-
+   join, sort, uniq with --zero-terminated, now treat '\n' as a field delimiter.
+ 
+ ** Improvements
+--- coreutils-8.25.orig/doc/coreutils.texi
++++ coreutils-8.25/doc/coreutils.texi
+@@ -7750,8 +7750,8 @@ this"} in the default C locale.  This lo
+ 
+ You can specify the default value of the @option{--quoting-style} option
+ with the environment variable @env{QUOTING_STYLE}@.  If that environment
+-variable is not set, the default value is @samp{shell-escape} when the
+-output is a terminal, and @samp{literal} otherwise.
++variable is not set, the default value is @samp{literal}, but this
++default may change to @samp{shell} in a future version of this package.
+ 
+ @item --show-control-chars
+ @opindex --show-control-chars
+--- coreutils-8.25.orig/src/ls.c
++++ coreutils-8.25/src/ls.c
+@@ -1581,7 +1581,6 @@ decode_switches (int argc, char **argv)
+       if (isatty (STDOUT_FILENO))
+         {
+           format = many_per_line;
+-          set_quoting_style (NULL, shell_escape_quoting_style);
+           /* See description of qmark_funny_chars, above.  */
+           qmark_funny_chars = true;
+         }
diff --git a/meta/recipes-core/coreutils/coreutils_8.25.bb b/meta/recipes-core/coreutils/coreutils_8.25.bb
index b1aaf539fbe3..103da9f50693 100644
--- a/meta/recipes-core/coreutils/coreutils_8.25.bb
+++ b/meta/recipes-core/coreutils/coreutils_8.25.bb
@@ -19,6 +19,7 @@ SRC_URI = "${GNU_MIRROR}/coreutils/${BP}.tar.xz;name=tarball \
            file://fix-selinux-flask.patch \
            file://0001-Unset-need_charset_alias-when-building-for-musl.patch \
            file://0001-uname-report-processor-and-hardware-correctly.patch \
+           file://disable-ls-output-quoting.patch \
           "
 
 SRC_URI[tarball.md5sum] = "070e43ba7f618d747414ef56ab248a48"
-- 
2.7.4




More information about the Openembedded-core mailing list