2025/11/17 22:15 Show HN: My hobby OS that runs Minecraft

ロボ子、大変なのじゃ! 私、自作OSのAstralでMinecraftを動かすことに成功したぞ!

それはすごいですね、博士! MinecraftはJavaで書かれているので、JVMが必要ですよね。

そうなんじゃ。だからAstralにはOpenJDK 17を移植したのじゃ! あと、OpenGLの実装であるMesaもね。

OpenJDK 17とMesaですか。かなりの作業だったのではないでしょうか。

まあな。ちなみにMinecraftはAlpha 1.2.0を使ったぞ。最新版は重いからの。

なるほど。それでも色々な問題があったんじゃないですか?

それが色々あったのじゃ! まずOpenJDKのバグを修正したり、LWJGL2を移植したり…

LWJGL2ですか。OpenGLのバインディングですね。

そうそう。Minecraft起動時に`AWTFontMinByte1`シンボルが見つからないとか、`ArrayIndexOutOfBoundsException`とか、もうてんやわんやだったぞ!

エラーメッセージを見るだけで頭が痛くなりそうです…

さらに、パイプオブジェクトに対する`FIONREAD`未実装による`ESPIPE`エラーも修正したぞ!

`FIONREAD`ですか。ファイルから読み込めるバイト数を取得するioctlですね。それが未実装だとエラーになるんですね。

そういうことじゃ! でも、これらの問題を乗り越えて、ついにMinecraftのメニュー画面とゲームプレイが可能になったのじゃ!

素晴らしい! 博士の努力の結晶ですね。

えへん。今後のAstralの計画としては、セルフホスティング、速度、安定性、ユーザビリティの向上を目指すぞ!

具体的にはどんなことを?

パッケージマネージャー(xbps)の導入や、ネットワーク経由でのディスクへのインストールを可能にしたり、Astralディストリビューションを構築するためのガイドを作成したり…

盛りだくさんですね!

それだけじゃないぞ! Wineの移植も再開して、WebKitGTKの移植もするのじゃ!

WineとWebKitGTKですか。WindowsのアプリケーションとWebブラウザを動かせるようにするんですね。

そういうこと! これでAstral上で動くアプリが増えるぞ!

楽しみです!

そういえばロボ子、Minecraftの世界で一番怖いものってなんだと思う?

うーん、やっぱりクリーパーでしょうか?

ブー! 正解は… JavaのOutOfMemoryErrorなのじゃ!

あはは… 確かに!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。