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

VS Code not working on Ubuntu when connected using XRDP. #3451

Open
hannesne opened this Issue Feb 25, 2016 · 55 comments

Comments

Projects
None yet
@hannesne
Member

hannesne commented Feb 25, 2016

Hi, it seems like the bug with either Atom or XRDP discussed in Atom issue here: atom/atom#4360 is keeping VSCode from working in Ubuntu when you connect to it with RDP.
Trying to launch the app gives the following output:

Xlib: extension "XInputExtension" missing on display ":10.0".
Xlib: extension "XInputExtension" missing on display ":10.0".
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so
libGL: Can't open configuration file /home/hannesne/.drirc: No such file or directory.
libGL: Can't open configuration file /home/hannesne/.drirc: No such file or directory.
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
bash: cannot set terminal process group (-1): Inappropriate ioctl for device
bash: no job control in this shell
Xlib: extension "XInputExtension" missing on display ":10.0".
Xlib: extension "XInputExtension" missing on display ":10.0".
[ , [Error: channel closed] ]

This happens regardless of using the MATE or LFCE desktop.
An output of GLXInfo gives the following:

libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
name of display: :10.0
display: :10 screen: 0
direct rendering: No (If you want to find out why, try setting LIBGL_DEBUG=verbose)
server glx vendor string: SGI
server glx version string: 1.2
server glx extensions:
GLX_EXT_import_context, GLX_EXT_visual_info, GLX_EXT_visual_rating
client glx vendor string: Mesa Project and SGI
client glx version string: 1.4
client glx extensions:
GLX_ARB_create_context, GLX_ARB_create_context_profile,
GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,
GLX_ARB_framebuffer_sRGB, GLX_ARB_get_proc_address, GLX_ARB_multisample,
GLX_EXT_buffer_age, GLX_EXT_create_context_es2_profile,
GLX_EXT_fbconfig_packed_float, GLX_EXT_framebuffer_sRGB,
GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info,
GLX_EXT_visual_rating, GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer,
GLX_MESA_multithread_makecurrent, GLX_MESA_query_renderer,
GLX_MESA_swap_control, GLX_OML_swap_method, GLX_OML_sync_control,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_SGI_make_current_read,
GLX_SGI_swap_control, GLX_SGI_video_sync
GLX version: 1.2
GLX extensions:
GLX_ARB_get_proc_address, GLX_EXT_import_context, GLX_EXT_visual_info,
GLX_EXT_visual_rating, GLX_MESA_multithread_makecurrent
OpenGL vendor string: Mesa project: www.mesa3d.org
OpenGL renderer string: Mesa GLX Indirect
OpenGL version string: 1.3 Mesa 4.0.4
OpenGL extensions:
GL_ARB_imaging, GL_ARB_multitexture, GL_ARB_texture_border_clamp,
GL_ARB_texture_cube_map, GL_ARB_texture_env_add,
GL_ARB_texture_env_combine, GL_ARB_texture_env_dot3,
GL_ARB_transpose_matrix, GL_EXT_abgr, GL_EXT_blend_color,
GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_draw_range_elements,
GL_EXT_multi_draw_arrays, GL_EXT_texture_env_add,
GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3,
GL_EXT_texture_lod_bias, GL_SGIS_texture_border_clamp,
GL_SUN_multi_draw_arrays

8 GLX Visuals
visual x bf lv rg d st colorbuffer sr ax dp st accumbuffer ms cav

id dep cl sp sz l ci b ro r g b a F gb bf th cl r g b a ns b eat

0x024 24 tc 1 24 0 r y . 8 8 8 0 . . 0 16 0 0 0 0 0 0 0 None
0x025 24 tc 1 24 0 r y . 8 8 8 0 . . 0 16 8 16 16 16 0 0 0 None
0x026 24 tc 1 24 0 r y . 8 8 8 8 . . 0 16 8 16 16 16 16 0 0 None
0x027 24 tc 1 24 0 r . . 8 8 8 8 . . 0 16 8 16 16 16 16 0 0 None
0x028 24 dc 1 24 0 r y . 8 8 8 0 . . 0 16 0 0 0 0 0 0 0 None
0x029 24 dc 1 24 0 r y . 8 8 8 0 . . 0 16 8 16 16 16 0 0 0 None
0x02a 24 dc 1 24 0 r y . 8 8 8 8 . . 0 16 8 16 16 16 16 0 0 None
0x02b 24 dc 1 24 0 r . . 8 8 8 8 . . 0 16 8 16 16 16 16 0 0 None

Any suggestions?

@roterdam

This comment has been minimized.

Show comment
Hide comment
@roterdam

roterdam Mar 21, 2016

Open up ''/usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0'' and remove BIG_EXTENSIONS to something else like FIG_EXTENSIONS.

sudo vi /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
s/BIG_EXTENSIONS/FIG_EXTENSIONS

This is a total hack, but it does work.

