seedvault icon indicating copy to clipboard operation
seedvault copied to clipboard

Allow to choose custom folder of storage provider

Open t-wilis opened this issue 4 years ago • 23 comments

Instead of just defaulting to the root of the Nextcloud server storage, allow a user to specify which folder on their Nextcloud server to save the backup to. Reasoning behind this is: there are quite a few (myself included) users that have a minimal VM/Bare Metal install of Nextcloud running with minimal storage, and have a much larger storage pool such as a NAS or USB drive connected.

t-wilis avatar Oct 09 '20 16:10 t-wilis

We made a conscious decision not to offer that option in order to improve the UX for less experienced users.

For those advanced tech geek use-cases, I think external solutions are better than making the UX more complicated for everyone. In this case an external solution can be to symlink the .SeedVaultAndroidBackup folder to where you need it to be.

grote avatar Oct 09 '20 16:10 grote

We made a conscious decision not to offer that option in order to improve the UX for less experienced users.

For those advanced tech geek use-cases, I think external solutions are better than making the UX more complicated for everyone. In this case an external solution can be to symlink the .SeedVaultAndroidBackup folder to where you need it to be.

You shouldn't sell out the power/experienced users for the slugs. Just have the default be what it currently is and don't ask the user where to store it, have an optional button/link that can be pressed to pull up an activity/dialog to choose. Everyone wins.

hockeymikey avatar Oct 09 '20 20:10 hockeymikey

After #151 is merged, you will be able to simply remove the MANAGE_DOCUMENTS permission and get a file chooser automatically.

grote avatar Oct 22 '20 13:10 grote

Is there a way to use Nextcloud with passcode?

oxidand avatar Nov 27 '20 10:11 oxidand

Is there a way to use Nextcloud with passcode?

That's off-topic for the original request here. But no, that's not possible as the passcode feature is meant to block access to the storage. So when the passcode is active, Nextcloud doesn't allow other apps anymore to access its storage. At present (with 3.14.0), it should still be possible though to set up Nextcloud with passcode disabled and then activate the passcode after Seedvault got access.

grote avatar Nov 27 '20 11:11 grote

You shouldn't sell out the power/experienced users for the slugs. Just have the default be what it currently is and don't ask the user where to store it, have an optional button/link that can be pressed to pull up an activity/dialog to choose. Everyone wins.

Amen.

Also, worth considering: non-power users are likely to use Google for backing up. It is likely SeedVault users are ALL power users.

FBachofner avatar Dec 01 '20 20:12 FBachofner

After #151 is merged, you will be able to simply remove the MANAGE_DOCUMENTS permission and get a file chooser automatically.

Good news.

Thank you.

FBachofner avatar Dec 01 '20 20:12 FBachofner

On my Fairphone 3+ with the latest Lineage, I cannot revoke the MANAGE_DOCUMENTS permission because the permission manager tells me the app doesn't need permissions. Is there another way to change the remote storage directory?

renatobellotti avatar Mar 16 '21 17:03 renatobellotti

Please, I would love to use Seedvault, but I have all my storage space as external memory.

renatobellotti avatar Apr 10 '21 08:04 renatobellotti

On my Fairphone 3+ with the latest Lineage, I cannot revoke the MANAGE_DOCUMENTS permission because the permission manager tells me the app doesn't need permissions. Is there another way to change the remote storage directory?

Screenshot_20210526-102327_Settings

Similar issue

Rihcus avatar May 26 '21 14:05 Rihcus

If your ROM gave Seedvault the permission, it can't be revoked manually.

grote avatar May 26 '21 14:05 grote

Will there be an option added to the settings for these cases?

renatobellotti avatar May 31 '21 09:05 renatobellotti

Most of my Nextcloud Storage is in an external storage (s3). I am not sure if it's possible to create a Symlink to that in Nextcloud.

For now I would have to keep moving .SeedVaultAndroidBackup into s3 everytime I run the backup. It is also possible there is not enough space where the root directory is located to store backups as the phone storage use keeps increasing.

carlzoo avatar Aug 02 '21 04:08 carlzoo

If your ROM gave Seedvault the permission, it can't be revoked manually.

This means there is still no solution for this issue for LineageOS users, right?

llucax avatar Aug 27 '21 07:08 llucax

For those that are using a bare minimum setup for NextCloud and then setting up external storage.

I was able to get this working by setting up an external SMB storage as my users root folder. Also with a SMB share its important that you show hidden files otherwise the backup will fail.

Screenshot_20220203-143418~3

RhynoTech avatar Feb 03 '22 19:02 RhynoTech

