matze / iridium

Standard Notes client written in Rust and GTK
GNU General Public License v3.0
66 stars 4 forks source link

Crash on first run when attempting to set up credentials #31

Open bww opened 3 years ago

bww commented 3 years ago

It's not possible to get past the "Identification" screen, I believe due to the fact that there is no keyring, although I'm not completely sure:

thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: NoResult', shell/src/secret.rs:8:55
Linux XXX 5.8.16-2-MANJARO #1 SMP PREEMPT Mon Oct 19 11:33:03 UTC 2020 x86_64 GNU/Linux

I'm using KDE, fwiw.

matze commented 3 years ago

Thanks for the report, I ignored that issue for the Windows use case but yeah, looks like I need a more general cross-platform solution.

bww commented 3 years ago

Perhaps of interest: while using Secret Service for a side project, I found that using get_any_collection (instead of get_default_collection) works correctly with KWallet. At least insofar as I can successfully store and retrieve records from some unspecified collection.

According to the docs this function tries the default collection first, then some others in a sensible order. So in cases where the default collection works the behavior shouldn't change. You might be able to get way with just swapping that out.

matze commented 3 years ago

Thanks for the hint, I changed that. But I will keep this issue open because all the unwrap()s should better be replaced by proper error handling. Although I am not sure what to do if we cannot store anything at all.