@Tyriar maybe you can put this in your release notes or something. The reason is that XRDP only works with Ubuntu MATE (or XFCE, etc.) lighter weight desktops, and there this BIG REQUEST thing doesn't seem to work.

roterdam commented Mar 21, 2016

Open up ''/usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0'' and remove BIG_EXTENSIONS to something else like FIG_EXTENSIONS.

sudo vi /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
s/BIG_EXTENSIONS/FIG_EXTENSIONS

This is a total hack, but it does work.

@Tyriar maybe you can put this in your release notes or something. The reason is that XRDP only works with Ubuntu MATE (or XFCE, etc.) lighter weight desktops, and there this BIG REQUEST thing doesn't seem to work.

@Tyriar

This comment has been minimized.

Show comment
Hide comment
@Tyriar

Tyriar Apr 4, 2016

Member

Same issue tracked in atom atom/atom#4360, here's the upstream electron issue electron/electron#2256

Member

Tyriar commented Apr 4, 2016

Same issue tracked in atom atom/atom#4360, here's the upstream electron issue electron/electron#2256

@Tyriar Tyriar added upstream bug and removed help wanted labels Apr 4, 2016

@joeaudette

This comment has been minimized.

Show comment
Hide comment
@joeaudette

joeaudette Apr 18, 2016

@roterdam I'm facing this problem with vscode 1.0.0 on ubuntu 14.4 LTS but when I try to edit the file as you indicated with vi, it says pattern not found

joeaudette commented Apr 18, 2016

@roterdam I'm facing this problem with vscode 1.0.0 on ubuntu 14.4 LTS but when I try to edit the file as you indicated with vi, it says pattern not found

@joeaudette

This comment has been minimized.

Show comment
Hide comment
@joeaudette

joeaudette Apr 18, 2016

for anyone else encountering this, I worked around this problem by uninstalling xrdp and installing tigervnc on my ubuntu box, then I installed tightvnc viewer on my windows 10 box and now when I remote in vscode works for me. rdp seems a little nicer to me than vnc so hoping maybe when ubuntu 16 LTS comes out I can change back to rdp

joeaudette commented Apr 18, 2016

for anyone else encountering this, I worked around this problem by uninstalling xrdp and installing tigervnc on my ubuntu box, then I installed tightvnc viewer on my windows 10 box and now when I remote in vscode works for me. rdp seems a little nicer to me than vnc so hoping maybe when ubuntu 16 LTS comes out I can change back to rdp

@roterdam

This comment has been minimized.

Show comment
Hide comment
@roterdam

roterdam Apr 21, 2016

@joeaudette that sucks. did you make sure it was case sensitive? vnc is not as performant. Same issue in 16.04 LTS I just tried. Damn Ubuntu. It works fine on Fedora 22.

roterdam commented Apr 21, 2016

@joeaudette that sucks. did you make sure it was case sensitive? vnc is not as performant. Same issue in 16.04 LTS I just tried. Damn Ubuntu. It works fine on Fedora 22.

@joeaudette

This comment has been minimized.

Show comment
Hide comment
@joeaudette

joeaudette Apr 22, 2016

@roterdam yes I tried lower and upper case but it could not find any match. tried also looking for BIG_REQUEST, big_request, BIG-REQUEST per the similar atom issue but no variants I tried could be found.

strangely while atom and electron bugs are still open some are saying it works fine with rdp using atom 1.5.4, so wondering what version of electron is used for vscode 1.0.0, maybe it is working in the latest version

vnc performance seems ok to me since I'm just using it on a local network, I had to futz around with display settings to get a good experience whereas rdp seemed to automatically scale the screen just right for me.

joeaudette commented Apr 22, 2016

@roterdam yes I tried lower and upper case but it could not find any match. tried also looking for BIG_REQUEST, big_request, BIG-REQUEST per the similar atom issue but no variants I tried could be found.

strangely while atom and electron bugs are still open some are saying it works fine with rdp using atom 1.5.4, so wondering what version of electron is used for vscode 1.0.0, maybe it is working in the latest version

vnc performance seems ok to me since I'm just using it on a local network, I had to futz around with display settings to get a good experience whereas rdp seemed to automatically scale the screen just right for me.

@Tyriar

This comment has been minimized.

Show comment
Hide comment
@Tyriar

Tyriar Apr 22, 2016

Member

@joeaudette I believe the latest insiders build was upgraded to Electron 0.37.6 (#5378) 2 days ago.

Member

Tyriar commented Apr 22, 2016

@joeaudette I believe the latest insiders build was upgraded to Electron 0.37.6 (#5378) 2 days ago.

@AlexZeitler

This comment has been minimized.

Show comment
Hide comment
@AlexZeitler

AlexZeitler Apr 26, 2016

Just updated to the latest Insiders build on Ubuntu 14.04. Still doesn't work via RDP.

AlexZeitler commented Apr 26, 2016

Just updated to the latest Insiders build on Ubuntu 14.04. Still doesn't work via RDP.

@groone

This comment has been minimized.

Show comment
Hide comment
@groone

groone May 8, 2016

Hack worked vscode works via xrdp in Ubuntu MATE 16.04:

  • make a backup first
  • sudo sed -i 's/BIG-REQUESTS/_IG-REQUESTS/' /usr/lib/x86_64-linux-gnu/libxcb.so.1

groone commented May 8, 2016

Hack worked vscode works via xrdp in Ubuntu MATE 16.04:

  • make a backup first
  • sudo sed -i 's/BIG-REQUESTS/_IG-REQUESTS/' /usr/lib/x86_64-linux-gnu/libxcb.so.1
@joeaudette

This comment has been minimized.

Show comment
Hide comment
@joeaudette

joeaudette May 8, 2016

@groone Thanks! will give that a try soon

joeaudette commented May 8, 2016

@groone Thanks! will give that a try soon

@knockshore

This comment has been minimized.

Show comment
Hide comment
@knockshore

knockshore May 24, 2016

@groone Thanks. it worked.

knockshore commented May 24, 2016

@groone Thanks. it worked.

@appeality

This comment has been minimized.

Show comment
Hide comment
@appeality

appeality May 29, 2016

@groone Thanks! This worked for me as well.

appeality commented May 29, 2016

@groone Thanks! This worked for me as well.

@ctaggart

This comment has been minimized.

Show comment
Hide comment
@ctaggart

ctaggart Jun 8, 2016

That worked for X2go on Debian Jessie as well. 👍

ctaggart commented Jun 8, 2016

That worked for X2go on Debian Jessie as well. 👍

@msouga

This comment has been minimized.

Show comment
Hide comment
@msouga

msouga Jun 10, 2016

Thanks a lot it worked for me too on Ubuntu 14.04 TLS

msouga commented Jun 10, 2016

Thanks a lot it worked for me too on Ubuntu 14.04 TLS

@emseedee

This comment has been minimized.

Show comment
Hide comment
@emseedee

emseedee Jun 10, 2016

Thanks - also worked for me - I can now use Atom over XRDP on Debian Jessie 8.5.0

emseedee commented Jun 10, 2016

Thanks - also worked for me - I can now use Atom over XRDP on Debian Jessie 8.5.0

@Nicholi

This comment has been minimized.

Show comment
Hide comment
@Nicholi

Nicholi Jun 14, 2016

The hack "works" (x2go via LXDE) but then seems to break other apps like VLC for me (under normal desktop login, nothing remote).

Nicholi commented Jun 14, 2016

The hack "works" (x2go via LXDE) but then seems to break other apps like VLC for me (under normal desktop login, nothing remote).

@rcarmo

This comment has been minimized.

Show comment
Hide comment
@rcarmo

rcarmo Jun 20, 2016

There is a much cleaner workaround that won't break other apps:

# make a copy of the relevant library
mkdir ~/lib
cp /usr/lib/x86_64-linux-gnu/libxcb.so.1 ~/lib
sed -i 's/BIG-REQUESTS/_IG-REQUESTS/' ~/lib/libxcb.so.1
# set the dynamic loader path to put your library first before executing VS Code
LD_LIBRARY_PATH=$HOME/lib code

Obviously, you can tweak your .desktop files and other launchers to set the environment variable solely for VS Code. Go to /usr/share/applications/code.desktop, copy it to ~/.gnome/apps (or wherever your desktop manager likes it) and change the Exec line to read something like:

Exec=sh -c "env LD_LIBRARY_PATH\=\$HOME/lib  /usr/share/code/code" %U

The sh -c makes sure the command is evaluated and variables expanded, and env sets the variable itself. This is not very pretty, but not all desktop managers handle environment variables inside .desktop files the same way, so it's a sort of belt and suspenders approach.

I just tested this on Xenial (Ubuntu 16.04) inside vnc4server. Of course the real issue needs to be fixed upstream in Electron (I have to wonder why they don't have cleaner fallbacks for lack of graphics acceleration...)

rcarmo commented Jun 20, 2016

There is a much cleaner workaround that won't break other apps:

# make a copy of the relevant library
mkdir ~/lib
cp /usr/lib/x86_64-linux-gnu/libxcb.so.1 ~/lib
sed -i 's/BIG-REQUESTS/_IG-REQUESTS/' ~/lib/libxcb.so.1
# set the dynamic loader path to put your library first before executing VS Code
LD_LIBRARY_PATH=$HOME/lib code

Obviously, you can tweak your .desktop files and other launchers to set the environment variable solely for VS Code. Go to /usr/share/applications/code.desktop, copy it to ~/.gnome/apps (or wherever your desktop manager likes it) and change the Exec line to read something like:

Exec=sh -c "env LD_LIBRARY_PATH\=\$HOME/lib  /usr/share/code/code" %U

The sh -c makes sure the command is evaluated and variables expanded, and env sets the variable itself. This is not very pretty, but not all desktop managers handle environment variables inside .desktop files the same way, so it's a sort of belt and suspenders approach.

I just tested this on Xenial (Ubuntu 16.04) inside vnc4server. Of course the real issue needs to be fixed upstream in Electron (I have to wonder why they don't have cleaner fallbacks for lack of graphics acceleration...)

@k-y

This comment has been minimized.

Show comment
Hide comment
@k-y

k-y Jun 20, 2016

Worked on CentOS 7 on x2go ; TYVM for this tip!

k-y commented Jun 20, 2016

Worked on CentOS 7 on x2go ; TYVM for this tip!

@AlexZeitler

This comment has been minimized.

Show comment
Hide comment
@AlexZeitler

AlexZeitler Jul 3, 2016

@rcarmo Thanks for the tip but it doesn't work (the tips above don't work neither). XRDP to Ubuntu Mate on Ubuntu Server running in AWS.

AlexZeitler commented Jul 3, 2016

@rcarmo Thanks for the tip but it doesn't work (the tips above don't work neither). XRDP to Ubuntu Mate on Ubuntu Server running in AWS.

@AlexZeitler

This comment has been minimized.

Show comment
Hide comment
@AlexZeitler

AlexZeitler Jul 3, 2016

I just located the directory using dpkg -L visual-studio-code which pointed me to /usr/share/code.
After copying the modified version of libxcb.so.1 into that directory, I was able to start Code (but only works if I start it from /usr/share/code not by just typing code everywhere.

AlexZeitler commented Jul 3, 2016

I just located the directory using dpkg -L visual-studio-code which pointed me to /usr/share/code.
After copying the modified version of libxcb.so.1 into that directory, I was able to start Code (but only works if I start it from /usr/share/code not by just typing code everywhere.

@MaximoTrinidad

This comment has been minimized.

Show comment
Hide comment
@MaximoTrinidad

MaximoTrinidad Sep 19, 2016

  • VSCode Version: 1.5.2 Linux deb version
  • OS Version: Windows 10 Pro Insider Preview
  • Remote Connection to: Ubuntu 16.04.1 LTS Desktop
  • Linux xrdp: Xfce-session

Steps to Reproduce:

  1. On Windos 10, open Remote Desktop application
  2. Connect to Linux machine using IP Address provided.
  3. At the Xfec session, click on "Applications | Development | Visual Studio Code"

Results:
Nothing opens

Provide VS Code Verbose results:
maxt@orion:~$ code --verbose
Xlib: extension "XInputExtension" missing on display ":10.0".
(4:29:39 PM) ### VSCode main.js ###
(4:29:40 PM) /usr/share/code/resources/app { _: [],
paths: [],
performance: false,
verbose: true,
debugPluginHost: undefined,
debugBrkPluginHost: undefined,
logExtensionHostCommunication: false,
'new-window': false,
'reuse-window': false,
goto: false,
diff: false,
extensionHomePath: undefined,
extensionDevelopmentPath: undefined,
extensionTestsPath: undefined,
'disable-extensions': false,
locale: undefined,
wait: false }
Xlib: extension "XInputExtension" missing on display ":10.0".
Xlib: extension "XInputExtension" missing on display ":10.0".

Try Workaround from:
#3451
#9016
#11873

Changing both '/usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0' and '/usr/lib/x86_64-linux-gnu/libxcb.so.1'
information: 's/BIG-REQUESTS/_IG-REQUESTS/' -> Didn't work!

This issue shouldn't be resolved with a workaround. It VS Code should work like JetBrains Python Editor "PC PyCharm" in a xrdp session.

pycharm_2016-09-18_18-10-30

See attached image:
vscode_notremoting_2016-09-18_17-43-13

MaximoTrinidad commented Sep 19, 2016

  • VSCode Version: 1.5.2 Linux deb version
  • OS Version: Windows 10 Pro Insider Preview
  • Remote Connection to: Ubuntu 16.04.1 LTS Desktop
  • Linux xrdp: Xfce-session

Steps to Reproduce:

  1. On Windos 10, open Remote Desktop application
  2. Connect to Linux machine using IP Address provided.
  3. At the Xfec session, click on "Applications | Development | Visual Studio Code"

Results:
Nothing opens

Provide VS Code Verbose results:
maxt@orion:~$ code --verbose
Xlib: extension "XInputExtension" missing on display ":10.0".
(4:29:39 PM) ### VSCode main.js ###
(4:29:40 PM) /usr/share/code/resources/app { _: [],
paths: [],
performance: false,
verbose: true,
debugPluginHost: undefined,
debugBrkPluginHost: undefined,
logExtensionHostCommunication: false,
'new-window': false,
'reuse-window': false,
goto: false,
diff: false,
extensionHomePath: undefined,
extensionDevelopmentPath: undefined,
extensionTestsPath: undefined,
'disable-extensions': false,
locale: undefined,
wait: false }
Xlib: extension "XInputExtension" missing on display ":10.0".
Xlib: extension "XInputExtension" missing on display ":10.0".

Try Workaround from:
#3451
#9016
#11873

Changing both '/usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0' and '/usr/lib/x86_64-linux-gnu/libxcb.so.1'
information: 's/BIG-REQUESTS/_IG-REQUESTS/' -> Didn't work!

This issue shouldn't be resolved with a workaround. It VS Code should work like JetBrains Python Editor "PC PyCharm" in a xrdp session.

pycharm_2016-09-18_18-10-30

See attached image:
vscode_notremoting_2016-09-18_17-43-13

@MaximoTrinidad

This comment has been minimized.

Show comment
Hide comment
@MaximoTrinidad

MaximoTrinidad Sep 20, 2016

In summary! I was able to make it work in Ubuntu 16.04.1 remote session.

There are two files I changed which I don't know which is the correct one:
libxcb.so.1 and libxcb.so.1.1.0

Here are the steps for the workaround:

  1. Using (sudo su) nautilus, Search and found files on folder "/usr/lib/x86_64-linux-gnu"
  2. Backup both files to a backup folder.
  3. Then, execute the following command (sudo su):
  •  sudo sed -i 's/BIG-REQUESTS/_IG-REQUESTS/' /usr/lib/x86_64-linux-gnu/libxcb.so.1
    
  •  sudo sed -i 's/BIG-REQUESTS/_IG-REQUESTS/' /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
    
  1. Copy both files to "/usr/share/code"
  2. In Windows, open Remote Desktop connection, assign Linux IP-Address.
  3. In Linux Remote session, click on the Applications menu, go to Development, then Visual Studio Code and the application open.

Honestly, there most be a better way to do this but it works.
xrdp_code-session

MaximoTrinidad commented Sep 20, 2016

In summary! I was able to make it work in Ubuntu 16.04.1 remote session.

There are two files I changed which I don't know which is the correct one:
libxcb.so.1 and libxcb.so.1.1.0

Here are the steps for the workaround:

  1. Using (sudo su) nautilus, Search and found files on folder "/usr/lib/x86_64-linux-gnu"
  2. Backup both files to a backup folder.
  3. Then, execute the following command (sudo su):
  •  sudo sed -i 's/BIG-REQUESTS/_IG-REQUESTS/' /usr/lib/x86_64-linux-gnu/libxcb.so.1
    
  •  sudo sed -i 's/BIG-REQUESTS/_IG-REQUESTS/' /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
    
  1. Copy both files to "/usr/share/code"
  2. In Windows, open Remote Desktop connection, assign Linux IP-Address.
  3. In Linux Remote session, click on the Applications menu, go to Development, then Visual Studio Code and the application open.

Honestly, there most be a better way to do this but it works.
xrdp_code-session

@wirecat

This comment has been minimized.

Show comment
Hide comment
@wirecat

wirecat Sep 22, 2016

@rcarmo This worked perfectly on Ubuntu 16.04 and IMO the best workaround. Modifying that file globally broke my wireshark install, but this doesn't and is simple to do. Thank you!

wirecat commented Sep 22, 2016

@rcarmo This worked perfectly on Ubuntu 16.04 and IMO the best workaround. Modifying that file globally broke my wireshark install, but this doesn't and is simple to do. Thank you!

@rcarmo

This comment has been minimized.

Show comment
Hide comment
@rcarmo

rcarmo Sep 24, 2016

@wirecat : thanks. I've just added a few more notes to my original comment. I don't know why it didn't work for other people, but I've used this around a dozen times, since I routinely deploy new development VMs and have the whole thing scripted by now. Hasn't failed me yet.

rcarmo commented Sep 24, 2016

@wirecat : thanks. I've just added a few more notes to my original comment. I don't know why it didn't work for other people, but I've used this around a dozen times, since I routinely deploy new development VMs and have the whole thing scripted by now. Hasn't failed me yet.

@MaximoTrinidad

This comment has been minimized.

Show comment
Hide comment
@MaximoTrinidad

MaximoTrinidad Sep 24, 2016

FYI.. The image may not be clear enough. I'm demonstrating Remote Desktop connection from within Windows 2016 VM to my Physical Ubuntu laptop. I'm using Xfce Session which I couldn't make VS Code to work via xrdp unless I use the above set of instructions.

VS Code in Ubuntu works Great!

:)

MaximoTrinidad commented Sep 24, 2016

FYI.. The image may not be clear enough. I'm demonstrating Remote Desktop connection from within Windows 2016 VM to my Physical Ubuntu laptop. I'm using Xfce Session which I couldn't make VS Code to work via xrdp unless I use the above set of instructions.

VS Code in Ubuntu works Great!

:)

@lucdekens

This comment has been minimized.

Show comment
Hide comment
@lucdekens

lucdekens Nov 14, 2016

@rcarmo Your fix works for me.
Thanks

lucdekens commented Nov 14, 2016

@rcarmo Your fix works for me.
Thanks

alexperovich added a commit to alexperovich/azure-devtestlab-artifacts that referenced this issue Nov 15, 2016

@CallumJHays

This comment has been minimized.

Show comment
Hide comment
@CallumJHays

CallumJHays Nov 21, 2016

Thanks @rcarmo. Worked with no issues.

CallumJHays commented Nov 21, 2016

Thanks @rcarmo. Worked with no issues.

@Tyriar

This comment has been minimized.

Show comment
Hide comment
@Tyriar

Tyriar Nov 21, 2016

Member

This is the upstream issue if anyone wants to look into it electron/electron#2256, I'd love to get it fixed in Electron instead of relying on this hack.

Member

Tyriar commented Nov 21, 2016

This is the upstream issue if anyone wants to look into it electron/electron#2256, I'd love to get it fixed in Electron instead of relying on this hack.

@Tyriar Tyriar added the help wanted label Nov 21, 2016

@laygr

This comment has been minimized.

Show comment
Hide comment
@laygr

laygr Jan 7, 2017

@rcarmo 's solution works for me.
I'm using on the remote: MATE, x2go server, CentOS 7
and on the client: OS X, x2go client, quartz

It also works with XFCE if you don't have MATE

laygr commented Jan 7, 2017

@rcarmo 's solution works for me.
I'm using on the remote: MATE, x2go server, CentOS 7
and on the client: OS X, x2go client, quartz

It also works with XFCE if you don't have MATE

@Peluko

This comment has been minimized.

Show comment
Hide comment
@Peluko

Peluko Mar 17, 2017

For me it's working out of the box, but performance is bad. I'm using Ubuntu 16.04 through X11rdp. I've been using Emacs under Xfce flawlessly, with top performance. I move thru text, scrolling, etc perfectly, almost like working on local. But with VSCode (same rdp session, Emacs/VSCode side by side) I got a lot of redraw flickering and cursor jump, barely usable. CPU is at 40% max, so it's not a machine performance problem.

Peluko commented Mar 17, 2017

For me it's working out of the box, but performance is bad. I'm using Ubuntu 16.04 through X11rdp. I've been using Emacs under Xfce flawlessly, with top performance. I move thru text, scrolling, etc perfectly, almost like working on local. But with VSCode (same rdp session, Emacs/VSCode side by side) I got a lot of redraw flickering and cursor jump, barely usable. CPU is at 40% max, so it's not a machine performance problem.

@javierglozano

This comment has been minimized.

Show comment
Hide comment
@javierglozano

javierglozano Mar 29, 2017

I tried @MaximoTrinidad approach in my Ubuntu xenial VM in Azure with Mate Desktop and everything worked fine!!

javierglozano commented Mar 29, 2017

I tried @MaximoTrinidad approach in my Ubuntu xenial VM in Azure with Mate Desktop and everything worked fine!!

@Peluko

This comment has been minimized.

Show comment
Hide comment
@Peluko

Peluko Mar 29, 2017

@javierglozano Do you get good performance? For me VSCode works, but UI performance is too bad, unusable. There is a notable lag between key presses and screen actions. Within the same session, Emacs performance is perfect.

Peluko commented Mar 29, 2017

@javierglozano Do you get good performance? For me VSCode works, but UI performance is too bad, unusable. There is a notable lag between key presses and screen actions. Within the same session, Emacs performance is perfect.

@javierglozano

This comment has been minimized.

Show comment
Hide comment
@javierglozano

javierglozano Mar 30, 2017

@Peluko I would say that Code performance is at least as good/bad as my desktop performance. Now I'm using xfce with a D3_V2 VM and Code performs acceptable (Chromium performance when refreshing canvas is more than worse)

javierglozano commented Mar 30, 2017

@Peluko I would say that Code performance is at least as good/bad as my desktop performance. Now I'm using xfce with a D3_V2 VM and Code performs acceptable (Chromium performance when refreshing canvas is more than worse)

@bennettpeter

This comment has been minimized.

Show comment
Hide comment
@bennettpeter

bennettpeter Apr 10, 2017

If you want to avoid the risk of changing system libraries -
In your home directory:
mkdir lib
cp /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 lib/
cd lib
ln -s libxcb.so.1.1.0 libxcb.so
ln -s libxcb.so.1.1.0 libxcb.so.1
sed -i 's/BIG-REQUESTS/_IG-REQUESTS/' libxcb.so.1.1.0

Then to run code - in a terminal session -
export LD_LIBRARY_PATH=$HOME/lib
code

You can also change your desktop file for code to set LD_LIBRARY_PATH before running code

bennettpeter commented Apr 10, 2017

If you want to avoid the risk of changing system libraries -
In your home directory:
mkdir lib
cp /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 lib/
cd lib
ln -s libxcb.so.1.1.0 libxcb.so
ln -s libxcb.so.1.1.0 libxcb.so.1
sed -i 's/BIG-REQUESTS/_IG-REQUESTS/' libxcb.so.1.1.0

Then to run code - in a terminal session -
export LD_LIBRARY_PATH=$HOME/lib
code

You can also change your desktop file for code to set LD_LIBRARY_PATH before running code

@ghost

This comment has been minimized.

Show comment
Hide comment
@ghost

ghost Apr 23, 2017

The libgconf-2-4 package might be missing preventing the application to launch.
This might help:
sudo apt-get install libgconf-2-4

ghost commented Apr 23, 2017

The libgconf-2-4 package might be missing preventing the application to launch.
This might help:
sudo apt-get install libgconf-2-4

@Tyriar

This comment has been minimized.

Show comment
Hide comment
@Tyriar

Tyriar Apr 23, 2017

Member

The libgconf-2-4 package might be missing preventing the application to launch.

This was added as a dependency in the .deb recently (coming in 1.12).

Member

Tyriar commented Apr 23, 2017

The libgconf-2-4 package might be missing preventing the application to launch.

This was added as a dependency in the .deb recently (coming in 1.12).

@medeng

This comment has been minimized.

Show comment
Hide comment
@medeng

medeng May 17, 2017

goone, you are a stud. the SED line works for the ubuntu 14.04 GUI.
sudo sed -i 's/BIG-REQUESTS/_IG-REQUESTS/' /usr/lib/x86_64-linux-gnu/libxcb.so.1

medeng commented May 17, 2017

goone, you are a stud. the SED line works for the ubuntu 14.04 GUI.
sudo sed -i 's/BIG-REQUESTS/_IG-REQUESTS/' /usr/lib/x86_64-linux-gnu/libxcb.so.1

@jnwu

This comment has been minimized.

Show comment
Hide comment
@jnwu

jnwu Jun 27, 2017

@groone exactly what I was looking for, thanks!

jnwu commented Jun 27, 2017

@groone exactly what I was looking for, thanks!

@mariasmo

This comment has been minimized.

Show comment
Hide comment
@mariasmo

mariasmo Jul 5, 2017

hi

any permanent fix for this issue yet??
i am on debian jessie trying to connect over relavnc viewer
i used the hack by @groone . it works inconsistently. sometimes it works and some times it doesnt. the vscode just freezes

i wish there is more permanent solution

other applications like ANdroid studio work perfectly without any issues.

any suggestions?

thanks

mariasmo commented Jul 5, 2017

hi

any permanent fix for this issue yet??
i am on debian jessie trying to connect over relavnc viewer
i used the hack by @groone . it works inconsistently. sometimes it works and some times it doesnt. the vscode just freezes

i wish there is more permanent solution

other applications like ANdroid studio work perfectly without any issues.

any suggestions?

thanks

@kovalewvladimir

This comment has been minimized.

Show comment
Hide comment
@kovalewvladimir

kovalewvladimir Aug 8, 2017

Hello.
It works for XFCE x2go (xubuntu 16.04)

sudo cp /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 /usr/share/code/libxcb.so.1
sudo sed -i 's/BIG-REQUESTS/_IG-REQUESTS/' /usr/share/code/libxcb.so.1

kovalewvladimir commented Aug 8, 2017

Hello.
It works for XFCE x2go (xubuntu 16.04)

sudo cp /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 /usr/share/code/libxcb.so.1
sudo sed -i 's/BIG-REQUESTS/_IG-REQUESTS/' /usr/share/code/libxcb.so.1

@H3lly

This comment has been minimized.

Show comment
Hide comment
@H3lly

H3lly Feb 19, 2018

I don't have the rights to exectu this command :/ has someone another idea ?

H3lly commented Feb 19, 2018

I don't have the rights to exectu this command :/ has someone another idea ?

@TsuyoshiUshio

This comment has been minimized.

Show comment
Hide comment
@TsuyoshiUshio

TsuyoshiUshio Mar 10, 2018

I've done to resolve the dependency and the hack workaround. However, I still have an error. I use MobaXterm as X Server and my machine is Surface book 2 15 inch. I still have this error.

[552:0309/200728.635265:ERROR:sandbox_linux.cc(343)] InitializeSandbox() called
 with multiple threads in process gpu-process.
$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.3 LTS"
ver

Microsoft Windows [Version 10.0.16299.248]

TsuyoshiUshio commented Mar 10, 2018

I've done to resolve the dependency and the hack workaround. However, I still have an error. I use MobaXterm as X Server and my machine is Surface book 2 15 inch. I still have this error.

[552:0309/200728.635265:ERROR:sandbox_linux.cc(343)] InitializeSandbox() called
 with multiple threads in process gpu-process.
$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.3 LTS"
ver

Microsoft Windows [Version 10.0.16299.248]
@MaximoTrinidad

This comment has been minimized.

Show comment
Hide comment
@MaximoTrinidad

MaximoTrinidad Mar 10, 2018

Hi @TsuyoshiUshio,

I would recommend to try using VcXsrv application. It works work me on Windows 10.
You can install it from Cocholatey site:

choco install VcXsrv

Of course, you'll need to install the Chocolatey Package Management in Windows:
https://chocolatey.org/

:)

MaximoTrinidad commented Mar 10, 2018

Hi @TsuyoshiUshio,

I would recommend to try using VcXsrv application. It works work me on Windows 10.
You can install it from Cocholatey site:

choco install VcXsrv

Of course, you'll need to install the Chocolatey Package Management in Windows:
https://chocolatey.org/

:)

@augustincalin

This comment has been minimized.

Show comment
Hide comment
@augustincalin

augustincalin Apr 12, 2018

For Raspberry Pi 3 B+
First find libxcb.so.1 location ( for me this is /usr/lib/arm-linux-gnueabihf )
Then:

mkdir ~/lib
cp /usr/lib/arm-linux-gnueabihf/libxcb.so.1 ~/lib
sed -i 's/BIG-REQUESTS/_IG-REQUESTS/' ~/lib/libxcb.so.1
sudo cp ~/lib/libxcb.so.1 /usr/share/code-oss 

augustincalin commented Apr 12, 2018

For Raspberry Pi 3 B+
First find libxcb.so.1 location ( for me this is /usr/lib/arm-linux-gnueabihf )
Then:

mkdir ~/lib
cp /usr/lib/arm-linux-gnueabihf/libxcb.so.1 ~/lib
sed -i 's/BIG-REQUESTS/_IG-REQUESTS/' ~/lib/libxcb.so.1
sudo cp ~/lib/libxcb.so.1 /usr/share/code-oss 
@jxmai

This comment has been minimized.

Show comment
Hide comment
@jxmai

jxmai Jun 14, 2018

A lot of similar issues have been marked as duplicate and redirected to here, but this ticket is pointing to an upstream ticket electron/electron#2256 which was closed due to Closing due to abandonment. (Not sure why abandoned that ticket). This deadlock situation might make this ticket open forever.

jxmai commented Jun 14, 2018

A lot of similar issues have been marked as duplicate and redirected to here, but this ticket is pointing to an upstream ticket electron/electron#2256 which was closed due to Closing due to abandonment. (Not sure why abandoned that ticket). This deadlock situation might make this ticket open forever.

@bennettpeter

This comment has been minimized.

Show comment
Hide comment
@bennettpeter

bennettpeter Jun 14, 2018

This problem seems to have been fixed in Ubuntu 18.04. Since installing 18.04 I have been using code with xrdp without any patch and with no problems, xrdp in 18.04 is changed and that may have fixed it.

bennettpeter commented Jun 14, 2018

This problem seems to have been fixed in Ubuntu 18.04. Since installing 18.04 I have been using code with xrdp without any patch and with no problems, xrdp in 18.04 is changed and that may have fixed it.

@MaximoTrinidad

This comment has been minimized.

Show comment
Hide comment
@MaximoTrinidad

MaximoTrinidad Jun 14, 2018

@bennettpeter

Thanks for the previous comment on running VS Code in Ubuntu 18.04. I haven't try yet!
:)

MaximoTrinidad commented Jun 14, 2018

@bennettpeter

Thanks for the previous comment on running VS Code in Ubuntu 18.04. I haven't try yet!
:)

@23pret

This comment has been minimized.

Show comment
Hide comment
@23pret

23pret Jul 2, 2018

Hi i am having the same issue on centos. Anyone knows how to solve?

23pret commented Jul 2, 2018

Hi i am having the same issue on centos. Anyone knows how to solve?

@vvh007

This comment has been minimized.

Show comment
Hide comment
@vvh007

vvh007 Jul 4, 2018

@roterdam & @groone,

Thanks a lot! That trick worked for me on ubuntu 16.04

vvh007 commented Jul 4, 2018

@roterdam & @groone,

Thanks a lot! That trick worked for me on ubuntu 16.04

@ddwolf

This comment has been minimized.

Show comment
Hide comment
@ddwolf

ddwolf Jul 19, 2018

All the solutions do not works for me...16.04 xubuntu

ddwolf commented Jul 19, 2018

All the solutions do not works for me...16.04 xubuntu

@marklester

This comment has been minimized.

Show comment
Hide comment
@marklester

marklester Aug 9, 2018

I would be nice if this issued was fixed.

marklester commented Aug 9, 2018

I would be nice if this issued was fixed.

@bennettpeter

This comment has been minimized.

Show comment
Hide comment
@bennettpeter

bennettpeter Aug 9, 2018

It is fixed in Ubuntu 18.04.

bennettpeter commented Aug 9, 2018

It is fixed in Ubuntu 18.04.

@marklester

This comment has been minimized.

Show comment
Hide comment
@marklester

marklester Aug 9, 2018

My issue is with centos 7. I saw other comment having that issue in this ticket and commented because the ticket is still open.

marklester commented Aug 9, 2018

My issue is with centos 7. I saw other comment having that issue in this ticket and commented because the ticket is still open.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment