AzureStorageExplorer icon indicating copy to clipboard operation
AzureStorageExplorer copied to clipboard

Failure to launch/missing prompt to create keyring on Ubuntu 22.04

Open epopisces opened this issue 9 months ago • 2 comments

Storage Explorer Version

1.37.0

Regression From

No response

Architecture

x64

Storage Explorer Build Number

No response

Platform

Linux (tar.gz)

OS Version

Ubuntu 22.04

Bug Description

When launching Azure Storage Explorer (installed via the tar.gz) on a fresh Ubuntu 22.04 VM with .NET 8.0 installed, the application splash window appears but spins endlessly. When launched from the command line the process hangs on the following line <INFO> Initializing user accounts manager error store...

The issue occurs in prior versions of Storage Explorer as well (1.36.2 tested).

Troubleshooting shows that this is a keyring issue, but the expected dialog prompting the user to create a Default keyring does not appear, leading to confusion. Creating a default keyring resolves the issue, but wanted to raise this Issue both for others who may encounter it and so the application team can address the dialog failing to appear in this specific case.

Steps to Reproduce

On a fresh Ubuntu 22.04 VM, in a remote session using xrdp and xfce4:

  1. Install .NET 8.0 (apt install aspnetcore-runtime-8.0)
  2. Pull down and unpack the .tar file (in our case to /opt/azure-storage-explorer)
  3. from Terminal, run StorageExplorer: /opt/azure-storage-explorer/StorageExplorer --disable-gpu

Launching with --no-sandbox makes no difference, launching without --disable-gpu results in a pair of GPU error lines that don't prevent the process from continuing but still results in hanging on the final line.

Actual Experience

Running the above command/arguments results in the following output:

[2025-02-28T16:39:03.839Z] (main:2764536) <NONE> Log file: /home/uname/.config/StorageExplorer/logs/2025-02-28_103903/2025-02-28_103903_main_2764536.log
[2025-02-28T16:39:03.847Z] (main:2764536) <NONE> Log level: info
[2025-02-28T16:39:03.848Z] (main:2764536) <INFO> Startup app state:  {
    lastWindowState: { rect: { x: 0, y: 0, width: 1000, height: 768 }, maximized: false },
    disableGpu: false,
    dialogAutoResponse: {}
  }
[2025-02-28T16:39:04.571Z] (main:2764536) <INFO> No proxy environment variables exist on startup
[2025-02-28T16:39:04.575Z] (main:2764536) <INFO> Applying proxy configuration
[2025-02-28T16:39:04.576Z] (main:2764536) <INFO> Proxy configuration source set to: none
[2025-02-28T16:39:04.577Z] (main:2764536) <INFO> Proxy configuration set to: undefined
[2025-02-28T16:39:04.580Z] (main:2764536) <INFO> Initializing user accounts manager account store...
[2025-02-28T16:39:09.894Z] (main:2764536) <INFO> Initializing user accounts manager error store...

Never advancing beyond that line regardless of how long the process is permitted to run.

Expected Experience

When a default keyring has not been created a dialog should appear prompting the user to establish a default keyring and set the password, and subsequent launches of Azure Storage Explorer work without issue or prompt.

Additional Context

One noteworthy thing. If we:

  1. Create a default keyring
  2. Launch AzSE (successfully)
  3. Close AzSE
  4. Delete the keyring
  5. Relaunch AzSE

AzSE will pop up a dialog which prompts me to create a new keyring named 'Default keyring' (which is what I would have expected in the first place). So it does what I would expect in that case--AzSE is capable of generating this prompt--there is just something preventing the dialog from being triggered unless a keyring was created and removed prior.

epopisces avatar Feb 28 '25 17:02 epopisces

@epopisces

  • Does changing the log level to Debug reveal anything in the app logs?
  • Have you updated to 1.38.0? Does the problem reproduce with that version? Does the problem reproduce on previous versions?
  • Does it reproduce if using the Storage Explorer snap?

Storage Explorer does run a test when launching to make sure it can access the default keychain. This test, I believe, is what triggers the dialog to create the default keyring in most cases. I'm suspicious about the first log message you posted, which suggests that something in the identity library is having issues and not Storage Explorer itself. Possibly, you're encountering a race condition where Storage Explorer is forced to handle an identity library error before it can test the keychain connection directly. If the test isn't run, the default keyring never gets created.

craxal avatar Apr 22 '25 20:04 craxal

@epopisces Have you had a chance to answer the above questions?

craxal avatar May 22 '25 18:05 craxal

Apologies we moved on to using Ubuntu 24.04 which does provide a dialog to choose a new password on start, so I don't have a test candidate for this one at the moment.

This can be closed--if it isn't something widespread that others are running into, then it is likely an isolated one-off like a race condition as you mentioned. Thanks for responding and providing context!

epopisces avatar Jul 25 '25 13:07 epopisces