I think its great that you are considering less experienced people in your UX considerations. Especially in the tech savy privacy bubble these are too often overlooked. But i think that the current sitation is actually creating a worse UX for less and medium experienced users. Some of my thoughts on why this is the case:

  1. For less experienced users none of the currently available locations seems to be really suitable:

    • Internal storage: in most cases users probably want to store their backup externally (to be able recover their data even in case of losing or damaging the phone). As far as I've seen, the folder location is currently only documented in github. They therefore would have to lookup the backup location on github and then somehow copy the files (at this point the required experience is equal or even greater than just selecting a destination folder).
    • USB: While this should be doable even for nonexperienced users, having to plug in a usb drive to your phone every time you want to perform a backup will probably have the consequence that a lot of people won't be doing it regularly (me included). With a good backup solution I ideally only want to have to think about it when I configure it and when I need to recover my data.
    • DAV: Unfortunatley most of the popular cloud storage services dont provide a WebDAV API.
    • Nextcloud: Setting up an Nextcloud server is too complicated for inexperienced users.
  2. Allowing to choose your own folder for "Internal storage" would enable users to set a backup destination synced by their preffered cloud storage provider (e.g. via SAF) and thus making it easier to store a backup externally.

  3. Your current solution to change the MANAGE_DOCUMENTS permission seems not to be available in various roms (at least in CalyxOS) and even if it would be available, changing this setting to choose your backup folder seems to be unintuitive and is (as far as I have seen) only documented in this issue and the code. Providing a default folder as proposed by others and maybe even hiding the option to choose a custom folder in the already existing "Expert settings" seems be a good compromise.

Please correct me in case I have overlooked some aspects.

BTW, thanks for your great work!

linusnetze avatar Nov 26 '22 14:11 linusnetze

A UX idea to solve this would be to provide a less prominent way (overflow menu) to custom choose a storage location during setup and restore.

grote avatar Jan 02 '23 13:01 grote

I my case I was using Nextcloud and thankfully external SFTP mount, so I was able to add second mount (that would otherwise be redundant) that mounts a specific subdirectory to .SeedVaultAndroidBackup. This is suboptimal though, since as far as Nextcloud is concerned my filed appear to be stored twice, causing extra load on the server.

Also some people might have more than one phone and would like to connect the same Nextcloud account, not sure how Seedvault would behave in that case.

Either way having something like a choice between "Finish" and "Advanced configuration" at the last step would satisfy both less experienced users and those who want to tweak things further.

nazar-pc avatar Jan 21 '23 12:01 nazar-pc

A UX idea to solve this would be to provide a less prominent way (overflow menu) to custom choose a storage location during setup and restore.

@stevesoltys this may be a low hanging fruit, if we want to do it.

grote avatar Sep 25 '23 09:09 grote

What is the current stance on this issue? I was just trying to set my email provider's webdav service as a backup location, only to run into the issue of their root folder not being writeable. It would grant a lot of flexibility to be allowed to manually set the backup location. However, for users with the same issue as me, there is a workaround. In DavX, create a mount using the url that leads directly to your writeable user folder. For me (with mailbox.org), the url was https://dav.mailbox.org/servlet/webdav.infostore/Userstore/User%20Name/, with User and Name being my first and last name respectively. You can also create and specify further subfolders if you want. If you're using another third party webdav provider, do some digging to find out what your correct url should be.

StarTroop avatar Nov 09 '23 00:11 StarTroop

This is a big issue which stifles seedvault adoption. Seedvault seems like a really useful application, but I can't use it with rclone, not without compiling nginx, maintaining a rom so I can remove a permission or setting up a nextcloud instance. This will most certainly prevent less experienced users from using the product.

exalented avatar Jan 19 '24 08:01 exalented

I was also struggling hard with the Seedvault-Nextcloud-S3-Combo.

I hope I may explain my solution here, despite I see its also related to Nextcloud: I was able to solve it by creating a folder ".SeedVaultAndroidBackup" in the external storage plugin of Nextcloud. This is also buggy as Nextcloud seems not to be able to use $user paths in the external storage plugin. 2024-01-27_16-36

So I ended up having as many Seedvault folders in my admin root as users are in the group to have this folder created. They lead all to the same S3 bucket and Seedvault creates a 123xyz.sv folders inside for every user and I hope there will be no name conflict when several users are creating backups to the same Seedvault-Folder. 2024-01-27_16-37

Given the mess and chaos me as a medium experienced users had to create, I personally think as folder picker would be a less unsecure solution.

ciconi avatar Jan 27 '24 15:01 ciconi

This is really silly and an oversight by the dev team. I just back up to my local device and then use FolderSync to send it where I want.

Cyberes avatar May 21 '24 16:05 Cyberes