From 5dbeccf5b4f534dd5519691dfdf58a6921c9f343 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 1 Jan 2017 10:42:46 +0100 Subject: [PATCH] gnu: diffoscope: Embed tool references. Fixes . * gnu/packages/package-management.scm (diffoscope)[inputs]: Add colordiff and vim. [arguments]: Add "embed-tool-references" build phase to embed references to "colordiff", "xxd", and "readelf". --- gnu/packages/package-management.scm | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 1b9191cbcb..23f34cd306 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès -;;; Copyright © 2015 Ricardo Wurmus +;;; Copyright © 2015, 2017 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -45,12 +45,14 @@ (define-module (gnu packages package-management) #:use-module (gnu packages web) #:use-module (gnu packages man) #:use-module (gnu packages bdw-gc) + #:use-module (gnu packages patchutils) #:use-module (gnu packages python) #:use-module (gnu packages popt) #:use-module (gnu packages gnuzilla) #:use-module (gnu packages cpio) #:use-module (gnu packages tls) #:use-module (gnu packages ssh) + #:use-module (gnu packages vim) #:use-module (srfi srfi-1) #:use-module (srfi srfi-26) #:use-module (ice-9 popen) @@ -494,12 +496,29 @@ (define-public diffoscope (add-after 'unpack 'dependency-on-python-magic (lambda _ (substitute* "setup.py" - (("'python-magic',") ""))))))) + (("'python-magic',") "")))) + (add-after 'unpack 'embed-tool-references + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "diffoscope/difference.py" + (("@tool_required\\('colordiff'\\)") "") + (("\\[\"colordiff\"") + (string-append "[\"" (which "colordiff") "\""))) + (substitute* "diffoscope/comparators/utils.py" + (("@tool_required\\('xxd'\\)") "") + (("\\['xxd',") + (string-append "['" (which "xxd") "',"))) + (substitute* "diffoscope/comparators/elf.py" + (("@tool_required\\('readelf'\\)") "") + (("\\['readelf',") + (string-append "['" (which "readelf") "',"))) + #t))))) (inputs `(("rpm" ,rpm) ;for rpm-python ("python-file" ,python-file) ("python-debian" ,python-debian) ("python-libarchive-c" ,python-libarchive-c) ("python-tlsh" ,python-tlsh) + ("colordiff" ,colordiff) + ("xxd" ,vim) ;; Below are modules used for tests. ("python-pytest" ,python-pytest)