Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Settings UI is completely blank #198420

Closed
arvid-norlander opened this issue Nov 16, 2023 · 11 comments · Fixed by #198801
Closed

Settings UI is completely blank #198420

arvid-norlander opened this issue Nov 16, 2023 · 11 comments · Fixed by #198801
Assignees
Labels
bug Issue identified by VS Code Team member as probable bug settings-editor VS Code settings editor issues verified Verification succeeded
Milestone

Comments

@arvid-norlander
Copy link

arvid-norlander commented Nov 16, 2023

Type: Bug

  1. Open VS Code (with or without extensions disabled, makes no difference)
  2. Open File -> Preferences -> Settings
  3. Observe blank UI with no actual settings in it.

image

If you leave the settings tab open and restart vs code (such that it reopens the settings tab automatically on restart) the settings GUI will be there, but all the extension settings will be missing (observe that it is missing from the menu here):

image

If I then close and reopen settings they will again be empty.

VS Code version: Code 1.84.2 (1a5daa3, 2023-11-09T10:50:47.800Z)
OS version: Linux x64 6.2.0-36-generic (Ubuntu 22.04 LTS)
Modes:

System Info
Item Value
CPUs 12th Gen Intel(R) Core(TM) i9-12950HX (24 x 4156)
GPU Status 2d_canvas: enabled
canvas_oop_rasterization: disabled_off
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
video_decode: enabled
video_encode: disabled_software
vulkan: disabled_off
webgl: enabled
webgl2: enabled
webgpu: disabled_off
Load (avg) 1, 1, 1
Memory (System) 62.29GB (54.92GB free)
Process Argv --disable-extensions --crash-reporter-id f5e0695e-011b-4a71-ba0b-b0beb8be9ddf
Screen Reader no
VM 0%
DESKTOP_SESSION plasma
XDG_CURRENT_DESKTOP KDE
XDG_SESSION_DESKTOP plasma
XDG_SESSION_TYPE x11
Extensions disabled
@arvid-norlander
Copy link
Author

I also tried with prime-run to run this on the nVidia GPU instead of the built in Intel GPU. Makes no difference.

@rzhao271
Copy link
Contributor

After running the command "Developer: Toggle Developer Tools", do any errors show up under the Console tab?

@rzhao271 rzhao271 added this to the Backlog milestone Nov 16, 2023
@rzhao271 rzhao271 added info-needed Issue requires more information from poster settings-editor VS Code settings editor issues labels Nov 16, 2023
@rzhao271 rzhao271 removed this from the Backlog milestone Nov 16, 2023
@arvid-norlander
Copy link
Author

After running the command "Developer: Toggle Developer Tools", do any errors show up under the Console tab?

Yes I got 3 errors, they all seem related to that I'm behind a corporate proxy though. Note that I ran this with --disable-extensions, but I still get errors related to extensions. I find this very strange

image
image
image

@arvid-norlander
Copy link
Author

arvid-norlander commented Nov 21, 2023

@rzhao271

When I'm not behind the proxy, settings work as expected. I find it very odd that VSCode would need to call out to the internet just to open settings. Opening the marketplace for extensions I understand, but not settings.

Especially since I can also open settings just fine if I'm completely disconnected. It is just if I'm connected via the corporate network that it falls flat on it's face.

For some further debug information: We use Zscaler at my workplace, which acts as a transparent HTTPS MITM proxy (no need/not possible to set any environment variables, but you do need to install the CA certificate). The proper certificate is installed in the system certificate store (/etc/ca-certificates) and that works as expected with other programs.

Also, other internet features in VSCode work fine, such as github copilot.

EDIT:

I also tried some of the settings in the proxy section of the settings to see if it made any difference. They were all set to the default values before.

  • http.proxyStrictSSL made no difference
  • http.experimental.systemCertificatesV2 made no difference
  • http.systemCertificates is set, but I doubt I want to uncheck it if I understand it correctly.
  • http.proxySupport is set to override (default), and it sounds like it only affects extensions, so I didn't touch it.

I don't see any option to manually add a certificate anywhere in the settings.

@arvid-norlander
Copy link
Author

Based on https://code.visualstudio.com/docs/setup/network I found that --ignore-certificate-errors does work. That is a bit of a sledgehammer though, and not really an ideal (or even slightly secure) solution.

@rzhao271
Copy link
Contributor

The Settings editor currently recommends the Copilot extension when it's not installed, which lines up with the error messages you're seeing.

I'll put up a PR that skips over showing that feature in case of networking errors.

@vscodenpa vscodenpa added the unreleased Patch has not yet been released in VS Code Insiders label Nov 21, 2023
@vscodenpa vscodenpa added this to the November 2023 milestone Nov 21, 2023
@rzhao271
Copy link
Contributor

Tomorrow's VS Code Insiders should contain the fix.

@rzhao271 rzhao271 added bug Issue identified by VS Code Team member as probable bug and removed info-needed Issue requires more information from poster unreleased Patch has not yet been released in VS Code Insiders labels Nov 21, 2023
@arvid-norlander
Copy link
Author

@rzhao271 what about the bit where it seems to ignore the root system certificates though?

It seems there were actually (at least) two bugs here:

  1. The one you fixed, where settings can't open when there are network errors
  2. The fact that a corporate proxy with correctly installed CA certificates in the system store doesn't work. Presumably it isn't picking up the system CA certificates correctly.

@ShubhamCodeMaster
Copy link

thank you very much my problem is solved after follow this step (Open VS Code disable all extensions disabled, and enable once again all extension then i am successfully able to see my settings))

@chrmarti
Copy link
Collaborator

@arvid-norlander Please see https://chromium.googlesource.com/chromium/src/+/master/docs/linux/cert_management.md#add-a-certificate on how to add a root certificate for Chromium, that also applies for Electron-based applications like VS Code.

The root certificate example is:

certutil -d sql:$HOME/.pki/nssdb -A -t "C,," -n <certificate nickname> -i <certificate filename>

@arvid-norlander
Copy link
Author

@chrmarti Thanks this works. I thought I had already added it, since I added it in Chromium. But of course on Ubuntu Chromium runs in a snap by default, so it didn't use the same store as VSCode...

@eleanorjboyd eleanorjboyd added the verification-steps-needed Steps to verify are needed for verification label Nov 29, 2023
@rzhao271 rzhao271 added verified Verification succeeded and removed verification-steps-needed Steps to verify are needed for verification labels Nov 29, 2023
@github-actions github-actions bot locked and limited conversation to collaborators Jan 5, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Issue identified by VS Code Team member as probable bug settings-editor VS Code settings editor issues verified Verification succeeded
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants