[{"content":"異なるデバイス間での変更の同期 Gitを使って作業中に、まだコミットはしたくないけど、別のデバイスで作業を続行したい場面があります。 例えば、家のデスクトップPCで開発していたのを、外出先のノートPCで続けたい場合などです。 このような場合は、VSCodeのCloud Changes機能を利用すると便利です。\n使い方（変更のコピー元） ユーザーアイコンをクリックし、「Turn on Cloud Changes\u0026hellip;」を選択し、Cloud Changes機能を有効にする。 ステージングしていない状態で、F1キーでコマンドパレットを開き、「Cloud Changes: Store Working Changes in Cloud」を選択する。 使い方（変更のコピー先） F1キーでコマンドパレットを開き、「Cloud Changes: Show Cloud Changes」を選択する。 左ペインの上部にあるリロードアイコンをクリックして、クラウド上の変更内容を取得する。 変更内容一覧に表示されたアイテムにカーソルを合わせて、「Resume Working Changes」をクリックする。 参考サイト VSCodeの隠し機能Cloud Changesを使って、複数端末で作業を同期する ","date":"2026-01-05T04:42:27Z","permalink":"https://www.yuchigames.com/post/vscode-cloud_changes/","title":"意外と知られてないVSCodeのCloud Changes機能について"},{"content":"動機 大学の授業でC言語のGUIアプリを開発することになった。GUIライブラリはGTKを利用することにした。 Windows向けにGTKアプリを開発するには、Msys2をインストールして環境を整える必要がある。 しかし、ローカル環境を汚したくなかったので、DevContainerで開発することにした。 WindowsのDockerはWSL2上で動作しており、WSL2にはWSLgというGUIアプリを動かすための仕組みがある。 これを利用してDevContainerでGUIアプリを開発してみようと思う。\n注意 DevContainerを理解していることを前提としている。 そのため、DevContainerの基本的な説明は省略する。 また、本稿ではimageにmcr.microsoft.com/devcontainers/base:debianを利用している。\nWSLのアップデート まず、WSLを最新バージョンにアップデートする。 私はWSLをアップデートしていなかったため、ここで躓いた。\nwsl --update Dockerの設定 Docker Desktopで、WSL Integrationを有効にする。 DevContainerの設定 DevContainerのdocker-compose.ymlに以下を追記する。 サービス名は適宜変更すること。\nservices: devcontainer: volumes: - type: bind source: /tmp/.X11-unix target: /tmp/.X11-unix - type: bind source: /mnt/wslg target: /mnt/wslg environment: - DISPLAY=$DISPLAY - WAYLAND_DISPLAY=$WAYLAND_DISPLAY - XDG_RUNTIME_DIR=$XDG_RUNTIME_DIR - PULSE_SERVER=$PULSE_SERVER DevContainerの立ち上げ 以上で設定は完了。 DevContainerを立ち上げて、GUIアプリを実行してみる。 追記 日本語を扱うGUIアプリを動かす場合、フォントが必要になる。 以下のコマンドでコンテナにGoogle Noto Sans Japaneseフォントをインストールする。\napt install fonts-noto-cjk 参考サイト WSL を使用して Linux GUI アプリを実行する | Microsoft Learn 【WSL 2】dockerコンテナでGUIアプリを実行してWindowsで表示させたい | DevelopersIO 編集履歴 2025-12-04: imageに関する記述を追加 ","date":"2025-11-28T01:55:08Z","permalink":"https://www.yuchigames.com/post/devcontainer-wslg/","title":"DevContainerでGUIアプリ開発（WSLg）"}]