-
Notifications
You must be signed in to change notification settings - Fork 29
Description
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