keybase / keybase/client

Dokan was removed by an update and not reinstalled

Open
#9,105 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
9.2k
Forks
1.3k
Avg merge
12h 58m
Merged PRs (30d)
56

Description

Somewhere along the way, during the update process, Dokan got removed. It's possible that Windows Defender removed it, but I doubt it, because the only trace of Dokan ever being on my system is dokan1.cat nested in System32--no other Dokan files are present.

Reinstalling Keybase in all sorts of creative ways didn't help. No matter what I did, I kept getting lines like this in keybase.kbfs.log:

[ERRO kbfs mounter.go:30] 0a2 Failed to mount dokan filesystem (i=32): Dokan failed: code=-99 "Error loading Dokan DLL"

Yeah, it couldn't load the DLL because it didn't exist. :)

In order to fix the problem, I had to:

  1. Download the Keybase installer: keybase_setup_386.exe
  2. Download the WiX toolset binaries (no need for the installer)
  3. Run .\dark.exe -x tmp .\keybase_setup_386.exe, where .\dark.exe is the full path to the corresponding EXE in the WiX toolset, tmp is a newly created, empty folder, and .\keybase_setup_386.exe is the full path to the Keybase setup
  4. Ensure Keybase is stopped and no Keybase-related processes are running
  5. Run tmp\AttachedContainer\Dokan_x64.msi
  6. Run tmp\AttachedContainer\Keybase.msi, just to be safe

This restored Keybase to a working state.

Environment:

  • Windows 10 Pro x64, up-to-date, including October Patch Tuesday updates
  • No antivirus, aside from Windows Defender
  • No other applications that use Dokan

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the keybase.kbfs.log failure at mounter.go:30 and compare the extracted keybase_setup_386.exe contents, especially AttachedContainer\Dokan_x64.msi and Keybase.msi. Investigate the update path that left only dokan1.cat present. Done means an update restores the Dokan DLL and Keybase can mount the Dokan filesystem without the manual MSI extraction steps.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
operating-systems, release
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.