Skip to content

extract-vmlinux not installed

#304 (closed) was addressed in 707282bd but the extract-vmlinux script is not installed in the package in either Debian or GNU Guix, and results in a traceback when comparing files:

$ diffoscope  vmlinuz-5.16.0-6-amd64 vmlinuz-5.17.0-1-amd64 
Traceback (most recent call last):####################################################|  100%                             ETA:  0:00:00 
  File "/usr/bin/diffoscope", line 36, in <module>              
    main()                                                                                                                              
  File "/usr/lib/python3/dist-packages/diffoscope/main.py", line 762, in main
    sys.exit(run_diffoscope(parsed_args))
  File "/usr/lib/python3/dist-packages/diffoscope/main.py", line 716, in run_diffoscope
    difference = compare_root_paths(path1, path2)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 69, in compare_root_paths
    difference = compare_files(file1, file2)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 146, in compare_files
    return file1.compare(file2, source)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 513, in compare
    difference = self._compare_using_details(other, source)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 448, in _compare_using_details
    details.extend(
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/container.py", line 130, in comparisons
    my_members = OrderedDict(self.get_adjusted_members_sizes())
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/container.py", line 126, in get_adjusted_members_sizes
    size = path_apparent_size(member.path)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/archive.py", line 114, in path
    self._path = self.container.extract(
  File "/usr/lib/python3/dist-packages/diffoscope/tools.py", line 140, in tool_check
    return fn(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/vmlinuz.py", line 53, in extract
    subprocess.check_call(
  File "/usr/lib/python3.10/subprocess.py", line 364, in check_call
    retcode = call(*popenargs, **kwargs)
  File "/usr/lib/python3.10/subprocess.py", line 345, in call
    with Popen(*popenargs, **kwargs) as p:
  File "/usr/lib/python3.10/subprocess.py", line 966, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/usr/lib/python3.10/subprocess.py", line 1842, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: PosixPath('/usr/lib/python3/dist-packages/scripts/extract-vmlinux')
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information