Feature Request: Support for private marketplace/gallery
Problem
We have created several VSIX extension that have no use to anybody else except our company. We would like to host our own private extension gallery and have an ability to specify alternative extension gallery paths (like "Additional Extension Galleries" in Visual Studio 2015). - VSCode Version: 1.10.1 - OS Version: Windows 10
Unverified for your environment
Select your OS to check compatibility.
2 Fixes
Implement Private Extension Gallery Support in VSCode
The current version of VSCode does not support hosting private extension galleries, limiting organizations to the public marketplace. This is due to the absence of a configuration option for specifying additional extension gallery paths, which was available in earlier versions of Visual Studio.
Awaiting Verification
Be the first to verify this fix
- 1
Create a Private Extension Gallery
Set up a local or hosted server to serve your VSIX files. This can be done using a simple HTTP server or a more complex solution like a Node.js application that serves the extensions.
bashnpx http-server ./path-to-your-vsix-files - 2
Modify VSCode Settings for Additional Gallery
Edit the VSCode settings to include the URL of your private extension gallery. This can be done by adding the following configuration to your settings.json file.
json{ "extensionsGallery": { "serviceUrl": "http://your-private-gallery-url", "itemUrl": "http://your-private-gallery-url/item" } } - 3
Install Extensions from Private Gallery
Use the command palette in VSCode to install extensions from your private gallery. You can use the command 'Extensions: Install from VSIX...' and provide the path to your VSIX file hosted on your private server.
bashcode --install-extension http://your-private-gallery-url/your-extension.vsix - 4
Test Extension Functionality
After installing the extensions, verify that they function as expected within your development environment. Check for any errors in the output console.
noneView > Output
Validation
Confirm that the extensions can be installed from the private gallery and function correctly in VSCode. Check the output console for any errors during installation or execution.
Sign in to verify this fix
1 low-confidence fix
Implement Private Extension Gallery Support in VSCode
The current version of VSCode does not support specifying alternative extension gallery paths, limiting users to the public marketplace. This is a limitation for organizations that need to host private extensions for internal use only.
Awaiting Verification
Be the first to verify this fix
- 1
Create a Local Extension Gallery
Set up a local server to host your VSIX files. This can be done using a simple HTTP server. Ensure that the server is accessible from the machines where VSCode is installed.
bashnpx http-server ./path-to-your-vsix-files -p 8080 - 2
Modify VSCode Settings for Extension Gallery
Open your VSCode settings (settings.json) and add the URL of your local extension gallery to the 'extensionsGallery' configuration. This allows VSCode to recognize your private gallery.
json{ "extensionsGallery": { "serviceUrl": "http://localhost:8080", "cacheUrl": "http://localhost:8080/cache", "itemUrl": "http://localhost:8080/item" } } - 3
Install Extensions from the Private Gallery
Use the command palette in VSCode (Ctrl+Shift+P) and select 'Extensions: Install from VSIX...' to install extensions directly from your local gallery. Alternatively, you can configure automatic installation through the settings.
bashcode --install-extension ./path-to-your-vsix-file.vsix - 4
Test Extension Functionality
After installation, verify that the extensions function as expected within your development environment. Check for any errors in the output console.
plaintextView > Output
Validation
Confirm that the extensions are accessible and functional by checking the installed extensions list in VSCode and testing their features. Ensure there are no errors in the output console related to the extensions.
Sign in to verify this fix
Environment
Submitted by
Alex Chen
2450 rep