diff options
Diffstat (limited to 'gnu/packages/patches')
7 files changed, 209 insertions, 51 deletions
diff --git a/gnu/packages/patches/gash-utils-ls-test.patch b/gnu/packages/patches/gash-utils-ls-test.patch deleted file mode 100644 index e1dfb9c23b..0000000000 --- a/gnu/packages/patches/gash-utils-ls-test.patch +++ /dev/null @@ -1,25 +0,0 @@ -'ls.scm' monkey-patches (ice-9 getopt-long) to allow it to recognize '-1' -as a valid option. Unfortunately, monkey patching no longer works with -Guile 3.0 due to inlining, so change the test to make do without '-1'. - -diff --git a/tests/core-utils.org b/tests/core-utils.org -index d35ede8..22718e3 100644 ---- a/tests/core-utils.org -+++ b/tests/core-utils.org -@@ -93,14 +93,11 @@ - * ls - :script: - #+begin_src sh -- ls -1 tests/data/star -+ ls tests/data/star - #+end_src - :stdout: - #+begin_example -- 0 -- 1 -- 2 -- 3 -+ 0 1 2 3 - #+end_example - - * test-file diff --git a/gnu/packages/patches/gettext-libunicode-update.patch b/gnu/packages/patches/gettext-libunicode-update.patch new file mode 100644 index 0000000000..2a67f4803a --- /dev/null +++ b/gnu/packages/patches/gettext-libunicode-update.patch @@ -0,0 +1,99 @@ +https://git.savannah.gnu.org/gitweb/?p=gettext.git;a=commit;h=56dc658db752c2894861ee574866d507f12a17f8 +Due to the encoding it needs to be retrieved from a git clone. + +commit 56dc658db752c2894861ee574866d507f12a17f8 +Author: Bruno Haible <[email protected]> +Date: Sun Jan 2 15:43:41 2022 +0100 + + Update after gnulib changed. + + * gettext-tools/tests/msgcat-17: Update test for changed libunistring line + breaking behaviour. + * gettext-tools/tests/msgfilter-sr-latin-1: Likewise. + * gettext-tools/tests/msgmerge-11: Likewise. + * gettext-tools/tests/xgettext-python-1: Likewise. + +diff --git a/gettext-tools/tests/msgcat-17 b/gettext-tools/tests/msgcat-17 +index 8fecc4039..c4aa220b9 100755 +--- a/gettext-tools/tests/msgcat-17 ++++ b/gettext-tools/tests/msgcat-17 +@@ -39,9 +39,9 @@ msgstr "" + #, c-format + msgid "write error of a big result on a too small disk% s% s" + msgstr "" +-"Fehler beim Schreiben eines großen Ergebnisses auf eine zu kleine Platte% s" +-"% smit der jederzeitigen Möglichkeit eines Fehlers in jedem Moment und an " +-"jeder Stelle" ++"Fehler beim Schreiben eines großen Ergebnisses auf eine zu kleine " ++"Platte% s% smit der jederzeitigen Möglichkeit eines Fehlers in jedem Moment " ++"und an jeder Stelle" + EOF + + : ${DIFF=diff} +diff --git a/gettext-tools/tests/msgfilter-sr-latin-1 b/gettext-tools/tests/msgfilter-sr-latin-1 +index c1cc97875..29e68c04f 100755 +--- a/gettext-tools/tests/msgfilter-sr-latin-1 ++++ b/gettext-tools/tests/msgfilter-sr-latin-1 +@@ -20,8 +20,8 @@ msgstr "" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=CP1251\n" + "Content-Transfer-Encoding: 8bit\n" +-"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : (n%10>=2 && n" +-"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" ++"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : (n%10>=2 && " ++"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + + #: ../gettext-tools/lib/closeout.c:64 + msgid "write error" +@@ -332,8 +332,8 @@ msgstr "" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" +-"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : (n%10>=2 && n" +-"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" ++"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : (n%10>=2 && " ++"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + + #: ../gettext-tools/lib/closeout.c:64 + msgid "write error" +diff --git a/gettext-tools/tests/msgmerge-11 b/gettext-tools/tests/msgmerge-11 +index ed49db95a..888855940 100755 +--- a/gettext-tools/tests/msgmerge-11 ++++ b/gettext-tools/tests/msgmerge-11 +@@ -19,8 +19,8 @@ msgstr "" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=ISO-8859-1\n" + "Content-Transfer-Encoding: 8bit\n" +-"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n" +-"%100==4 ? 2 : 3);\n" ++"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || " ++"n%100==4 ? 2 : 3);\n" + + #:foobar.c:29 + #, c-format +@@ -72,8 +72,8 @@ msgstr "" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=ISO-8859-1\n" + "Content-Transfer-Encoding: 8bit\n" +-"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n" +-"%100==4 ? 2 : 3);\n" ++"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || " ++"n%100==4 ? 2 : 3);\n" + + #: foobar.c:32 + #, fuzzy, c-format +diff --git a/gettext-tools/tests/xgettext-python-1 b/gettext-tools/tests/xgettext-python-1 +index 4901c71e3..9695abda4 100755 +--- a/gettext-tools/tests/xgettext-python-1 ++++ b/gettext-tools/tests/xgettext-python-1 +@@ -61,8 +61,8 @@ msgstr "" + #. interpret_ansic = false, interpret_unicode = false + msgid "" + "abc\\\n" +-"\\\\def\\'ghi\\\"jkl\\a\\b\\f\\n\\r\\t\\v x\\040x\\x7ey" +-"\\u0142\\U00010123\\N{LATIN SMALL LETTER Z}" ++"\\\\def\\'ghi\\\"jkl\\a\\b\\f\\n\\r\\t\\v " ++"x\\040x\\x7ey\\u0142\\U00010123\\N{LATIN SMALL LETTER Z}" + msgstr "" + + #. interpret_ansic = true, interpret_unicode = true diff --git a/gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch b/gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch index 956fa617c3..c23b054a39 100644 --- a/gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch +++ b/gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch @@ -1,11 +1,20 @@ -# Names of libraries included in typelib files are opened by dlopen. Here we -# add the full path. -# -# This patch was provided by Luca Bruno <[email protected]> for -# 'gobject-introspection' 1.40.0 in Nix. -# -# It has since been updated to work with newer versions of -# gobject-introspection. +Names of libraries included in typelib files are opened by dlopen. +Here we add the full path. + +This patch was provided by Luca Bruno <[email protected]>, +for 'gobject-introspection' 1.40.0 in Nix. + +It has since been updated to work with newer versions of +gobject-introspection. +--- + giscanner/scannermain.py | 37 ++++++++++++++++++++++++++++++++++++ + giscanner/shlibs.py | 30 ++++++++++++++++++++--------- + giscanner/utils.py | 15 +++++---------- + tests/scanner/test_shlibs.py | 3 ++- + 4 files changed, 65 insertions(+), 20 deletions(-) + +diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py +index 957ba0b7..78f9b11b 100644 --- a/giscanner/scannermain.py +++ b/giscanner/scannermain.py @@ -95,6 +95,39 @@ def get_windows_option_group(parser): @@ -48,7 +57,7 @@ def _get_option_parser(): parser = optparse.OptionParser('%prog [options] sources', version='%prog ' + giscanner.__version__) -@@ -205,6 +238,10 @@ match the namespace prefix.""") +@@ -214,6 +247,10 @@ match the namespace prefix.""") parser.add_option("", "--filelist", action="store", dest="filelist", default=[], help="file containing headers and sources to be scanned") @@ -59,6 +68,8 @@ group = get_preprocessor_option_group(parser) parser.add_option_group(group) +diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py +index 9f8ab5df..8aa37c99 100644 --- a/giscanner/shlibs.py +++ b/giscanner/shlibs.py @@ -57,6 +57,14 @@ def _ldd_library_pattern(library_name): @@ -76,7 +87,7 @@ # This is a what we do for non-la files. We assume that we are on an # ELF-like system where ldd exists and the soname extracted with ldd is # a filename that can be opened with dlopen(). -@@ -106,7 +112,8 @@ def _resolve_non_libtool(options, binary, libraries): +@@ -108,7 +116,8 @@ def _resolve_non_libtool(options, binary, libraries): output = output.decode("utf-8", "replace") shlibs = resolve_from_ldd_output(libraries, output) @@ -86,7 +97,7 @@ def sanitize_shlib_path(lib): -@@ -115,19 +122,18 @@ def sanitize_shlib_path(lib): +@@ -117,19 +126,18 @@ def sanitize_shlib_path(lib): # In case we get relative paths on macOS (like @rpath) then we fall # back to the basename as well: # https://gitlab.gnome.org/GNOME/gobject-introspection/issues/222 @@ -111,7 +122,7 @@ if len(patterns) == 0: return [] -@@ -139,8 +145,12 @@ def resolve_from_ldd_output(libraries, output): +@@ -141,8 +149,12 @@ def resolve_from_ldd_output(libraries, output): if line.endswith(':'): continue for word in line.split(): @@ -126,10 +137,11 @@ if m: del patterns[library] shlibs.append(m.group()) - +diff --git a/giscanner/utils.py b/giscanner/utils.py +index 45807f17..8a319cd1 100644 --- a/giscanner/utils.py +++ b/giscanner/utils.py -@@ -111,17 +111,11 @@ def extract_libtool_shlib(la_file): +@@ -113,16 +113,11 @@ def extract_libtool_shlib(la_file): if dlname is None: return None @@ -141,8 +153,7 @@ - if libdir is None: - return dlbasename - return libdir + '/' + dlbasename -- # From the comments in extract_libtool(), older libtools had -- # a path rather than the raw dlname +- # Older libtools had a path rather than the raw dlname - return os.path.basename(dlname) + dlbasename = os.path.basename(dlname) + libdir = _extract_libdir_field(la_file) @@ -151,10 +162,12 @@ + return libdir + '/' + dlbasename - def extract_libtool(la_file): + # Returns arguments for invoking libtool, if applicable, otherwise None +diff --git a/tests/scanner/test_shlibs.py b/tests/scanner/test_shlibs.py +index a8337c60..7f123103 100644 --- a/tests/scanner/test_shlibs.py +++ b/tests/scanner/test_shlibs.py -@@ -40,6 +64,7 @@ class TestLddParser(unittest.TestCase): +@@ -40,7 +40,8 @@ class TestLddParser(unittest.TestCase): self.assertEqual( sanitize_shlib_path('/foo/bar'), @@ -163,4 +176,7 @@ + '/foo/bar') def test_unresolved_library(self): -output = '' + output = '' +-- +2.33.0 + diff --git a/gnu/packages/patches/gobject-introspection-cc.patch b/gnu/packages/patches/gobject-introspection-cc.patch index 6a86b56b44..748a1a0a89 100644 --- a/gnu/packages/patches/gobject-introspection-cc.patch +++ b/gnu/packages/patches/gobject-introspection-cc.patch @@ -1,14 +1,22 @@ Use gcc as the default C compiler if CC is not set. -diff -ru gobject-introspection-1.58.1.orig/giscanner/__init__.py gobject-introspection-1.58.1/giscanner/__init__.py ---- gobject-introspection-1.58.1.orig/giscanner/__init__.py 1970-01-01 01:00:00.000000000 +0100 -+++ gobject-introspection-1.58.1/giscanner/__init__.py 2018-12-03 13:33:28.788971299 +0100 -@@ -22,6 +22,8 @@ +--- + giscanner/__init__.py | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/giscanner/__init__.py b/giscanner/__init__.py +index 7c2f365a..607fe341 100644 +--- a/giscanner/__init__.py ++++ b/giscanner/__init__.py +@@ -21,6 +21,8 @@ import os builddir = os.environ.get('UNINSTALLED_INTROSPECTION_BUILDDIR') if builddir is not None: - __path__.append(os.path.join(builddir, 'giscanner')) + __path__.append(os.path.join(builddir, 'giscanner')) # type: ignore # mypy issue #1422 +if not 'CC' in os.environ: + os.environ['CC'] = 'gcc' try: from ._version import __version__ except ImportError: +-- +2.33.0 + diff --git a/gnu/packages/patches/libtool-skip-tests2.patch b/gnu/packages/patches/libtool-skip-tests2.patch index 3f86191b4f..91beaa903e 100644 --- a/gnu/packages/patches/libtool-skip-tests2.patch +++ b/gnu/packages/patches/libtool-skip-tests2.patch @@ -16,7 +16,7 @@ Skip the nopic test on ARM, MIPS and RISC-V systems. @@ -8741,7 +8741,7 @@ { set +x - $as_echo "$at_srcdir/demo.at:535: case \$host in + $as_echo "$at_srcdir/demo.at:513: case \$host in -hppa*|x86_64*|s390*) +hppa*|x86_64*|s390*|arm*|mips*|riscv*) # These hosts cannot use non-PIC shared libs @@ -24,7 +24,7 @@ Skip the nopic test on ARM, MIPS and RISC-V systems. *-solaris*|*-sunos*) @@ -8766,7 +8766,7 @@ " - at_fn_check_prepare_notrace 'a `...` command substitution' "demo.at:535" + at_fn_check_prepare_notrace 'a `...` command substitution' "demo.at:513" ( $at_check_trace; case $host in -hppa*|x86_64*|s390*) +hppa*|x86_64*|s390*|arm*|mips*|riscv*) diff --git a/gnu/packages/patches/linux-pam-unix_chkpwd.patch b/gnu/packages/patches/linux-pam-unix_chkpwd.patch new file mode 100644 index 0000000000..0e865ff18c --- /dev/null +++ b/gnu/packages/patches/linux-pam-unix_chkpwd.patch @@ -0,0 +1,9 @@ +unix_chkpwd is designed to have a suid bit, but it's not possible to set it +for files in the store. This patch tells unix_pam.so to look for +unix_chkpwd in setuid program directory on Guix System. + +--- a/modules/pam_unix/Makefile.in ++++ b/modules/pam_unix/Makefile.in +@@ -651,1 +651,1 @@ +- -DCHKPWD_HELPER=\"$(sbindir)/unix_chkpwd\" \ ++ -DCHKPWD_HELPER=\"/run/setuid-programs/unix_chkpwd\" \ diff --git a/gnu/packages/patches/python2-pyopenssl-openssl-compat.patch b/gnu/packages/patches/python2-pyopenssl-openssl-compat.patch new file mode 100644 index 0000000000..a185f4172d --- /dev/null +++ b/gnu/packages/patches/python2-pyopenssl-openssl-compat.patch @@ -0,0 +1,51 @@ +Adjust for OpenSSL 1.1.1: + + https://github.com/pyca/pyopenssl/issues/1043 + +Taken from upstream: + + https://github.com/pyca/pyopenssl/commit/cc5c00ae5fd3c19d07fff79b5c4a08f5e58697ad + +diff --git a/src/OpenSSL/SSL.py b/src/OpenSSL/SSL.py +index 59f21cec..fcdee047 100644 +--- a/src/OpenSSL/SSL.py ++++ b/src/OpenSSL/SSL.py +@@ -1421,6 +1421,12 @@ def set_alpn_protos(self, protos): + This list should be a Python list of bytestrings representing the + protocols to offer, e.g. ``[b'http/1.1', b'spdy/2']``. + """ ++ # Different versions of OpenSSL are inconsistent about how they handle empty ++ # proto lists (see #1043), so we avoid the problem entirely by rejecting them ++ # ourselves. ++ if not protos: ++ raise ValueError("at least one protocol must be specified") ++ + # Take the list of protocols and join them together, prefixing them + # with their lengths. + protostr = b"".join( +@@ -2449,6 +2455,12 @@ def set_alpn_protos(self, protos): + This list should be a Python list of bytestrings representing the + protocols to offer, e.g. ``[b'http/1.1', b'spdy/2']``. + """ ++ # Different versions of OpenSSL are inconsistent about how they handle empty ++ # proto lists (see #1043), so we avoid the problem entirely by rejecting them ++ # ourselves. ++ if not protos: ++ raise ValueError("at least one protocol must be specified") ++ + # Take the list of protocols and join them together, prefixing them + # with their lengths. + protostr = b"".join( +diff --git a/tests/test_ssl.py b/tests/test_ssl.py +index ffc505d8..ca363b45 100644 +--- a/tests/test_ssl.py ++++ b/tests/test_ssl.py +@@ -1928,7 +1928,7 @@ def test_alpn_call_failure(self): + protocols list. Ensure that we produce a user-visible error. + """ + context = Context(SSLv23_METHOD) +- with pytest.raises(Error): ++ with pytest.raises(ValueError): + context.set_alpn_protos([]) + + def test_alpn_set_on_connection(self): |