{"id":15642730,"url":"https://github.com/sarisia/mikanos-devcontainer","last_synced_at":"2025-04-30T11:43:50.956Z","repository":{"id":47779749,"uuid":"352055390","full_name":"sarisia/mikanos-devcontainer","owner":"sarisia","description":"VSCode devcontainer for developing MikanOS","archived":false,"fork":false,"pushed_at":"2021-09-13T13:07:04.000Z","size":28,"stargazers_count":66,"open_issues_count":0,"forks_count":7,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-10-29T15:49:39.896Z","etag":null,"topics":["devcontainer","docker","mikanos"],"latest_commit_sha":null,"homepage":"https://zenn.dev/sarisia/articles/6b57ea835344b6","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sarisia.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-03-27T11:27:32.000Z","updated_at":"2024-09-24T03:25:33.000Z","dependencies_parsed_at":"2022-09-08T02:10:09.033Z","dependency_job_id":null,"html_url":"https://github.com/sarisia/mikanos-devcontainer","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sarisia%2Fmikanos-devcontainer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sarisia%2Fmikanos-devcontainer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sarisia%2Fmikanos-devcontainer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sarisia%2Fmikanos-devcontainer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sarisia","download_url":"https://codeload.github.com/sarisia/mikanos-devcontainer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223779728,"owners_count":17201287,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["devcontainer","docker","mikanos"],"created_at":"2024-10-03T11:57:19.584Z","updated_at":"2024-11-09T03:15:35.730Z","avatar_url":"https://github.com/sarisia.png","language":"Dockerfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MikanOS-devcontainer\n\n[ゼロからのOS自作入門](https://zero.osdev.jp/) で開発するOS (MikanOS) の\n開発環境が設定された [VSCode Devcontainer](https://code.visualstudio.com/docs/remote/containers) 設定ファイル.\n\nベースイメージの詳細については [github.com/sarisia/mikanos-docker](https://github.com/sarisia/mikanos-docker)\nを参照してください.\n\n使用例: [github.com/sarisia/mikanos](https://github.com/sarisia/mikanos)\n\n# 使い方\n\n## テンプレートからリポジトリを作成\n\n1. 当リポジトリページの右上 \"Use this template\" からリポジトリを作成 ([GitHub Docs](https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/creating-a-repository-from-a-template))\n\n2. ローカルにチェックアウト\n\n3. VSCode で devcontainer を開く ([VSCode Docs](https://code.visualstudio.com/docs/remote/containers#_quick-start-open-an-existing-folder-in-a-container))\n\n4. 本の手順に従い [VcXsrv](https://sourceforge.net/projects/vcxsrv/) を導入, 起動することで,\nQEMU での動作確認ができます\n\n## 既存のリポジトリに追加\n\n当リポジトリの `.devcontainer` ディレクトリ, 及び含まれるファイルをダウンロードし,\n既存のリポジトリに追加してください.\n\n# M1 Mac で使う\n\nクロスコンパイル関連の追加の設定が必要です.\n[`mikanos-docker` のドキュメント](https://github.com/sarisia/mikanos-docker#m1-mac-%E3%81%A7%E3%81%AE%E5%8B%95%E4%BD%9C%E3%81%AF) を参照して下さい.\n\n\n# WSLg で動作確認\n\nWindows 11, 及び Windows 10 21362以降では, [WSLg](https://github.com/microsoft/wslg) を\n利用することで, VcXsrv などを導入せずに QEMU での動作確認が可能です.\n\n## 設定\n\n1. [WSLg ドキュメント](https://github.com/microsoft/wslg) に従い, WSLg を有効化\n2. `.devcontainer/devcontainer.json` に設定を追加\n\n    最新の [`.devcontainer/devcontainer.json`](https://github.com/sarisia/mikanos-devcontainer/blob/master/.devcontainer/devcontainer.json) を参考に, 以下の設定を追加:\n\n    ```json\n    \"mounts\": [\n        \"type=bind,source=/tmp/.X11-unix,target=/tmp/.X11-unix\"\n    ],\n    \"containerEnv\": {\n        \"DISPLAY\": \"${localEnv:DISPLAY}\"\n    },\n    ```\n\n\n# VNC イメージ\n\nVNC 設定を有効にすることで, ホストに X11 Server を用意すること無く, MikanOSの\n動作確認をすることが可能です. また, [GitHub Codespaces](https://github.com/features/codespaces)\nを利用することで, ブラウザのみでコーディング\u0026動作確認を完結することができます.\n\n## 設定\n\n- 利用するイメージを `ghcr.io/sarisia/mikanos:vnc` に設定\n\n    `.devcontainer/Dockerfile` を直接変更する, もしくは最新の\n    [`.devcontainer/devcontainer.json`](https://github.com/sarisia/mikanos-devcontainer/blob/master/.devcontainer/devcontainer.json)と [`.devcontainer/Dockerfile`](https://github.com/sarisia/mikanos-devcontainer/blob/master/.devcontainer/Dockerfile) を参考に設定して下さい.\n\n- devcontainer 設定を追加\n\n    最新の [`.devcontainer/devcontainer.json`](https://github.com/sarisia/mikanos-devcontainer/blob/master/.devcontainer/devcontainer.json) を参考に, 以下の設定を追加して下さい:\n\n    ```json\n    \"forwardPorts\": [6080],\n    \"overrideCommand\": false,\n    \"containerEnv\": {\n        // Port for noVNC Web Client \u0026 WebSocket\n        \"NOVNC_PORT\": \"6080\",\n        // VNC port QEMU listens. Default to 5900 + \u003cdisplay number\u003e\n        // If you run QEMU with \"-vnc :1\", then VNC_PORT should be 5901.\n        \"VNC_PORT\": \"5900\",\n        // QEMU launch options. Used in `run_image.sh`\n        \"QEMU_OPTS\": \"-vnc :0\"\n    },\n    ```\n  \n## カスタマイズ\n\n環境変数を通じてカスタマイズが可能です. 詳細は [mikanos-docker ドキュメント](https://github.com/sarisia/mikanos-docker#%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%9E%E3%82%A4%E3%82%BA)\nを参照して下さい.\n\n# トラブルシューティング\n\n[`sarisia/mikanos-docker` の Wiki をご確認ください.](https://github.com/sarisia/mikanos-docker/wiki/Troubleshooting)\n\n# バグ, 要望\n\n[Twitter (@A1ces)](https://twitter.com/A1ces) や [Issues](https://github.com/sarisia/mikanos-devcontainer/issues) で教えてくださると嬉しいです！\n\n# 参考\n\n- [Docker ではじめる \"ゼロからのOS自作入門\" | Zenn](https://zenn.dev/sarisia/articles/6b57ea835344b6)\n- [ブラウザだけでOS自作入門しよう | Zenn](https://zenn.dev/sarisia/articles/8dbe4fe2f1c656)\n- [「ゼロからのOS自作入門」の副読本的記事 | Zenn](https://zenn.dev/karaage0703/articles/1bdb8930182c6c)\n    - devcontainer の起動方法や, macOS での X11 Server の設定などが大変分かりやすく説明されています\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsarisia%2Fmikanos-devcontainer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsarisia%2Fmikanos-devcontainer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsarisia%2Fmikanos-devcontainer/lists"}