Archive FUSE mount broken on OSX
Trying to mount an archive fails and returns a pop-up error, here is the redacted copy and paste from the vorta log:
2022-01-25 13:02:05,983 - vorta.borg.borg_job - INFO - Running command /opt/homebrew/bin/borg --log-json mount [email protected]:repo::mymac.local-2022-01-25-115959 /Users/XXX/Local/Mount
2022-01-25 13:02:06,194 - vorta.borg.borg_job - ERROR - Local Exception
2022-01-25 13:02:06,195 - vorta.borg.borg_job - ERROR - Traceback (most recent call last):
File "/opt/homebrew/Cellar/borgbackup-fuse/1.1.17/libexec/lib/python3.9/site-packages/borg/archiver.py", line 4703, in main
exit_code = archiver.run(args)
File "/opt/homebrew/Cellar/borgbackup-fuse/1.1.17/libexec/lib/python3.9/site-packages/borg/archiver.py", line 4635, in run
return set_ec(func(args))
File "/opt/homebrew/Cellar/borgbackup-fuse/1.1.17/libexec/lib/python3.9/site-packages/borg/archiver.py", line 1424, in do_mount
import borg.fuse
File "/opt/homebrew/Cellar/borgbackup-fuse/1.1.17/libexec/lib/python3.9/site-packages/borg/fuse.py", line 11, in <module>
from distutils.version import LooseVersion
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 666, in _load_unlocked
File "<frozen importlib._bootstrap>", line 565, in module_from_XXXec
File "/opt/homebrew/Cellar/borgbackup-fuse/1.1.17/libexec/lib/python3.9/site-packages/_distutils_hack/__init__.py", line 88, in create_module
return importlib.import_module('setuptools._distutils')
File "/opt/homebrew/Cellar/[email protected]/3.9.10/Frameworks/Python.framework/Versions/3.9/lib/python3.9/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "/opt/homebrew/Cellar/borgbackup-fuse/1.1.17/libexec/lib/python3.9/site-packages/setuptools/__init__.py", line 17, in <module>
import setuptools.version
File "/opt/homebrew/Cellar/borgbackup-fuse/1.1.17/libexec/lib/python3.9/site-packages/setuptools/version.py", line 1, in <module>
import pkg_resources
File "/opt/homebrew/Cellar/borgbackup-fuse/1.1.17/libexec/lib/python3.9/site-packages/pkg_resources/__init__.py", line 3257, in <module>
def _initialize_master_working_set():
File "/opt/homebrew/Cellar/borgbackup-fuse/1.1.17/libexec/lib/python3.9/site-packages/pkg_resources/__init__.py", line 3231, in _call_aside
f(*args, **kwargs)
File "/opt/homebrew/Cellar/borgbackup-fuse/1.1.17/libexec/lib/python3.9/site-packages/pkg_resources/__init__.py", line 3269, in _initialize_master_working_set
working_set = WorkingSet._build_master()
File "/opt/homebrew/Cellar/borgbackup-fuse/1.1.17/libexec/lib/python3.9/site-packages/pkg_resources/__init__.py", line 573, in _build_master
ws.require(__requires__)
File "/opt/homebrew/Cellar/borgbackup-fuse/1.1.17/libexec/lib/python3.9/site-packages/pkg_resources/__init__.py", line 891, in require
needed = self.resolve(parse_requirements(requirements))
File "/opt/homebrew/Cellar/borgbackup-fuse/1.1.17/libexec/lib/python3.9/site-packages/pkg_resources/__init__.py", line 777, in resolve
raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'pyparsing>=2.0.2' distribution was not found and is required by packaging
Platform: Darwin mymac.local 21.2.0 Darwin Kernel Version 21.2.0: Sun Nov 28 20:28:41 PST 2021; root:xnu-8019.61.5~1/RELEASE_ARM64_T6000 arm64
Borg: 1.1.17 Python: CPython 3.9.10 msgpack: 0.5.6.+borg1
PID: 14541 CWD: /
sys.argv: ['/opt/homebrew/bin/borg', '--log-json', 'mount', '[email protected]:repo::mymac.local-2022-01-25-115959', '/Users/XXX/Local/Mount']
SSH_ORIGINAL_COMMAND: None
Environment (please complete the following information):
- OS: OSX
- Vorta version: 0.8.2
- Installed from:
brew install --cask macfuse
brew install borgbackup/tap/borgbackup-fuse
(macbook is M1, so is brew)
pkg_resources.DistributionNotFound: The 'pyparsing>=2.0.2' distribution was not found and is required by packaging
Looks like a missing PyPi package. Maybe something changed there. Need to compare it with the official (non-FUSE) formula.
It looks to me like a major version upgrade of PyParsing that's been almost two years in the making, but 3.0.0 was only released Oct 2021 (current version is 3.0.7). 'Looks to me like 2.x.x is now dead.
On the Debian side, PyParsing is installed automatically as a build dependency, but isn't required for the binary package. Our PyParsing also needs an update (one of the maintainers is MIA), but it should be possible to safely disable whatever things cause it to be installed during the build, since, as you say:
Need to compare it with the official (non-FUSE) formula.
Regards, Nicholas
https://github.com/pyparsing/pyparsing/blob/master/docs/whats_new_in_3_0_0.rst#api-changes
Would be lovely to fix :) (M1 user here)
Don't know if anything has changed recently, but "it works on my machine":tm:
- MBP M1 Max Monterey 12.14.
- Borgbackup-fuse 1.2.1 installed via Brew tap.
- Vorta 0.8.7 installed via Brew.