Skip to content

module ugrd.base.plymouth: lddtree: warning: /usr/sbin/plymouth-set-default-theme: Magic number does not match #346

@sinatosk

Description

@sinatosk

I'm using ugrd 2.0.2 and plymouth 22.02.122-r4 on Gentoo, both stable packages

With modules set at

modules = [
   "ugrd.fs.resume",
   "ugrd.base.plymouth",
]

in /etc/ugrd/config.toml

after "make install", I see this warning/error

WARNING  | Unable to calculate dependencies for: plymouth-set-default-theme
Traceback (most recent call last):
  File "/usr/lib/python-exec/python3.13/ugrd", line 8, in <module>
    sys.exit(main())
             ~~~~^^
  File "/usr/lib/python3.13/site-packages/ugrd/main.py", line 169, in main
    generator = InitramfsGenerator(**kwargs)
  File "/usr/lib/python3.13/site-packages/zenlib/logging/loggify.py", line 12, in __init__
    super().__init__(*args, **kwargs)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/ugrd/initramfs_generator.py", line 32, in __init__
    self.load_config(config)  # The user config is loaded over the base config, clobbering kwargs
    ~~~~~~~~~~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/site-packages/ugrd/initramfs_generator.py", line 61, in load_config
    self[config] = value
    ~~~~^^^^^^^^
  File "/usr/lib/python3.13/site-packages/ugrd/initramfs_generator.py", line 69, in __setitem__
    self.config_dict[key] = value
    ~~~~~~~~~~~~~~~~^^^^^
  File "/usr/lib/python3.13/site-packages/ugrd/initramfs_dict.py", line 79, in __setitem__
    return self.handle_parameter(key, value)
           ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/ugrd/initramfs_dict.py", line 113, in handle_parameter
    return getattr(self, f"_process_{key}")(value)
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
  File "/usr/lib/python3.13/site-packages/zenlib/util/handle_plural.py", line 29, in wrapper
    function(self, *(other_args + (item,)), **kwargs)
    ~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/ugrd/initramfs_dict.py", line 370, in _process_modules
    self[name] = value
    ~~~~^^^^^^
  File "/usr/lib/python3.13/site-packages/ugrd/initramfs_dict.py", line 79, in __setitem__
    return self.handle_parameter(key, value)
           ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/ugrd/initramfs_dict.py", line 132, in handle_parameter
    return handle_plural(func)(self, value)
           ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/zenlib/util/handle_plural.py", line 29, in wrapper
    function(self, *(other_args + (item,)), **kwargs)
    ~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/ugrd/base/core.py", line 463, in _process_binaries_multi
    dependencies = calculate_dependencies(self, binary)
  File "/usr/lib/python3.13/site-packages/ugrd/base/core.py", line 149, in calculate_dependencies
    raise AutodetectError("Unable to resolve dependencies, error: %s" % dependencies.stderr.decode("utf-8"))
ugrd.exceptions.AutodetectError: Unable to resolve dependencies, error: lddtree: warning: /usr/sbin/plymouth-set-default-theme: Magic number does not match

Based on the history of the file "/usr/sbin/plymouth-set-default-theme" from plymouth, it looks like it's always been a bash/shell script.

My understanding is that lddtree only works with ELF formatted files

I can see here that the variable "binary_path" is assigned "/usr/bin/plymouth-set-default-theme" and later variable "interpreter" is assigned "/bin/bash", however after updating the binaries list, ugrd runs lddtree based on "binary_path", hence the "Magic number does not match"

If I'm understanding this correctly, this won't with any none ELF formatted files that are registered as binaries

loving ugrd, thanks for the effort

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions