YunoHost-Apps / borg_ynh

An experimental Borg implementation for YunoHost
https://www.borgbackup.org/
GNU Affero General Public License v3.0
19 stars 22 forks source link

borg cannot mount archives #69

Closed slowphil closed 3 years ago

slowphil commented 3 years ago

Running borg_ynh on a raspberry pi all up-to-date, backups are successfully created. Now I'd like to examine the backup archives by fuse-mounting them at some place. In principle borg can do that, but the output of a borg mount command is presently:

borg mount not available: loading FUSE support failed [ImportError: No module named 'llfuse'

I tried adding llfuse with pip in borg's virtual environment but that fails:

/opt/borg-env/bin/python /opt/borg-env/bin/pip install llfuse Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple Collecting llfuse Downloading llfuse-1.4.0.tar.gz (478 kB) |████████████████████████████████| 478 kB 4.4 MB/s ERROR: Command errored out with exit status 2: command: /opt/borg-env/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-d2mlx5w7/llfuse_974b8421bbac4f9490f2788fefef38f5/setup.py'"'"'; file='"'"'/tmp/pip-install-d2mlx5w7/llfuse_974b8421bbac4f9490f2788fefef38f5/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-_d4obr0o cwd: /tmp/pip-install-d2mlx5w7/llfuse_974b8421bbac4f9490f2788fefef38f5/ Complete output (4 lines): Package fuse was not found in the pkg-config search path. Perhaps you should add the directory containing `fuse.pc' to the PKG_CONFIG_PATH environment variable No package 'fuse' found

ERROR: Command errored out with exit status 2: python setup.py egg_info Check the logs for full command output.

I tried adding python3-llfuse debian package and another borgbackup dependency according to debian, and recreating the python environment as in the install script, but that does not solve the issue.

However, if I install debian's borgbackup package and run the mount command with it (that is I invoke /usr/bin/borg instead of borg_yhn’s /usr/local/bin/borg -> /opt/borg-env/bin/borg) then mounting archives works fine. So it seems it's not an issue with a missing fuse kernel module as suggested in the Forum where I first reported the issue. Presently, debian is installing borg 1.1.9 while borg_ynh is pulling 1.1.13, which is maybe a clue. In any case, installing and using debian's borg for mounting the archives is a workaround for the moment.

I’m not familiar enough with python environments to understand what is going wrong and how to resolve that issue with borg_ynh.

zamentur commented 3 years ago

Fixed in #71