Skip to content
This repository has been archived by the owner on Oct 15, 2024. It is now read-only.

[BUG] No-git store flow is broken #845

Closed
vendion opened this issue Jun 11, 2020 · 28 comments
Closed

[BUG] No-git store flow is broken #845

vendion opened this issue Jun 11, 2020 · 28 comments
Assignees
Milestone

Comments

@vendion
Copy link

vendion commented Jun 11, 2020

Describe the bug
In the legacy version of password store it was possible to setup the app so that it could use a password store that was not a Git repo. For example I use SyncThing to sync my password store across all my devices, and I could point the legacy app to that and tell it to not use Git.

To Reproduce
Steps to reproduce the behavior:

  1. Store passwords to the android device somewhere on the device (e.g. /storage/emulated/0/Password Store)
  2. Install Password Store 1.8.1
  3. Go to Settings -> Repository
  4. Enable External repository and select the directory the passwords are stored under "Select external repository".
  5. Go back to the main screen and select "Refresh list"
  6. Get asked to setup a git repo where it can clone passwords from

Expected behavior
For pass to use the selected directory and read the already stored password list without the need of a Git repo like how it worked with version 1.3.3

Device information (please complete the following information):

  • Device: Google Pixel 3XL
  • OS: vanilla Android 10
  • App version 1.8.1
@msfjarvis msfjarvis self-assigned this Jun 11, 2020
@msfjarvis msfjarvis added this to the 1.9.0 milestone Jun 11, 2020
@fmeum
Copy link
Member

fmeum commented Jun 12, 2020

Can reproduce this, but at least for me the following worked:

  1. Get asked to setup a git repo or use a local directory, choose local directory.
  2. See a (truncated) snackbar that tells me to grant the relevant storage permission, tap "Grant".
  3. Grant the permission, Password Store now works.

We might want to show the permission granting snackbar not just during first-time setup, but also after "External repository" has been checked.

@msfjarvis
Copy link
Member

Can reproduce this, but at least for me the following worked:

  1. Get asked to setup a git repo or use a local directory, choose local directory.
  2. See a (truncated) snackbar that tells me to grant the relevant storage permission, tap "Grant".

Guess I'm gonna make this a dialog now...

  1. Grant the permission, Password Store now works.

We might want to show the permission granting snackbar not just during first-time setup, but also after "External repository" has been checked.

I thought we did, I'll check.

@vendion
Copy link
Author

vendion commented Jun 12, 2020

We might want to show the permission granting snackbar not just during first-time setup, but also after "External repository" has been checked.

When I selected the option to use an "External repository" I did get asked to grant permissions for Password Store to have the needed permissions to access the directory but that didn't change anything.

I did finally get Password Store to see my passwords from the set directory but I had to force kill Password Store and relaunch it with the "External repository" options still set which is not very convenient IMO.

@msfjarvis msfjarvis changed the title [BUG] In the legacy version it was possible to use without a Git repo, but this feature is gone in 1.8.x [BUG] No-git store flow is broken Jun 12, 2020
@msfjarvis
Copy link
Member

I think I now have a general idea of why this occurs so a fix should not be difficult to land over the weekend. Once #776 is merged I will take a stab at this.

@msfjarvis
Copy link
Member

I followed these steps too, but pressing the 'Refresh list' menu option did not prompt me to clone my repository first. I did however find a separate bug with the swipe refresh view that I've resolved.

@msfjarvis
Copy link
Member

Here's what I did:

  1. Install a fresh copy of the app
  2. Select clone from server, and the hidden directory option.
  3. Filled in my details and cloned the repository
  4. Went into settings, enabled 'External repository', and selected the directory with my test passwords
  5. Was returned to the password list, and prompted for storage permissions.
  6. Once permissions were granted, my new passwords were visible
  7. Selected the 'Refresh list' option, got nothing.

I'm also not sure how it would ever start a git operation, because the code only resets the navigation state persisted in the viewmodel.

@vendion
Copy link
Author

vendion commented Jun 18, 2020

Ahh I did not do steps 2 and 3 from your list which is way the 'Refresh List' option may not have worked for me. Essentually what I did was the following

  1. Installed a fresh copy of the app (it installed along side the legacy version that I had already installed and working)
  2. Went into settings, enabled 'External repository', and selected the directory with my passwords (granting the perms when asked)
  3. Went back to the password list and nothing was populated
  4. Selected 'Refresh list' from the options menu and got nothing
  5. Did a "pull to refresh" motion and also got nothing
  6. Went into Android Settings -> Apps & notifications -> Password Store -> Force stop
  7. Relaunched Password Store and saw my passwords

@msfjarvis
Copy link
Member

Ahh I did not do steps 2 and 3 from your list which is way the 'Refresh List' option may not have worked for me.

I must have misread then, I assumed the problem was that switching between the two types.

  1. Went into settings, enabled 'External repository', and selected the directory with my passwords (granting the perms when asked)

Now this part I don't necessarily understand. Did you not get this screen upon launching the app?

  1. Went back to the password list and nothing was populated

When I selected a directory, I was returned to the settings page. Then I pressed back, and was taken to the screen I showed above, with the Snackbar asking for storage permission. Granting that immediately showed my passwords.

@vendion
Copy link
Author

vendion commented Jun 18, 2020

I don't recall seeing that screen, although I won't rule out user error as it may have shown and I did something to some how skip it.

@msfjarvis
Copy link
Member

I don't recall seeing that screen, although I won't rule out user error as it may have shown and I did something to some how skip it.

