-
Notifications
You must be signed in to change notification settings - Fork 92
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
Install prepackaged extensions on Positron Desktop #6302
Comments
Hi, If I may ask a question, is it possible to take extensions used by Positron, and only by Positron, and use them in VS Code? I ask because I use VS Code on my Windows ARM, which does not yet have a Positron version, and I would like to configure it the same way as Positron. Thank you! |
Which extensions in particular are you interested in? I think you'll generally find that this is not possible because Positron's extensions call Positron APIs (which don't exist in VS Code), and many of Positron's features (e.g. the Data Explorer, Variables, Console, Plots, etc.) are part of Positron itself rather than implemented in an extension. |
Sorry for the delayed response. I understood your explanation. Well, I really liked the structure of Positron and it fits very well with my data science routine. I have a Windows ARM device with a Snapdragon chip, and I can't install Positron on it. That's why I would like to make my VSCode as close as possible to Positron, and I was wondering if it would be possible to use any of the extensions that Positron uses. Weel, I think this isn't possible. Maybe I'm being overly optimistic 😄 |
Addresses #6302, #6301, #6305, #5315 Introduces the concept of "bootstrapped extensions". Bundles the following extensions as VSIX files with Positron: - Black - Posit Publisher - Shiny(Workbench only) - Quarto - ms-toolsai.jupyter-keymap - ms-toolsai.vscode-jupyter-cell-tags - ms-toolsai.vscode-jupyter-slideshow - ms-toolsai.jupyter - ms-pyright.pyright - ms-python.debugpy When a user starts up Positron after first installing it or a version change (upgrade or downgrade), Positron will install the bootstrapped extensions for the users. Users will then be able to manage the extensions (upgrade, downgrade, uninstall, disable) themselves. Positron will always prefer whichever version of the extension in newer (bundled or user). When a user downgrades the extension, Positron will attempt to upgrade to the latest packaged version on the next upgrade, but not next Positron launch. I changed the approach slightly from my initial spec. The initial spec built on top of the existing [defaultExtensionInitializer](https://github.com/posit-dev/positron/blob/main/src/vs/code/electron-utility/sharedProcess/contrib/defaultExtensionsInitializer.ts). This approach is heavily inspired by that class but provides the server and desktop logic in src/vs/platform/extensionManagement/node/positronBootstrapExtensionsInitializer.ts. ### Release Notes #### New Features - Packages several extensions that were previously shipped a built-in extensions as user managed extensions that are installed on first launch. ### QA Notes @:web
Addresses #6302, #6301, #6305, #5315 Introduces the concept of "bootstrapped extensions". Bundles the following extensions as VSIX files with Positron: - Black - Posit Publisher - Shiny(Workbench only) - Quarto - ms-toolsai.jupyter-keymap - ms-toolsai.vscode-jupyter-cell-tags - ms-toolsai.vscode-jupyter-slideshow - ms-toolsai.jupyter - ms-pyright.pyright - ms-python.debugpy When a user starts up Positron after first installing it or a version change (upgrade or downgrade), Positron will install the bootstrapped extensions for the users. Users will then be able to manage the extensions (upgrade, downgrade, uninstall, disable) themselves. Positron will always prefer whichever version of the extension in newer (bundled or user). When a user downgrades the extension, Positron will attempt to upgrade to the latest packaged version on the next upgrade, but not next Positron launch. I changed the approach slightly from my initial spec. The initial spec built on top of the existing [defaultExtensionInitializer](https://github.com/posit-dev/positron/blob/main/src/vs/code/electron-utility/sharedProcess/contrib/defaultExtensionsInitializer.ts). This approach is heavily inspired by that class but provides the server and desktop logic in src/vs/platform/extensionManagement/node/positronBootstrapExtensionsInitializer.ts. ### Release Notes #### New Features - Packages several extensions that were previously shipped a built-in extensions as user managed extensions that are installed on first launch. ### QA Notes @:web
Verified FixedPositron Version(s) : 2025.03.0-116 Test scenario(s)Extensions are present and all tests are passing. |
Expand the Code OSS functionality that allows user-configured preinstalled extensions to install the extensions prepackaged with Positron from #6301
This issue should cover macos, windows, and linux desktop.
The text was updated successfully, but these errors were encountered: