doki-theme / doki-theme-vscode

Cute anime character themes for VS-Code.
https://marketplace.visualstudio.com/items?itemName=unthrottled.doki-theme
MIT License
899 stars 49 forks source link

WSL installation issues #32

Closed kotx closed 3 years ago

kotx commented 4 years ago

Describe the bug

I get sent to Doki Sticker Help when connected to WSL. I tried to solve this by pasting the provided command, sudo chown -R $(whoami) /home/kot/.vscode-server/bin/e5a624b788d92b8d34d1392e4c4d9789406efe8f/out/vs/workbench. However workbench does not exist.

To Reproduce

  1. Open a VSCode WSL remote connection.
  2. Install The Doki Theme extension.
  3. Try to install a sticker pack.

Expected Behavior

The stickers are installed successfully or sudo chown -R $(whoami) /home/kot/.vscode-server/bin/e5a624b788d92b8d34d1392e4c4d9789406efe8f/out/vs/workbench works.

Environment

Version: 1.51.1 (user setup) Commit: e5a624b788d92b8d34d1392e4c4d9789406efe8f Date: 2020-11-10T23:34:32.027Z Electron: 9.3.3 Chrome: 83.0.4103.122 Node.js: 12.14.1 V8: 8.3.110.13-electron.0 OS: Windows_NT x64 10.0.20257

Doki Theme version: v7.0.1

Screenshots

None, can provide if needed.

kotx commented 4 years ago

Heads up, terminating the remote connection and then installing it works. However, this is a workaround, not a fix.

Unthrottled commented 4 years ago

Thanks for making a detailed issue, I appreciate the effort! I'll look into why it is being sad.

Just to make sure I know what your talking about, is it this: https://code.visualstudio.com/docs/remote/wsl

terminating the remote connection and then installing it works.

How does that work? The extension is the one installing the stickers/background into the css.

kotx commented 4 years ago

Just to make sure I know what your talking about, is it this: https://code.visualstudio.com/docs/remote/wsl

Yup! I'm using the official WSL extension.

I think the WSL extension installs a vscode-server onto WSL, so all extensions are on WSL. /home/kot/.vscode-server/bin/<blah>/out/vs/workbench is not on the vscode-server, but workbench exists on VSCode on Windows.

Unthrottled commented 4 years ago

I was able to verify the issue.

Heads up, terminating the remote connection and then installing it works. However, this is a workaround, not a fix.

Unfortunately this may be the case friend.

UI Extensions: These extensions contribute to the VS Code user interface and are always run on the user's local machine. ....

Source

So the VSCode on your windows machine used as the view of the VS code server that runs on the windows linux subsystem. The theme get's applied to the Windows VS code (which acts as the view for the WSL code), and styles that. The code server has no UI components/artifacts.

When the plugin operates for WSL, it works inside of WSL and not on your windows machine. So when the plugin tries to do its work, it is working in the context of the WSL and not your windows vscode (which you already know).

The sticker installation is already a hack to start off with. So my next course of action is going to be hacky as well.

So what I've tried doing is finding the user's windows VS Code. However I've run into a snag.

I can find the VS code css, however, I can't change the ownership of the files from WSL.

λ Kara Users → whoami
alex
λ Kara Users → sudo chown -R alex /mnt/c/Users/birdm.DESKTOP-FO92PV5/AppData/Local/Programs/Microsoft\ VS\ Code/resources/app/out/vs
λ Kara Users → ll /mnt/c/Users/birdm.DESKTOP-FO92PV5/AppData/Local/Programs/Microsoft\ VS\ Code/resources/app/out/vs
total 460
drwxrwxrwx 1 root root    512 Nov 16 04:20 .
drwxrwxrwx 1 root root    512 Nov 16 04:20 ..
drwxrwxrwx 1 root root    512 Nov 16 04:20 base
drwxrwxrwx 1 root root    512 Nov 16 04:20 code
-rwxrwxrwx 1 root root  35826 Nov 10 23:34 loader.js
drwxrwxrwx 1 root root    512 Nov 16 04:20 platform
-rwxrwxrwx 1 root root 432133 Nov 10 23:34 vscode.d.ts
drwxrwxrwx 1 root root    512 Nov 16 06:14 workbench

Let me know if you can change the ownership of your windows VS code from WSL. If that is the case, then I can put in the code that searches for the Windows VS Code from WSL.

Otherwise the fix will be the work around you found.

Edit: That may not be the issue. I'll look into it some more, and report back. It may be possible 🤞

kotx commented 4 years ago

If nothing else works, you can put a notice saying that the user has to exit WSL and install the stickers on Windows VSCode.

Unthrottled commented 3 years ago

Hey friend, thanks for reporting this issue and also making me aware of this functionality. I couldn't use windows 10 without WSL :)

I fixed it, and it works on my machine, hopefully it works on your machine as well (I think I was assuming default VSCode installation directories). If not, you've got a work around.

Might I also recommend doki-theme-hyper

Screenshot 2020-11-17 174608

Makes using WSL even better. Helpful WSL setup for Hyper post

programist221 commented 3 years ago

Hi can you help i have no theme installed writes a problem: (Unable to install Sagiri, please see active tab for more information. Source: The Doki Theme(Extension))

if it's not hard for you to help

Unthrottled commented 3 years ago

@programist221 What operating system are you working with? Windows 10?

If windows 10, are you using code through the linux subsystem?

Here is how to get around it.

https://user-images.githubusercontent.com/15972415/136866230-3b47fec4-819a-48c3-a0f1-0e6a6915d08c.mp4