Commit 7f3416ff authored by Vagrant Cascadian's avatar Vagrant Cascadian Committed by Vagrant Cascadian

Add support for known external tools on GNU Guix.

parent d2d3deca
Pipeline #47753 passed with stage
in 16 minutes and 30 seconds
...@@ -18,43 +18,68 @@ ...@@ -18,43 +18,68 @@
# along with diffoscope. If not, see <https://www.gnu.org/licenses/>. # along with diffoscope. If not, see <https://www.gnu.org/licenses/>.
EXTERNAL_TOOLS = { EXTERNAL_TOOLS = {
'abootimg': {'debian': 'abootimg'}, 'abootimg': {'debian': 'abootimg', 'guix': 'abootimg'},
'apktool': {'debian': 'apktool'}, 'apktool': {'debian': 'apktool'},
'db_dump': {'debian': 'db-util'}, 'db_dump': {'debian': 'db-util', 'guix': 'bdb'},
'bsdtar': { 'bsdtar': {
'debian': 'libarchive-tools', 'debian': 'libarchive-tools',
'arch': 'libarchive', 'arch': 'libarchive',
'fedora': 'bsdtar', 'fedora': 'bsdtar',
'FreeBSD': 'libarchive', 'FreeBSD': 'libarchive',
'guix': 'libarchive',
}, },
'bzip2': {'debian': 'bzip2', 'arch': 'bzip2'}, 'bzip2': {'debian': 'bzip2', 'arch': 'bzip2', 'guix': 'bzip2'},
'cbfstool': {}, 'cbfstool': {},
'cd-iccdump': {'debian': 'colord', 'arch': 'colord', 'FreeBSD': 'colord'}, 'cd-iccdump': {
'cmp': {'debian': 'diffutils', 'arch': 'diffutils'}, 'debian': 'colord',
'compare': {'debian': 'imagemagick', 'arch': 'imagemagick'}, 'arch': 'colord',
'cpio': {'debian': 'cpio', 'arch': 'cpio'}, 'FreeBSD': 'colord',
'diff': {'debian': 'diffutils', 'arch': 'diffutils'}, 'guix': 'colord',
'docx2txt': {'debian': 'docx2txt', 'arch': 'docx2txt'}, },
'cmp': {'debian': 'diffutils', 'arch': 'diffutils', 'guix': 'diffutils'},
'compare': {
'debian': 'imagemagick',
'arch': 'imagemagick',
'guix': 'imagemagick',
},
'cpio': {'debian': 'cpio', 'arch': 'cpio', 'guix': 'cpio'},
'diff': {'debian': 'diffutils', 'arch': 'diffutils', 'guix': 'diffutils'},
'docx2txt': {'debian': 'docx2txt', 'arch': 'docx2txt', 'guix': 'docx2txt'},
'enjarify': {'debian': 'enjarify', 'arch': 'enjarify'}, 'enjarify': {'debian': 'enjarify', 'arch': 'enjarify'},
'fdtdump': {'debian': 'device-tree-compiler', 'arch': 'dtc'}, 'fdtdump': {
'ffprobe': {'debian': 'ffmpeg'}, 'debian': 'device-tree-compiler',
'file': {'debian': 'file', 'arch': 'file'}, 'arch': 'dtc',
'find': {'debian': 'findutils', 'arch': 'findutils'}, 'guix': 'dtc',
'getfacl': {'debian': 'acl', 'arch': 'acl'}, },
'ffprobe': {'debian': 'ffmpeg', 'guix': 'ffmpeg'},
'file': {'debian': 'file', 'arch': 'file', 'guix': 'file'},
'find': {'debian': 'findutils', 'arch': 'findutils', 'guix': 'findutils'},
'getfacl': {'debian': 'acl', 'arch': 'acl', 'guix': 'acl'},
'gifbuild': {'debian': 'giflib-tools', 'arch': 'giflib'}, 'gifbuild': {'debian': 'giflib-tools', 'arch': 'giflib'},
'ghc': {'debian': 'ghc', 'arch': 'ghc', 'FreeBSD': 'ghc'}, 'ghc': {'debian': 'ghc', 'arch': 'ghc', 'FreeBSD': 'ghc', 'guix': 'ghc'},
'gpg': {'debian': 'gnupg', 'arch': 'gnupg', 'FreeBSD': 'gnupg'}, 'gpg': {
'gzip': {'debian': 'gzip', 'arch': 'gzip'}, 'debian': 'gnupg',
'identify': {'debian': 'imagemagick', 'arch': 'imagemagick'}, 'arch': 'gnupg',
'FreeBSD': 'gnupg',
'guix': 'gnupg',
},
'gzip': {'debian': 'gzip', 'arch': 'gzip', 'guix': 'gzip'},
'identify': {
'debian': 'imagemagick',
'arch': 'imagemagick',
'guix': 'imagemagick',
},
'img2txt': { 'img2txt': {
'debian': 'caca-utils', 'debian': 'caca-utils',
'arch': 'libcaca', 'arch': 'libcaca',
'FreeBSD': 'libcaca', 'FreeBSD': 'libcaca',
'guix': 'libcaca',
}, },
'isoinfo': { 'isoinfo': {
'debian': 'genisoimage', 'debian': 'genisoimage',
'arch': 'cdrtools', 'arch': 'cdrtools',
'FreeBSD': 'cdrtools', 'FreeBSD': 'cdrtools',
'guix': 'cdrtools',
}, },
'javap': { 'javap': {
'debian': 'default-jdk-headless | default-jdk | java-sdk', 'debian': 'default-jdk-headless | default-jdk | java-sdk',
...@@ -62,26 +87,44 @@ EXTERNAL_TOOLS = { ...@@ -62,26 +87,44 @@ EXTERNAL_TOOLS = {
}, },
'js-beautify': {'debian': 'jsbeautifier', 'arch': 'python-jsbeautifier'}, 'js-beautify': {'debian': 'jsbeautifier', 'arch': 'python-jsbeautifier'},
'kbxutil': {'debian': 'gnupg-utils'}, 'kbxutil': {'debian': 'gnupg-utils'},
'llvm-bcanalyzer': {'debian': 'llvm', 'arch': 'llvm'}, 'llvm-bcanalyzer': {'debian': 'llvm', 'arch': 'llvm', 'guix': 'llvm'},
'llvm-config': {'debian': 'llvm', 'arch': 'llvm'}, 'llvm-config': {'debian': 'llvm', 'arch': 'llvm'},
'llvm-dis': {'debian': 'llvm', 'arch': 'llvm'}, 'llvm-dis': {'debian': 'llvm', 'arch': 'llvm', 'guix': 'llvm'},
'ls': {'debian': 'coreutils', 'arch': 'coreutils'}, 'ls': {'debian': 'coreutils', 'arch': 'coreutils', 'guix': 'coreutils'},
'lsattr': { 'lsattr': {
'debian': 'e2fsprogs', 'debian': 'e2fsprogs',
'arch': 'e2fsprogs', 'arch': 'e2fsprogs',
'FreeBSD': 'e2fsprogs', 'FreeBSD': 'e2fsprogs',
'guix': 'e2fsprogs',
}, },
'lz4': {'debian': 'lz4 | liblz4-tool', 'FreeBSD': 'lz4'}, 'lz4': {'debian': 'lz4 | liblz4-tool', 'FreeBSD': 'lz4', 'guix': 'lz4'},
'msgunfmt': { 'msgunfmt': {
'debian': 'gettext', 'debian': 'gettext',
'arch': 'gettext', 'arch': 'gettext',
'FreeBSD': 'gettext-tools', 'FreeBSD': 'gettext-tools',
'guix': 'gettext',
},
'convert': {
'debian': 'imagemagick',
'arch': 'imagemagick',
'guix': 'imagemagick',
},
'nm': {
'debian': 'binutils-multiarch',
'arch': 'binutils',
'guix': 'binutils',
},
'objcopy': {
'debian': 'binutils-multiarch',
'arch': 'binutils',
'guix': 'binutils',
}, },
'convert': {'debian': 'imagemagick', 'arch': 'imagemagick'}, 'objdump': {
'nm': {'debian': 'binutils-multiarch', 'arch': 'binutils'}, 'debian': 'binutils-multiarch',
'objcopy': {'debian': 'binutils-multiarch', 'arch': 'binutils'}, 'arch': 'binutils',
'objdump': {'debian': 'binutils-multiarch', 'arch': 'binutils'}, 'guix': 'binutils',
'ocamlobjinfo': {'debian': 'ocaml-nox'}, },
'ocamlobjinfo': {'debian': 'ocaml-nox', 'guix': 'ocaml'},
'odt2txt': {'debian': 'odt2txt', 'arch': 'odt2txt'}, 'odt2txt': {'debian': 'odt2txt', 'arch': 'odt2txt'},
'oggDump': {'debian': 'oggvideotools'}, 'oggDump': {'debian': 'oggvideotools'},
'pgpdump': {'debian': 'pgpdump', 'arch': 'pgpdump'}, 'pgpdump': {'debian': 'pgpdump', 'arch': 'pgpdump'},
...@@ -89,43 +132,75 @@ EXTERNAL_TOOLS = { ...@@ -89,43 +132,75 @@ EXTERNAL_TOOLS = {
'debian': 'poppler-utils', 'debian': 'poppler-utils',
'arch': 'poppler', 'arch': 'poppler',
'FreeBSD': 'poppler-utils', 'FreeBSD': 'poppler-utils',
'guix': 'poppler',
},
'pedump': {
'debian': 'mono-utils',
'arch': 'mono',
'FreeBSD': 'mono',
'guix': 'mono',
}, },
'pedump': {'debian': 'mono-utils', 'arch': 'mono', 'FreeBSD': 'mono'},
'ppudump': {'debian': 'fp-utils', 'arch': 'fpc', 'FreeBSD': 'fpc'}, 'ppudump': {'debian': 'fp-utils', 'arch': 'fpc', 'FreeBSD': 'fpc'},
'ps2ascii': { 'ps2ascii': {
'debian': 'ghostscript', 'debian': 'ghostscript',
'arch': 'ghostscript', 'arch': 'ghostscript',
'FreeBSD': 'ghostscript9-base', 'FreeBSD': 'ghostscript9-base',
'guix': 'ghostscript',
},
'readelf': {
'debian': 'binutils-multiarch',
'arch': 'binutils',
'guix': 'binutils',
}, },
'readelf': {'debian': 'binutils-multiarch', 'arch': 'binutils'},
'rpm2cpio': { 'rpm2cpio': {
'debian': 'rpm2cpio', 'debian': 'rpm2cpio',
'arch': 'rpmextract', 'arch': 'rpmextract',
'FreeBSD': 'rpm2cpio', 'FreeBSD': 'rpm2cpio',
'guix': 'rpm',
}, },
'Rscript': {'debian': 'r-base-core', 'arch': 'r'}, 'Rscript': {'debian': 'r-base-core', 'arch': 'r', 'guix': 'r-minimal'},
'showttf': {'debian': 'fontforge-extras'}, 'showttf': {'debian': 'fontforge-extras'},
'sng': {'debian': 'sng'}, 'sng': {'debian': 'sng'},
'ssconvert': {'debian': 'gnumeric', 'arch': 'gnumeric'}, 'ssconvert': {
'ssh-keygen': {'debian': 'openssh-client', 'arch': 'openssh'}, 'debian': 'gnumeric',
'stat': {'debian': 'coreutils', 'arch': 'coreutils'}, 'arch': 'gnumeric',
'sqlite3': {'debian': 'sqlite3', 'arch': 'sqlite', 'FreeBSD': 'sqlite3'}, 'guix': 'gnumeric',
},
'ssh-keygen': {
'debian': 'openssh-client',
'arch': 'openssh',
'guix': 'openssh',
},
'stat': {'debian': 'coreutils', 'arch': 'coreutils', 'guix': 'coreutils'},
'sqlite3': {
'debian': 'sqlite3',
'arch': 'sqlite',
'FreeBSD': 'sqlite3',
'guix': 'sqlite',
},
'wasm2wat': {'arch': 'wabt'}, 'wasm2wat': {'arch': 'wabt'},
'tar': {'debian': 'tar', 'arch': 'tar'}, 'tar': {'debian': 'tar', 'arch': 'tar', 'guix': 'tar'},
'tcpdump': {'debian': 'tcpdump', 'arch': 'tcpdump'}, 'tcpdump': {'debian': 'tcpdump', 'arch': 'tcpdump', 'guix': 'tcpdump'},
'unsquashfs': { 'unsquashfs': {
'debian': 'squashfs-tools', 'debian': 'squashfs-tools',
'arch': 'squashfs-tools', 'arch': 'squashfs-tools',
'FreeBSD': 'squashfs-tools', 'FreeBSD': 'squashfs-tools',
'guix': 'squashfs-tools',
}, },
'xxd': { 'xxd': {
'debian': 'xxd | vim-common', 'debian': 'xxd | vim-common',
'arch': 'vim', 'arch': 'vim',
'FreeBSD': 'vim | vim-lite', 'FreeBSD': 'vim | vim-lite',
'guix': 'xxd',
},
'xz': {'debian': 'xz-utils', 'arch': 'xz', 'guix': 'xz'},
'zipinfo': {
'debian': 'unzip',
'arch': 'unzip',
'FreeBSD': 'unzip',
'guix': 'unzip',
}, },
'xz': {'debian': 'xz-utils', 'arch': 'xz'}, 'zipnote': {'debian': 'zip', 'guix': 'zip'},
'zipinfo': {'debian': 'unzip', 'arch': 'unzip', 'FreeBSD': 'unzip'},
'zipnote': {'debian': 'zip'},
'procyon': {'debian': 'procyon-decompiler'}, 'procyon': {'debian': 'procyon-decompiler'},
'dumpxsb': {'debian': 'xmlbeans'}, 'dumpxsb': {'debian': 'xmlbeans'},
} }
......
...@@ -38,7 +38,12 @@ find_executable = functools.lru_cache()(find_executable) ...@@ -38,7 +38,12 @@ find_executable = functools.lru_cache()(find_executable)
# The output of --help and --list-tools will use the order of this dict. # The output of --help and --list-tools will use the order of this dict.
# Please keep it alphabetized. # Please keep it alphabetized.
OS_NAMES = collections.OrderedDict( OS_NAMES = collections.OrderedDict(
[('arch', 'Arch Linux'), ('debian', 'Debian'), ('FreeBSD', 'FreeBSD')] [
('arch', 'Arch Linux'),
('debian', 'Debian'),
('FreeBSD', 'FreeBSD'),
('guix', 'GNU Guix'),
]
) )
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment