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

[SOLVED] Linux - Issues installing Docker on Ubuntu - libseccomp2 version 2.3.1 installed but 2.4 required

This article has been improved for a better understanding - goto  https://splashcoder.blogspot.com/2023/07/installing-docker-on-ubuntu-1804-solved.html There is a possibility that you are trying to install docker. There is a very comprehensive guide at https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository. The linked guide serves as a reference for this article. We try to address the common errors in this article. Just so you won’t have to scour the entire answers on StackOverflow. Step 1: The first thing is to run our famous "apt update" command. So run the command below. sudo apt-get update You may observe that there are some errors. And YES! we are using a fairly old Ubuntu 18.04 Bionic Beaver Release. It seems perfect for this as most people have issues installing docker anyways. To resolve this, you may refer to  Configure DNS server IP to resolve errors with apt-get update Step 2: Following the Docker article, we should run the commands below. sudo...

Laravel: Implementing the country based phone input

When you ideate on your next Laravel project, don't forget that feeling, where you are lost in cloud thinking most of the work has been built into the framework. One such task not built into the framework is the country selector and any other data-driven task/feature. The image below is the desired end result.   Components Below are the different components and how to create them. 1. Countries Table and Model : running the command below on a command-line tool from within a Laravel project should help achieve this. php artisan make:model Models\Country -m our Table can be created with the SQL below; CREATE TABLE `countries` ( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `name` VARCHAR(255) NOT NULL, `iso2` VARCHAR(255) NOT NULL, `created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) COLLATE='utf8mb4_unicode_ci' ENGINE=InnoDB; 2. Regions table and Model:  A country might have many regions, each region is not expected to have more than...