Skip to main content

A tool to download and install VS Code extensions in VSCodium-based IDEs.

Project description

vsix-to-vscodium

A tool to download and install VS Code extensions in VSCodium-based IDEs.

Why does this package exist?

This package was born out of the creator's experience trying out the Windsurf IDE. After discovering that many important extensions were missing, he learned that Windsurf, like other VSCodium-based IDEs, uses a different extensions marketplace due to Microsoft's licensing restrictions.

Rather than manually downloading and installing each extension, he decided to try out Windsurf's AI features by building a package that could copy over VS Code extensions with a single command. That package is vsix-to-vscodium.

Installation

pip install vsix-to-vscodium

Usage

Install a single extension

# Basic usage (defaults to windsurf)
vsix-to-vscodium publisher.extension-name

# Specify a different IDE
vsix-to-vscodium --ide windsurf publisher.extension-name

# Example: Install Python extension in Windsurf
vsix-to-vscodium --ide windsurf ms-python.python

Transfer all VS Code extensions

If you're switching from VS Code to a VSCodium-based IDE, you can transfer all your installed extensions at once:

# Transfer all extensions (defaults to windsurf)
vsix-to-vscodium --transfer-all

# Transfer all extensions to a specific IDE
vsix-to-vscodium --transfer-all --ide windsurf

Features

  • Downloads extensions from VS Code Marketplace
  • Automatically installs extensions in VSCodium-based IDEs
  • Supports multiple VSCodium-based IDEs (e.g., Windsurf)
  • Bulk transfer of all installed VS Code extensions
  • Supports specific version installation
  • Caches downloaded extensions to avoid redundant downloads
  • Cleans up downloaded files after installation

Caveats

  • When searching for installed extensions in the Extensions view, you must prepend @enabled to your search term to see extensions installed via this tool:

    Extensions search showing @enabled requirement

Next Steps/Improvements

  • Always remove downloaded files, even if installation fails
  • Show failed installs in final message when installation is complete, especially when installing multiple extensions
  • Allow updates of extensions that have newer versions of what's installed
  • Allow selecting extensions for install instead of just installing everything in VS Code
    • Some extensions actually don't make sense to copy, e.g., GitHub Copilot when running Windsurf
  • Don't install disabled extensions
    • Perhaps add a flag that allows user to specify that disabled extensions should also be installed
  • Use open-vsx extensions directly when extensions are already available there

Development

To set up the development environment:

# Clone the repository
git clone https://github.com/CodeWithOz/vsix-to-vscodium.git
cd vsix-to-vscodium

# Create and activate a virtual environment
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Install development dependencies
pip install flit
flit install -s --deps develop

Run tests:

pytest

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vsix_to_vscodium-0.4.0.tar.gz (72.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vsix_to_vscodium-0.4.0-py2.py3-none-any.whl (6.1 kB view details)

Uploaded Python 2Python 3

File details

Details for the file vsix_to_vscodium-0.4.0.tar.gz.

File metadata

  • Download URL: vsix_to_vscodium-0.4.0.tar.gz
  • Upload date:
  • Size: 72.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.32.3

File hashes

Hashes for vsix_to_vscodium-0.4.0.tar.gz
Algorithm Hash digest
SHA256 2ce1d676146f712d4f2f63c94d30a5ffee4d14ecc0c7eb1f6e76f283550ec8c4
MD5 0672c700d55377ae6945a0c717395a7d
BLAKE2b-256 fc371102638583cdb6f876575d271f69db45b4afb7c7e4281aae6edb0384fbb8

See more details on using hashes here.

File details

Details for the file vsix_to_vscodium-0.4.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for vsix_to_vscodium-0.4.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 19be6fd9e7d613f2affe3884c7e6576b49b15642e774bf05a9ed2e578971eff8
MD5 a5df98d12b56fc82e3d04eda890261b0
BLAKE2b-256 59dbf51c7a3a0070ecd9d9f96623c1840086f5e7444d4d380f0d494714f24d09

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page