Dependency issue on Manjaro #735
Labels
No Label
bug
data loss
design finalized
good first issue
new feature area
question / support
security
waiting for response
No Milestone
No Assignees
2 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: borgmatic-collective/borgmatic#735
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What I'm trying to do and why
Create a backup or even a simple version check fails.
Steps to reproduce
sudo borgmatic create --verbosity 1 --list --stats
Actual behavior
Expected behavior
No response
Other notes / implementation ideas
No response
borgmatic version
1.8.0
borgmatic installation method
pacman
Borg version
borg 1.2.4
Python version
Python 3.11.3
Database version (if applicable)
No response
Operating system and version
manjaro
Thanks for filing this! A couple of questions so I can hopefully repro it:
On Manjaro stable here, I can't even install 1.8.0 of that package because it's built for a newer version of Python than I have. So if I
sudo pacman -S borgmatic
I only get 1.7.12 which doesn't have the problem you're experiencing.Hi Witten
Thanks for your quick reply.
For some reason I didn't get en email about it.To answer to your questions:
I can install 1.8.0 without an issue, and now even your recent minor update is available already.
Thanks for the details. I'll spin up a VM with Manjaro testing when I get a chance and try to repro this.
I unfortunately wasn't able to repro this. I tried with both Manjaro testing in a VM and in a container. Here's some additional information from your system that may help me debug this: I'd like to see the output of the following commands. Some of them may error, but that should be okay; these are all read-only operations:
python -c 'import importlib_metadata as m; print(m.__file__)'
python -c 'import importlib_metadata as m; print(m.__file__)' | pacman -Qo -
python -c 'import importlib_metadata as m; print(dir(m))'
python -c 'import importlib.metadata as m; print(m.__file__)'
python -c 'import importlib.metadata as m; print(m.__file__)' | pacman -Qo -
python -c 'import importlib.metadata as m; print(dir(m))'
Thank you!
/home/ik/.local/lib/python3.11/site-packages/importlib_metadata/__init__.py
error: No package owns /home/ik/.local/lib/python3.11/site-packages/importlib_metadata/__init__.py
['DeprecatedNonAbstract', 'DeprecatedTuple', 'Distribution', 'DistributionFinder', 'EntryPoint', 'EntryPoints', 'FastPath', 'FileHash', 'FreezableDefaultDict', 'Iterable', 'List', 'Lookup', 'Mapping', 'MetaPathFinder', 'MetadataPathFinder', 'NullFinder', 'Optional', 'PackageMetadata', 'PackageNotFoundError', 'PackagePath', 'Pair', 'PathDistribution', 'Prepared', 'Sectioned', 'Set', 'SimplePath', 'StrPath', '__all__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__path__', '__spec__', '_adapters', '_collections', '_compat', '_functools', '_itertools', '_meta', '_py39compat', '_text', '_top_level_declared', '_top_level_inferred', '_unique', 'abc', 'always_iterable', 'cast', 'collections', 'contextlib', 'csv', 'distribution', 'distributions', 'email', 'entry_points', 'files', 'functools', 'import_module', 'inspect', 'install', 'itertools', 'metadata', 'method_cache', 'operator', 'os', 'packages_distributions', 'pass_none', 'pathlib', 'posixpath', 'pypy_partial', 're', 'requires', 'starmap', 'suppress', 'sys', 'textwrap', 'unique_everseen', 'version', 'warnings', 'zipp']
/usr/lib/python3.11/importlib/metadata/__init__.py
/usr/lib/python3.11/importlib/metadata/__init__.py is owned by python 3.11.3-2
['Deprecated', 'DeprecatedList', 'DeprecatedTuple', 'Distribution', 'DistributionFinder', 'EntryPoint', 'EntryPoints', 'FastPath', 'FileHash', 'FreezableDefaultDict', 'List', 'Lookup', 'Mapping', 'MetaPathFinder', 'MetadataPathFinder', 'Optional', 'PackageMetadata', 'PackageNotFoundError', 'PackagePath', 'Pair', 'PathDistribution', 'Prepared', 'Sectioned', 'SelectableGroups', 'SimplePath', 'Union', '__all__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__path__', '__spec__', '_adapters', '_collections', '_functools', '_itertools', '_meta', '_text', '_top_level_declared', '_top_level_inferred', '_unique', 'abc', 'always_iterable', 'collections', 'csv', 'distribution', 'distributions', 'email', 'entry_points', 'files', 'functools', 'import_module', 'itertools', 'metadata', 'method_cache', 'operator', 'os', 'packages_distributions', 'pass_none', 'pathlib', 'posixpath', 're', 'requires', 'starmap', 'suppress', 'sys', 'textwrap', 'unique_everseen', 'version', 'warnings', 'zipfile']
Thank you too!
Huh, that makes no sense whatsoever! Because, based on that output, the attribute that the borgmatic error is complaining out (
importlib_metadata.version
) clearly exists. The only thing I can think of is you've somehow manually installedimportlib_metadata
with pip and not from a Manjaro package (judging by thatNo package owns ...
output), and that's somehow causing problems. (For more background than anyone probably ever wanted on that topic, see here.)So one thing you could do is try uninstalling the pip-installed
importlib_metadata
. If you're willing to try that, that would look something like:And then if you do still want the non-builtin
importlib_metadata
package for whatever reason, you could optionally install it with your official Manjaro package manager of choice:But that last step would be optional as far as borgmatic is concerned. It should be able to use the built-in Python 3.11.3
importlib.metadata
just fine.That was indeed the issue. I've cleaned up the pip installations that I installed/upgraded manually and borgmatic works smoothly now.
Manjaro only recently included this "externally managed" option but I'm glad they did, so there's much less chance to mess it up next time.
Thanks a lot again for your help. On to the next 5 years of using borgmatic!
Phew, I'm glad to hear that was it! Thanks for all the help tracking this down.
Don't you have any means of donation? I looked around but couldn't find anything. Since I'm also using bm for my business laptop and for years for personal use and was always helped so awesomely with any issue, I gladly wanna buy you a coffee.
That's very kind of you, and I'm glad to hear borgmatic has been working out! But I haven't set up anything like donations so far. I do have a couple referral links though. Maybe the next time you're evaluating your Borg hosting providers, have a look. You might also consider donating directly to the Borg project, which borgmatic obviously leans heavily on.
Sure, I know about those alternatives. But I don't need any Borg hosting provider and Borg will be taking into account as well for a donation. Should you have any other means, like Wise or PayPal, I'd be happy to hear it anytime.
Thanks, I'll let you know if/when I put up a link!