flathub / flathub/com.visualstudio.code

Idea for handling Visual Studio Code's SDK and $PATH woes

オープン
#72 コメント 3 件 リアクション 1 件 担当者 0 名 GitHub で見る
主要言語
Shell
スター
217
フォーク
82
平均マージ
1日 7時間
マージ済み PR(30日)
1

説明

As part of the [Unity Hub Flatpak](https://github.com/flathub/flathub/pull/839), Visual Studio Code needs to be able to handle C# code via Omnisharp. This has gotten me a bit stuck, as Omnisharp (as well as some other VS Code extensions) wants the dotnet SDK binary to be directly in `$PATH`, but it's in `/usr/lib/sdk/dotnet/bin`. You could technically use an override to add it to the PATH, but having this be required just to use Untiy Hub doesn't seem overly user friendly.

In fact, this is really a general problem. Flatpak intentionally doesn't add SDK extensions to the PATH to avoid conflicts, but sometimes we just need it there.

Now comes the idea: include a "Flatpak SDK Extension PATH Manager" (name of course not final) extension as part of the default installation. This extension would have a check box for every installed SDK extension, and the user could mark the boxes for the SDK extensions they want to be in their PATH. Whenever VS Code is started, the "Flatpak SDK Path Manager" VS Code extension would go through all the selected SDK extensions and update the VS Code environment with the SDK extensions' `enable.sh` environment.

This would avoid the potential conflicts (as the user is still in charge of deciding what goes in the PATH and what doesn't), but it would also make it far more user-friendly to be able to add whatever is needed to the default PATH without having to mess with overrides and the Flatpak CLI.

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

Start with the Unity Hub Flatpak PR #839 and the VS Code Omnisharp requirement for the dotnet SDK. Inspect how the SDK at /usr/lib/sdk/dotnet/bin and SDK extensions’ enable.sh environment are handled. Done should provide a defined, user-controlled way to select SDK extensions whose environment is available when VS Code starts.

索引モデルが issue の本文から書いたものです。

評価

技術スタック
csharp, shell, unity, vscode
領域
developer-experience, tooling
issue の種類
機能追加
難易度
5/5
見積もり時間
1週間以上
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。