Skip to main content

VS CODE: Unable to install extensions on Ubuntu/Linux

Hey, its one of those days, i just wished i could code away the night. i decided that tonight, it was going to be VS Code all through.


I closed Sublime text. It was not long before I started missing the php code linting and ever intelligent code completions that were built into sublime text.

I checked the suggestions on the Extensions Tab of VS Code. and there it was! Felix Becker's "PHP IntelliSense" package. To my cute surprise, Upon clicking, the extension's description and Installation "Read Me" could not display correctly, 'twas as good as blank. All i could see was this:



I thought, this is something light, so i started searching but then it was not better explained except for the GitHub issue which I found to be useful, Link is at the bottom of this page. 

I hate to discover it was a DNS issue.

How to detect the Issue

Simply visit the URL below, if you are able to view the image on the page, then you are not affected by this issue.

DNS Test URL: https://ms-python.gallerycdn.vsassets.io/extensions/ms-python/python/2019.8.29288/1565127378610/Microsoft.VisualStudio.Services.Icons.Default#splashCoder

Else You will have to modify your system's DNS config, but hey its not as bad as it seems. Your internet will be fine and there will be no impact. You can also revert the DNS config after installing your extensions.


How to set DNS for a wireless connection on Linux/Ubuntu System

  1. Click your wireless icon at the top-right corner of the screen. Open the wireless drop-down, then click WiFi settings as shown below.

  2. In the new window confirm that the WiFi tab is selected on the left. Then Click the Settings button for the specific Wireless network you are using. For me, I use GAULOFCAPUA. 

  3. The new window (WiFi Settings window/tab), Click IPV4 tab to check IPV4 DNS settings. Disable the Automatic DNS check. and fill 8.8.8.8 as your DNS



  4. Goto the IPV6 tab and use 2001:4860:4860::8888 as your IPV6 DNS.


  5. Now click Apply to save the settings.

Now that you have switched to use Google's DNS, you will be able to download any extensions from Visual Code. In order to keep the setting portable, you can turn on/off at anytime the Automatic DNS switch. this will ensure that you don't have to type your DNS at all times.

How to set DNS for a wired connection on Linux/Ubuntu System.

In the previous section up here, We already configured this for the wireless connections. The only difference is that we won't use the WiFi tab, we have to scroll down on the left. then we click on "Network".
From the new Tab displayed, Click the settings icon Wired.
Apply IPV4 DNS and IPV6 DNS as described above. no exceptions.

YIPEEE! Now i can see the Extension's details and i can install. 



I hope i made it easy, kindly let me know if this guide did not solve your issue.


Best Regards


*Related GitHub Issue

Comments

Popular Articles

Ubuntu: Unable to get IP for network interface / Using multiple network adapters

This is a very focused article on a similar issue which i encountered very recently. Problem: I recently installed Ubuntu Server 20.0 on a virtualBox. My intention was to use 2 network adapters as shown in the picture below. Host-Only Network NAT After setting up, I realised that i could not get IP address for the NAT adapter and it was always DOWN. Solution: Ubuntu20.0 comes with a different Newtork Configuration System compared to older ones like Ubuntu 14. The new Ubuntu uses netplan to handle network configurations. To solve this issue, you need to add specific information about every adapter into the netplan configuration file. The first adapter will always be configured by default. Follow through this article to learn how in 5 easy steps. 1. The picture below shows that my VM is already configured to use 2 network adapters. 2. Now i powered up the VM and check my network parameters. I powered the VM and ran the commands to check if my 2 network adapters we...

Linux - How many network cards/interfaces do I have and what's their IP

 Yup! You have your Linux server or desktop installed, you have been enjoying this setup and suddenly you need to know how many network adapters are installed. You probably also want to know which of these adapters is connected to the internet, please follow through. First, you should run the command below on the terminal ip addr TL; DR: T here are 2 network adapters here,  “enp0s3” is my internet network adapter because it has an IP address from my internet gateway/router/MiFi. The IP address pattern gives this information.it begins with 192.x.x.x. Also "epn0s8" is the local network adapter which allows connections within an ethernet,  This output is quite verbose. Let’s dissect it in a bit. Firstly, we can observe items 1, 2 and 3. It is worth mentioning that item 1 is not an adapter, it is synonymous with the local network. Item 1 is labelled as “lo:”, this means that details in this section have to do with your localhost. Internal network setting of your system. This ...

Is this a CSS Bug: setting Background and z-index for Pseudo selectors(::before & :: after)

Recently I was making some UI for a friend's project. We had this CSS button effect that works elsewhere but failed to work at the desired location. Upon troubleshooting, we discovered that if the parent element has a background defined, you can't control the z-index of the pseudo selection of any of its children. Wait for it, I have got some demo. TL;DR set background colour or image for a " DIV.parent ", create a " Div.child " inside the " DIV.parent ". use CSS to modify the " ::before" " element of the " Div.child " as follows; set position as absolute, content as an empty string, height:100% and width is best at 50% for example purposes, lastly, give it a background colour. You will observe that the " ::before" " element is overlaying the actual element's content. Try to adjust the z-index of the " ::before" ". You will also realize that the z-index works fine if we remove the backgroun...