That's very odd... Can you please reinstall the app and make a screen recording of yourself navigating through? I want to see what exactly is the app presenting you so I can know what to fix. Thanks in advance!

@msfjarvis msfjarvis modified the milestones: 1.9.0, 1.10.0 Jun 21, 2020
@nicoe
Copy link

nicoe commented Jun 27, 2020

I'd like to add my 2¢ to this issue:

I am also experiencing this issue. I tried removing and reinstalling the application without much success.
I did try to configure from the "Parameters" button or from the Installation / Configuration wizard that pop up the first time you start the application.

I am asked to choose a directory (which I do, it's on the SD card) and I grant the access to this directory. But this information is not stored in the parameters which results in the Configuration wizard being relaunch again. I still haven't found how to get access to my password files. If I try too often to select the directory, then Password Store crashes.

The main difference is the OS I use which is LineageOS v17.1

@msfjarvis
Copy link
Member

msfjarvis commented Jun 27, 2020

I'd like to add my 2¢ to this issue:

I am also experiencing this issue. I tried removing and reinstalling the application without much success.
I did try to configure from the "Parameters" button or from the Installation / Configuration wizard that pop up the first time you start the application.

I am asked to choose a directory (which I do, it's on the SD card) and I grant the access to this directory. But this information is not stored in the parameters which results in the Configuration wizard being relaunch again. I still haven't found how to get access to my password files. If I try too often to select the directory, then Password Store crashes.

The main difference is the OS I use which is LineageOS v17.1

What device are you using? That'd help me filter out the crash from Google Play logs.

Edit: never mind, Play Store logs are absolutely worthless :/ If you are able to get a log yourself I'd be eternally grateful.

@nicoe
Copy link

nicoe commented Jun 28, 2020 via email

@msfjarvis
Copy link
Member

  • Harsh Shandilya [juin 27, 2020 12:56]:

I'd like to add my 2¢ to this issue: > > I am also experiencing this issue. I tried removing and reinstalling the application without much success. > I did try to configure from the "Parameters" button or from the > Installation / Configuration wizard that pop up the first time you > start the application. > > I am asked to choose a directory (which I do, it's on the SD card) > and I grant the access to this directory. But this information is > not stored in the parameters which results in the Configuration > wizard being relaunch again. I still haven't found how to get > access to my password files. If I try too often to select the > directory, then Password Store crashes. > > The main difference is the OS I use which is LineageOS v17.1 What device are you using? That'd help me filter out the crash from Google Play logs.
Oh I totally forgot that piece of information, sorry about that. It's a Galaxy A3 2016. But I did not install the Google Apps (I installed through F-Droid) so my crash is probably not reported. I don't know how I can send the crash dump but if you point me to some documentation I'll try to help :).

There's some reading involved but it should be sufficiently straightforward to get through. You'll need the SDK tools from here, then clone this repository and run python pidcat.py dev.msfjarvis.aps from the directory after connecting your phone. Then get Password Store to crash and hopefully you'll see a stacktrace on your computer. Paste that on any one of the various pastebin-style sites and send the link to it here. Thanks for the initiative!

@nicoe
Copy link

nicoe commented Jun 29, 2020 via email

@msfjarvis
Copy link
Member

Thanks for the info but there has been an update of Password Store and now it does not crash anymore. The location is store in the parameters but I am still stuck on the configuration screen whenever I launch the application.

Can I see a screenshot of the screen you're stuck on?

@nicoe
Copy link

nicoe commented Jul 3, 2020

Sorry for the late reply here's the screenshot.

AFAICS everything is right in the parameters (the location is stored, the key is stored).

Screenshot_20200703-101238_Password_Store

@msfjarvis
Copy link
Member

And what happens when you select 'Use local directory' (first button)?

@nicoe
Copy link

nicoe commented Jul 3, 2020 via email

@msfjarvis
Copy link
Member

That doesn't seem to make much sense :/
What version of Password Store are you on?

@nicoe
Copy link

nicoe commented Jul 3, 2020 via email

@msfjarvis msfjarvis removed this from the 1.10.0 milestone Jul 16, 2020
@msfjarvis msfjarvis removed the blocked label Aug 20, 2020
@msfjarvis msfjarvis added this to the 1.12.0 milestone Aug 20, 2020
@msfjarvis
Copy link
Member

I just tested this on the latest version and everything works correctly. Please file a new issue if there's any other problems.

@nicoe
Copy link

nicoe commented Aug 20, 2020 via email

@msfjarvis
Copy link
Member

Which version is that? I still have the issue with version 1.9.2 (fetched from F-Droid).

v1.11.0. F-Droid's incompetence is breaking our builds as usual so you'll have to wait until they sort their stuff out.

@nicoe
Copy link

nicoe commented Sep 17, 2020 via email

@msfjarvis
Copy link
Member

Like I said, file a new issue.

@Skrilltrax
Copy link
Member

That doesn't seem to make much sense :/
What version of Password Store are you on?

@msfjarvis I've faced this bug when working on the new onboarding flow. We were not finishing the onboarding activity. It can be easily resolved by opening the app again ig. This is also fixed in the new onboarding flow.

@msfjarvis
Copy link
Member

That doesn't seem to make much sense :/
What version of Password Store are you on?

@msfjarvis I've faced this bug when working on the new onboarding flow. We were not finishing the onboarding activity. It can be easily resolved by opening the app again ig. This is also fixed in the new onboarding flow.

Cool, @nicoe you can confirm this with the snapshot builds linked in the README. And file an issue if it's not resolved for you still.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants