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

Live Share not doing anything on linux #4646

Closed
KTibow opened this issue Apr 24, 2022 · 49 comments
Closed

Live Share not doing anything on linux #4646

KTibow opened this issue Apr 24, 2022 · 49 comments
Assignees

Comments

@KTibow
Copy link

KTibow commented Apr 24, 2022

Describe what happened:
Live Share basically isn't doing anything. Although it's installed and shows in the left panel and command palette, the buttons in the left panel don't work and the command palette gives a "command liveshare.start not found". I've tried deleting misc stuff to no avail.
What was your system configuration?
Product and Version [VS/VSCode]: VS Code latest 1.66.2
OS Version[macOS/Windows]: Ubuntu 22.04
Live Share Extension Version: v1.0.5527
Target Platform or Language [e.g. Node.js]: Website, not relevant

Steps to Reproduce / Scenario:
Not quite sure to put here? I guess I'll just restate

Although it's installed and shows in the left panel and command palette, the buttons in the left panel don't work and the command palette gives a "command liveshare.start not found".

Please attach logs to this issue:
loggg.zip
You can access them via the Live Share: Export Logs command from the command palette (ctrl + shift + p) and attach them to this issue

Screenshots
I think I captured a lot in this screenshot...
image

@ghost
Copy link

ghost commented Apr 25, 2022

I have exactly the same issue on a fresh install of Ubuntu 22.04. Worked perfectly on 20.04. On 22.04 it's a new VS Code installation with all settings and extensions being synced from the 20.04 installation. The sync has been deactivated as of now.

Uninstalling and reinstalling the extension does nothing useful, nor does the "repair" command (which at least starts, though).

Perhaps Ubuntu 22.04 is the culprit?

@micahsoftdotexe
Copy link

I am also having this issue on Arch Linux as well.

@ByPaco10
Copy link

ByPaco10 commented Apr 26, 2022

Had exactly the same issue, comented on #180, try to install another libicu package, it might be the cause of the problem

(after a fresh install of my old libicu package it showed me this error, i had to install another one)

@ghost
Copy link

ghost commented Apr 26, 2022

Had exactly the same issue, comented on #180, try to install another libicu package, it might be the cause of the problem

This doesn't seem to be the problem on Ubuntu 22.04, as currently there is only one amd64 libicu package available (libicu70 / 70.1-2).

@mhaessig
Copy link

On Arch Linux installing icu69 from AUR solved the problem for me for the extension on visual-studio-code-bin.

@ekaley
Copy link

ekaley commented Apr 28, 2022

this is not an available fix for ubuntu ^ just as a fyi for anyone else here

@Barbiero
Copy link

I've enabled debug diagnostics and out for liveshare on an Ubuntu 22.04 installation and got the following:

[Client I] Extension, IDE, OS : VSLS/1.0.5527 VSCode/1.66.2 Linux/5.15.0-27-generic
[Client I] Passed version check for Linux: found 5.15.0-27-generic
[Client.Rpc V] RPCClient.init retryCount:0 currentRetryInterval:0
[Debug.Rpc.Host V] TrackDebugManager created
[Client.Rpc V] Agent connection not completed: Error: connect ECONNREFUSED /tmp/CoreFxPipe_vscode.c27740359df36ed4371e6c2d997613d7; Retrying...
[Client.Rpc V] RPCClient.init retryCount:1 currentRetryInterval:100
[Client.Agent V] Agent lock on:</<redacte/<redacte.lock>
[Client.Agent I] starting agent with pipe:vscode.c27740359df36ed4371e6c2d997613d7
[Client.Agent I] signalR service -> uri:https://signlr-prod.core.vsengsaas.visualstudio.com/api/signalr/signalrhub
[Client.Agent V] Finished agent startup...
[Client.Agent V] Agent unlocked
[Client.Rpc I] Agent connection success - net.pipe://localhost/vscode.c27740359df36ed4371e6c2d997613d7
[Client.Rpc V] finish initialize agent session with rpcConnectId:null hostSessionId:1
[Client.Rpc.Auth V] < version.exchangeVersions()
[Client.Rpc.Auth V] > version.exchangeVersions() succeeded t:14.0
[Client I] Client version: 1.0.5527 (VSLS/2.2), agent version: 1.0.5527.20886 (VSLS/2.2)
[Client.Rpc.Auth V] < version.exchangeSettings()
[Client.Rpc.Auth V] > version.exchangeSettings() succeeded t:12.0
[Client.Rpc V] < telemetry.initialize()
[Client.Agent I] No usable version of libssl was found
[Client.Agent I] Aborted (core dumped)
[Client.Agent I] Agent terminated with exit code: 0 and signal null: 
[Client.Rpc I] RPC connection closed. disposed: "false"
[Client.Rpc V] disposing reason: 'Error: RPC connection closed.', disposing 0 objects
[Client.Rpc E] > telemetry.initialize() error: undefined

In particular, note this line:

[Client.Agent I] No usable version of libssl was found

in my system, libssl v3 is installed:

❯ apt list "libssl*" --installed
Listing... Done
libssl-dev/jammy,now 3.0.2-0ubuntu1 amd64 [installed]
libssl3/jammy,now 3.0.2-0ubuntu1 amd64 [installed,automatic]
libssl3/jammy,now 3.0.2-0ubuntu1 i386 [installed,automatic]

which means that liveshare is probably not compatible with this version of libssl, and should probably be updated to reflect that. docs/reference/linux.md says that libssl1.0 is required for this extension, but it is not available in ubuntu jammy repositories.

Thing is, there's not even an error message for this since openssl is correctly installed in my sytem(v3.0.2, same as libssl) so the linux-prereqs.sh script does not even report a problem here.

hopefully this helps someone figure out how to fix this problem

@garf-real
Copy link

garf-real commented May 2, 2022

I might have found a temporary workaround. It started working for me after I installed libssl1.1 from the impish-security repo.

Here are the commands:

echo "deb http://security.ubuntu.com/ubuntu impish-security main" | sudo tee /etc/apt/sources.list.d/impish-security.list
sudo apt update
sudo apt install libssl1.1

@alyssajotice
Copy link
Contributor

Hey everyone, sorry about this issue and thanks for your patience. I was able to repro this today. When the Live Share buttons don't work, this indicates that the agent is not activated. It should auto-activate, but if it doesn't, we can try to start it manually. You can navigate to the vsls-agent executable by finding it in the .vscode-server/extensions/ms-vsliveshare.{VERSION}/dotnet_modules folder. When I recently installed it this morning, it was in my root folder.

When I tried running the executable, it was missing dependencies, which led me to discover that dotnet is not supported for Ubuntu 22.04. This appears to be the reason Live Share is not working. Here is the issue tracking that release: dotnet/core#7038.

Hopefully this provides some helpful context about the issue. Feel free to use other supported versions of Ubuntu in the meantime. For future reference, here is our information about Live Share for Linux and the dependencies that are needed. And thanks to everyone helping provide workarounds.

In the meantime, I will continue to evaluate the workarounds, and if we find one that works, we can add it to the installation script.

@amateur-dev
Copy link

I might have found a temporary workaround. It started working for me after I installed libssl1.1 from the impish-security repo.

Here are the commands:

echo "deb http://security.ubuntu.com/ubuntu impish-security main" | sudo tee /etc/apt/sources.list.d/impish-security.list
sudo apt update
sudo apt install libssl1.1

This one works. Thank you @gorfeelt

@noobsmatr619
Copy link

noobsmatr619 commented May 3, 2022

I might have found a temporary workaround. It started working for me after I installed libssl1.1 from the impish-security repo.

Here are the commands:

echo "deb http://security.ubuntu.com/ubuntu impish-security main" | sudo tee /etc/apt/sources.list.d/impish-security.list
sudo apt update
sudo apt install libssl1.1

live saver, this works 👍 thanks

@ekaley
Copy link

ekaley commented May 3, 2022

Hey everyone, sorry about this issue and thanks for your patience. I was able to repro this today. When the Live Share buttons don't work, this indicates that the agent is not activated. It should auto-activate, but if it doesn't, we can try to start it manually. You can navigate to the vsls-agent executable by finding it in the .vscode-server/extensions/ms-vsliveshare.{VERSION}/dotnet_modules folder. When I recently installed it this morning, it was in my root folder.

When I tried running the executable, it was missing dependencies, which led me to discover that dotnet is not supported for Ubuntu 22.04. This appears to be the reason Live Share is not working. Here is the issue tracking that release: dotnet/core#7038.

Hopefully this provides some helpful context about the issue. Feel free to use other supported versions of Ubuntu in the meantime. For future reference, here is our information about Live Share for Linux and the dependencies that are needed. And thanks to everyone helping provide workarounds.

In the meantime, I will continue to evaluate the workarounds, and if we find one that works, we can add it to the installation script.

based on the dotnet issue linked i think "dotnet is not supported on ubunut 22.04" is inaccurate. they state dotnet(core) 3.1 and net 5 arent supported net6+ will be supported.

So it looks like the solution has to be update liveshare deps to work with dotnet 6+ for any OS that ships with openssl3 by default

looks like this will come to a head (all the above workarounds will fall out of date) next september based on release info from openssl directly https://www.openssl.org/source/

@jfcavalcante
Copy link

I might have found a temporary workaround. It started working for me after I installed libssl1.1 from the impish-security repo.

Here are the commands:

echo "deb http://security.ubuntu.com/ubuntu impish-security main" | sudo tee /etc/apt/sources.list.d/impish-security.list
sudo apt update
sudo apt install libssl1.1

This one did it for me, thanks for sharing the solution.

@alyssajotice
Copy link
Contributor

Hi all, I updated the installation script to add libssl1.1 for Ubuntu. This fixed the problem for me when I installed a fresh Ubuntu 22.04, installed Live Share, then ran the script. Thanks for all the contributions!

Here is a link to the command and script: https://docs.microsoft.com/en-us/visualstudio/liveshare/reference/linux#install-linux-prerequisites.

@dermasmid
Copy link

i tried running the script but it failed with E: Package 'libssl1.1' has no installation candidate on Ubuntu 22.04.
here's the full logs


(*) Updating package lists...
Hit:1 https://download.docker.com/linux/ubuntu focal InRelease
Hit:2 http://ppa.launchpad.net/openrazer/stable/ubuntu jammy InRelease                                                                      
Hit:3 http://packages.microsoft.com/repos/code stable InRelease                                                                             
Hit:4 https://deb.nodesource.com/node_16.x focal InRelease                                                                                  
Hit:5 http://ppa.launchpad.net/polychromatic/stable/ubuntu jammy InRelease                                      
Hit:6 http://archive.ubuntu.com/ubuntu jammy InRelease                                    
Hit:7 https://dl.google.com/linux/chrome/deb stable InRelease       
Hit:8 https://packages.cloud.google.com/apt cloud-sdk InRelease
Hit:9 http://archive.ubuntu.com/ubuntu jammy-updates InRelease
Hit:10 http://archive.ubuntu.com/ubuntu jammy-backports InRelease
Hit:11 http://archive.ubuntu.com/ubuntu jammy-security InRelease
Reading package lists... Done

(*) Verifying .NET Core dependencies...
Reading package lists...
Building dependency tree...
Reading state information...
libicu70 is already the newest version (70.1-2).
libicu70 set to manually installed.
libkrb5-3 is already the newest version (1.19.2-2).
libkrb5-3 set to manually installed.
zlib1g is already the newest version (1:1.2.11.dfsg-2ubuntu9).
zlib1g set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
(*) openssl already installed.
Reading package lists...
Building dependency tree...
Reading state information...
Package libssl1.1 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'libssl1.1' has no installation candidate

(*) Verifying keyring dependencies...
Reading package lists...
Building dependency tree...
Reading state information...
gnome-keyring is already the newest version (40.0-3ubuntu2).
gnome-keyring set to manually installed.
libsecret-1-0 is already the newest version (0.20.5-2).
libsecret-1-0 set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

(*) Verifying browser integration dependencies...
Reading package lists...
Building dependency tree...
Reading state information...
desktop-file-utils is already the newest version (0.26-1ubuntu3).
desktop-file-utils set to manually installed.
x11-utils is already the newest version (7.7+5build2).
x11-utils set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

(*) Success!```

@ghost
Copy link

ghost commented May 11, 2022

I am also unable to install libssl1.1 on Ubuntu 22.04 Desktop, as it is not available as an install candidate. Standard (and rather fresh) install, universe and multiverse are enabled, system is completely up-to-date. The install script linked by @alyssajotice produces the same output as shown by @dermasmid.

Not sure why libssl1.1 seems to be available for some installs but not for others?

@Hydrog3n
Copy link

@frank-straetz hello, did you well add impish-security in your apt source ?

#4646 (comment)

@ghost
Copy link

ghost commented May 11, 2022

So I investigated this problem for a bit, and it seems like there simply is no libssl1.1 for Ubuntu 22.04, no matter which install we are talking about:

https://packages.ubuntu.com/search?keywords=libssl1.1&searchon=names&suite=all&section=all

@ghost
Copy link

ghost commented May 11, 2022

@frank-straetz hello, did you well add impish-security in your apt source ?

#4646 (comment)

No. In my opinion, this is not a problem resolution, but a workaround / hack. One can not expect all users of VS Code working with Ubuntu 22.04 to add apt repositories of older Ubuntu versions to their sources.list. (And they may not even be able to do so.) Also, this is not even documented as a required workaround at https://docs.microsoft.com/en-us/visualstudio/liveshare/reference/linux#install-linux-prerequisites.

@fakumax
Copy link

fakumax commented May 23, 2022

I might have found a temporary workaround. It started working for me after I installed libssl1.1 from the impish-security repo.

Here are the commands:

echo "deb http://security.ubuntu.com/ubuntu impish-security main" | sudo tee /etc/apt/sources.list.d/impish-security.list
sudo apt update
sudo apt install libssl1.1

Thanks a lot, finally works on ubuntu 22.04 LTS

@fev4
Copy link

fev4 commented May 24, 2022

Any tips for the Snap code-insiders app in Arch? Not working either.

Just in case, I've just checked and I have all the libs required by the community editions:
gcr liburcu openssl-1.0 krb5 zlib icu gnome-keyring libsecret desktop-file-utils xorg-xprop icu69

But still the Live Share on Snap doesn't seem to work.

@nireno
Copy link

nireno commented Aug 9, 2022

Got Live Share working again using the flatpak version on popos. I assume this is because flatpaks package all their dependencies internally.

@eureka-cpu
Copy link

wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.0g-2ubuntu4_amd64.deb
sudo dpkg -i libssl1.1_1.1.0g-2ubuntu4_amd64.deb

This worked for me, Pop!_OS 22.04 LTS

@dariuszparys
Copy link
Contributor

@alyssajotice could you re-open this issue? The prereq script (#4646 (comment)) is still not installing libssl1.1 on Ubuntu 22.04 in WSL2. The workaround mentioned here #4646 (comment) works in WSL2 as well.

❯ sudo dpkg -i libssl1.1_1.1.0g-2ubuntu4_amd64.deb
[sudo] password for dp:
(Reading database ... 60161 files and directories currently installed.)
Preparing to unpack libssl1.1_1.1.0g-2ubuntu4_amd64.deb ...
Unpacking libssl1.1:amd64 (1.1.0g-2ubuntu4) over (1.1.0g-2ubuntu4) ...
Setting up libssl1.1:amd64 (1.1.0g-2ubuntu4) ...
Processing triggers for libc-bin (2.35-0ubuntu3.1) ...
/sbin/ldconfig.real: /usr/lib/wsl/lib/libcuda.so.1 is not a symbolic link

The out of the box experience just doesn't work if you have an Ubuntu 22.04 as your WSL2 distro. I would assume these hits most new installations because people normally choose the latest LTS on a fresh box.

I was wondering why it was working on my plain Ubuntu 22.04 installation without any problems, then I remembered that I had to backport libssl1.1 for another application before. Please ensure while testing that you're using a machine that has not backported this already.

@alyssajotice
Copy link
Contributor

Reopening and reassigning for triage @setaskin. @dariuszparys, in the meantime, you can contribute to the linux-install script here: https://github.com/MicrosoftDocs/live-share/blob/main/scripts/linux-prereqs.sh.

@ermshiperete
Copy link

ermshiperete commented Aug 18, 2022

Impish is EOL, so the Impish version of libssl1.1 is no longer available. However, the LTS Focal version works just as well, and made vslive work for me on Ubuntu 22.04.

@alyssajotice
Copy link
Contributor

Just merged #4742, this will hopefully resolve the issue.

@joshsleeper
Copy link

@alyssajotice hey, thanks for the follow through, although tbh I'm a little confused as to why installing a package from a prior ubuntu release is the "proper" solution here, even if it does happen to work fine in practice.

what exactly depends on precisely libssl1.1?
it feels like if 22.04 doesn't package the required libs then maybe the proper solution is to ensure something modern that is provided by 22.04 is depended on, rather than forcing installation of an older package?

@alyssajotice
Copy link
Contributor

@joshsleeper I'm not sure at the moment but we can look into a different, more modern package. Reassigning to @setaskin for triage.

@Andrew-Pynch
Copy link

Impish is EOL, so the Impish version of libssl1.1 is no longer available. However, the LTS Focal version works just as well, and made vslive work for me on Ubuntu 22.04.

So how did you install this? I'm pretty new to linux so a lot of the information in this thread goes over my head.

I tried the installation script that someone else linked but I just ended up with this error message.
image

@dariuszparys
Copy link
Contributor

@Andrew-Pynch when you follow this link https://packages.ubuntu.com/focal/amd64/libssl1.1/download (assuming you're on amd64) there are instructions on how to install it. Basically:

You should be able to use any of the listed mirrors by adding a line to your /etc/apt/sources.list like this:
deb http://security.ubuntu.com/ubuntu focal-security main

After adding this line you just apt update your system to announce the new package source.

You could automate this in the script, but I feel that this kind of decision on the user's system should be taken by the user itself as Ubuntu 22.04 comes out of the box with libssl3.

@CodeMouse92
Copy link

If you're on Jammy, you'll notice the Impish security-repository is no longer available (EOL). Thankfully, someone did build for Jammy in a PPA.

sudo add-apt-repository ppa:nrbrtx/libssl1
sudo apt install libssl1.1

@jhcole
Copy link

jhcole commented Sep 6, 2022

On Ubuntu 22.04 Jammy, switching from Impish to Focal in garf-real's work-around worked for me. This avoids a third party ppa and Focal is support until April 2025 so hopefully this solution will be durable. I'm curious to know if this could cause other issues with the Ubuntu 22.04 system.

echo "deb http://security.ubuntu.com/ubuntu focal-security main" | sudo tee /etc/apt/sources.list.d/focal-security.list
sudo apt update
sudo apt install libssl1.1

@joshsleeper
Copy link

@joshsleeper I'm not sure at the moment but we can look into a different, more modern package. Reassigning to @setaskin for triage.

I don't want (or intend) to nag, but is there any update on progress here, even if it's just a direction, or discussion about direction?

As I said before, while I def appreciate that installing libssl1.1 from impish-security or focal-security technically works, it's very much a stopgap.
Just as it would be considered a stopgap to "grab some DLLs from Windows 7 to get this app working in Windows 10", relying on previous distributions/releases for current releases to work isn't sustainable.

What I've read seems to imply this could be related to using an older version of .NET Core, although some dialog on adjacent issues over there counters that maybe that's not the case.
dotnet/core#7038

@jramsay
Copy link
Member

jramsay commented Sep 8, 2022

Hi @joshsleeper, we've been working on completely removing our .NET Core dependencies. It is still in the experimental stage but we're getting very close to a full release. I've tested the new experience on a VM with a fresh install of Ubuntu 22.04 LTS. The extension no longer fails on activation. Unfortunately, there is still an issue when you attempt to authenticate in VS Code when sharing/joining a collaboration session. VS Code's native auth also has a dependency on libssl1.1. The authentication gets stuck and never completes. You can follow updates to the investigation in this issue.

Until this is resolved, the workaround is still to install libssl1.1 manually on Ubuntu 22.04

@joshsleeper
Copy link

heck yea, that's really exciting @jramsay!

thanks a bunch for the update and references, it's great to know that it's being actively worked on~

@derekbekoe
Copy link
Collaborator

We’ve made improvements in this area since this issue was filed (i.e. the vsls-agent process and associated .NET dependencies have been removed). We believe this may have improved your experience and are closing this issue. If this issue still persists for you, please comment on the issue and let us know. Thank you.

@joshsleeper
Copy link

joshsleeper commented Nov 13, 2022

@derekbekoe heck yea, that's great news and we really appreciate the hard work!

I can confirm that v1.0.5762 of the plugin is working like a charm for me with ubuntu 22.04 in WSL2 even after I removed the libssl1.1 installed from focal-security!

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

No branches or pull requests