diff options
author | Marius Bakke <marius@gnu.org> | 2021-12-16 21:10:34 +0100 |
---|---|---|
committer | Marius Bakke <marius@gnu.org> | 2021-12-16 22:21:13 +0100 |
commit | 1f4319886a9523ee46033f1d28b15f564bab4312 (patch) | |
tree | 6ce8b8849204bef17d8b656892d8bf7066e17ee7 /gnu/packages/python-xyz.scm | |
parent | 12c75628b4322853943ae0d0a833e371c02b97f4 (diff) |
gnu: python-magic: Work around crash on .crx files.
* gnu/packages/patches/python-magic-python-bytecode.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/python-xyz.scm (python-magic)[source](patches): Add it.
[inputs]: Add FILE-NEXT.
[arguments]: While at it, remove input labels.
* gnu/packages/diffoscope.scm (diffoscope)[native-inputs]: Add FILE-NEXT.
Diffstat (limited to 'gnu/packages/python-xyz.scm')
-rw-r--r-- | gnu/packages/python-xyz.scm | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index be40a02e2a..13d883c26d 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -14614,6 +14614,7 @@ syntax highlighting, markdown and more to the terminal.") (method git-fetch) (uri (git-reference (url home-page) (commit version))) (file-name (git-file-name name version)) + (patches (search-patches "python-magic-python-bytecode.patch")) (sha256 (base32 "17jalhjbfd600lzfz296m0nvgp6c7vx1mgz82jbzn8hgdzknf4w0")))) @@ -14628,10 +14629,10 @@ syntax highlighting, markdown and more to the terminal.") ;; python-magic to fail. (add-before 'build 'hard-code-path-to-libmagic (lambda* (#:key inputs #:allow-other-keys) - (let ((file (assoc-ref inputs "file"))) + (let ((magic (search-input-file inputs "/lib/libmagic.so"))) (substitute* "magic/loader.py" (("find_library\\('magic'\\)") - (string-append "'" file "/lib/libmagic.so'")))))) + (string-append "'" magic "'")))))) (replace 'check (lambda* (#:key tests? #:allow-other-keys) ;; The test suite mandates this variable. @@ -14645,7 +14646,9 @@ syntax highlighting, markdown and more to the terminal.") (list which)) (inputs ;; python-magic needs to be able to find libmagic.so. - (list file)) + ;; Use a newer version because 5.39 returns bogus for some archives + ;; (notably Chromium .crx extensions), which breaks e.g. 'diffoscope'. + (list file-next)) (synopsis "File type identification using libmagic") (description "This module uses ctypes to access the libmagic file type |