Skip to content

[FEATURE] Local external directory use #636

@Rudd-O

Description

@Rudd-O

Those of us who do not / cannot use Git, and therefore use Syncthing / rsync / restic / other solutions to synchronize passwords with our phones, have been left in the cold with the (prior administration's) decision to remove local directory use.

This drastically reduces the usefulness of such an app, because not everybody is willing to put their password storage (even if encrypted) on a repository exposed to the Internet. Beyond that, most people don't actually know anything about Git, nor should they be required to learn anything about Git, just to use a password manager.

I would like this option to be restored.

Chief complaint in the decision to remove this key feature[1] was the use of old APIs that were no longer going to be supported by Android. At the time, I am not sure why anyone failed to point out that the exact same functionality should be implementable using SAF. It's worth noting that the old version of the app which has this feature works perfectly using Storage Scopes too.

Please bring it back. Thanks.

[1] android-password-store#1849

Describe the solution you'd like

Use SAF to restore the local folder mode, which, when turned on, also cancels the requirement that Git be used for anything.

Less optimal: use ~/Android/media/ to store GPG files. These files will not be accessible by other apps, except for file managers (e.g. Syncthing, other apps with manage external storage permission), thus the security expectations are preserved while still allowing local folder to sync.

It should in any case be possible to disable any and all Git use / requirement.

Describe alternatives you've considered

Switching to KeePassXC.

Additional context

The first version of the app I installed (accidentally!) that stopped including this feature was version 1.15.4 on F-Droid, today.

The last version of the app that didn't lose this key feature (which I restored from backup of my old phone) was 1.13.5. This one targets SDK 29 and asserts minSdk to be 23.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions