diff --git a/.github/issue_template.md b/.github/issue_template.md index eaafce9423123d9d910f57a8cd3205c00d58f86d..7ec9929e21931ae442b389d801b8847b3e858f01 100644 --- a/.github/issue_template.md +++ b/.github/issue_template.md @@ -1,4 +1,4 @@ diff --git a/README.md b/README.md index d15189461021f1319c1ef3565fe914cb01285e8f..0ee28c0f9c40ad40dea9a63dc0d5165b1b2c62f8 100644 --- a/README.md +++ b/README.md @@ -42,6 +42,8 @@ If you believe an install script used with `curl | sh` is insecure, please give Docs on the install script, manual installation and docker image are at [./doc/install.md](./doc/install.md). +We also highly recommend reading the [FAQ](./doc/FAQ.md) on the [Differences compared to VS Code](./doc/FAQ.md#differences-compared-to-vs-code). + ## FAQ See [./doc/FAQ.md](./doc/FAQ.md). diff --git a/ci/build/release-github-assets.sh b/ci/build/release-github-assets.sh index 44dd7a7b03788d6e8a508a19b2cd1099d80e8a87..7fba67703fe5ac037fb33781c910e748ec5668eb 100755 --- a/ci/build/release-github-assets.sh +++ b/ci/build/release-github-assets.sh @@ -11,7 +11,7 @@ main() { source ./ci/lib.sh download_artifact release-packages ./release-packages - local assets=(./release-packages/code-server*$VERSION*{.tar.gz,.deb,.rpm}) + local assets=(./release-packages/code-server*"$VERSION"*{.tar.gz,.deb,.rpm}) for i in "${!assets[@]}"; do assets[$i]="--attach=${assets[$i]}" done diff --git a/doc/FAQ.md b/doc/FAQ.md index b59da2bff2b4c9b81ad8fac8d7d6f173ed203917..fdeb7c5824c70c935b40faf2e877ebccbf3bf248 100644 --- a/doc/FAQ.md +++ b/doc/FAQ.md @@ -4,7 +4,8 @@ - [Questions?](#questions) - [How can I reuse my VS Code configuration?](#how-can-i-reuse-my-vs-code-configuration) -- [What's the deal with extensions?](#whats-the-deal-with-extensions) +- [Differences compared to VS Code?](#differences-compared-to-vs-code) +- [How can I request a missing extension?](#how-can-i-request-a-missing-extension) - [Where are extensions stored?](#where-are-extensions-stored) - [How is this different from VS Code Codespaces?](#how-is-this-different-from-vs-code-codespaces) - [How should I expose code-server to the internet?](#how-should-i-expose-code-server-to-the-internet) @@ -13,7 +14,6 @@ - [Sub-domains](#sub-domains) - [Multi-tenancy](#multi-tenancy) - [Docker in code-server container?](#docker-in-code-server-container) -- [Collaboration](#collaboration) - [How can I disable telemetry?](#how-can-i-disable-telemetry) - [How does code-server decide what workspace or folder to open?](#how-does-code-server-decide-what-workspace-or-folder-to-open) - [How do I debug issues with code-server?](#how-do-i-debug-issues-with-code-server) @@ -22,8 +22,6 @@ - [Blank screen on iPad?](#blank-screen-on-ipad) - [Isn't an install script piped into sh insecure?](#isnt-an-install-script-piped-into-sh-insecure) - [How do I make my keyboard shortcuts work?](#how-do-i-make-my-keyboard-shortcuts-work) -- [Why can't I use VS Code's Remote extensions?](#why-cant-i-use-vs-codes-remote-extensions) -- [Why can't I use VS Code Live Share?](#why-cant-i-use-vs-code-live-share) - [Enterprise](#enterprise) @@ -32,21 +30,26 @@ Please file all questions and support requests at https://www.reddit.com/r/codeserver/. -The issue tracker is **only** for bugs. +The issue tracker is **only** for bugs and features. ## How can I reuse my VS Code configuration? -The very popular [Settings Sync](https://marketplace.visualstudio.com/items?itemName=Shan.code-settings-sync) extension should just work. +The very popular [Settings Sync](https://marketplace.visualstudio.com/items?itemName=Shan.code-settings-sync) extension works. -To manually reuse, you can just copy `~/.vscode` into `~/.config/code-server` -and `code-server` will reuse your existing extensions and configuration. +You can also pass `--data-dir ~/.vscode` to reuse your existing VS Code extensions and configuration. -## What's the deal with extensions? +Or copy `~/.vscode` into `~/.local/share/code-server`. -Unfortunately, the Microsoft VS Code Marketplace license prohibits use with any non Microsoft -product. +## Differences compared to VS Code? -See https://cdn.vsassets.io/v/M146_20190123.39/_content/Microsoft-Visual-Studio-Marketplace-Terms-of-Use.pdf +`code-server` takes the open source core of VS Code and allows you to run it in the browser. +However, it is not entirely equivalent to Microsoft's VS Code. + +While the core of VS Code is open source, the marketplace and many published Microsoft extensions are not. + +Not only are they closed source, Microsoft prohibits the use of any non-Microsoft VS Code from accessing their marketplace. + +See the [TOS](https://cdn.vsassets.io/v/M146_20190123.39/_content/Microsoft-Visual-Studio-Marketplace-Terms-of-Use.pdf). > Marketplace Offerings are intended for use only with Visual Studio Products and Services > and you may only install and use Marketplace Offerings with Visual Studio Products and Services. @@ -55,12 +58,18 @@ As a result, we have created our own marketplace for open source extensions. It works by scraping GitHub for VS Code extensions and building them. It's not perfect but getting better by the day with more and more extensions. -Issue [#1299](https://github.com/cdr/code-server/issues/1299) is a big one in making the experience here -better by allowing the community to submit extensions and repos to avoid waiting until the scraper finds -an extension. +These are the closed source extensions presently unavailable: + +1. [Live Share](https://visualstudio.microsoft.com/services/live-share) + - We may implement something similar, see [#33](https://github.com/cdr/code-server/issues/33) +1. [Remote Extensions (SSH, Containers, WSL)](https://github.com/microsoft/vscode-remote-release) + - We may reimplement these at some point, see [#1315](https://github.com/cdr/code-server/issues/1315) -To request an extension for the code-server marketplace, please open a new issue -and select the `Extension request` template. +For more about the closed source parts of VS Code, see [vscodium/vscodium](https://github.com/VSCodium/vscodium#why-does-this-exist). + +## How can I request a missing extension? + +Please open a new issue and select the `Extension request` template. If an extension is not available or does not work, you can grab its VSIX from its Github releases or build it yourself. Then run the `Extensions: Install from VSIX` command in the Command Palette and @@ -169,12 +178,6 @@ You can even make volume mounts work. Lets say you want to run a container and m the docker daemon's `/home/coder/myproject` is the same as the one mounted inside the `code-server` container and the mount will just work. -## Collaboration - -We understand the high demand but the team is swamped right now. - -You can subscribe to [#33](https://github.com/cdr/code-server/issues/33) for updates. - ## How can I disable telemetry? Use the `--disable-telemetry` flag to completely disable telemetry. We use the @@ -268,25 +271,6 @@ This will install a Chrome PWA and now all keybindings will work! For other browsers you'll have to remap keybindings unfortunately. -## Why can't I use VS Code's Remote extensions? - -Unfortunately, Microsoft has opted to make [VS Code's Remote SSH and Container -extensions closed source](https://github.com/microsoft/vscode-remote-release) and -it is against their TOS to use the published extensions against anything other -than Microsoft VS Code builds so we are unable to add them to our marketplace. - -We may reimplement them at some point. -You can subscribe to [#1315](https://github.com/cdr/code-server/issues/1315) for updates. - -## Why can't I use VS Code Live Share? - -Unfortunately, Microsoft has opted to make -[VS Code's Live Share extension closed source](https://github.com/microsoft/vscode/issues/38733#issuecomment-388213016) and -it is against their TOS to use the published extension against anything other -than Microsoft VS Code builds so we are unable to add them to our marketplace. - -We may implement our own at some point. See [Collaboration](#collaboration). - ## Enterprise Visit [our enterprise page](https://coder.com) for more information about our