JammyからResoluteまで:Ubuntuのツールチェーンの進化

by Canonical on 1 June 2026

新しいツールチェーンのバージョン、devpack、開発体験を改善するワークフローをご紹介します。

Ubuntuのツールチェーンの進化は、単にGCC、LLVM、Pythonを提供することではありません。明確な目的を持つOpenJDKのバリアント、タスクに特化したdevpack、FIPS適合のツールチェーン、そしてsnap(新しい.NET snapやSnapcraftプラグインなど)の開発も含みます。このような改善により、これまで半日かかっていたセットアップが1〜2個のコマンドで済みます。これは、Ubuntu上でフレームワークやアプリケーションを開発する者にとって、まさに「摩擦のない」開発体験です。

このブログでは、Ubuntuの過去4年間のLTSリリースにおける変更点と今後の方向を解説します。

Canonicalの出発点: Ubuntu 22.04 LTS Jammy Jellyfish

Ubuntuは、常に安定した言語ツールチェーン(複数バージョンのGCC、最新のLLVM/ClangやPythonなど)のベースラインを提供してきました。Ubuntu 22.04 LTSでは、アーカイブでGolang、Java、.NETランタイムにも重点を置きました。また、Ubuntuのリリースとして初めてRustのツールチェーンパッケージをuniverseリポジトリからmainリポジトリへ昇格させ、メモリの安全なシステムを推進しています。これによりUbuntuは、C/C++、システム、バックエンドの開発のほか、エンタープライズアプリケーションの開発にとって信頼できる基盤となりました。それでも多くの開発者は、自分でワークフローを組み立てる必要がありました。IDE統合、フレームワークのコマンドラインインターフェイス(CLI)、ビルドツール、パッケージングなどが、ほぼチームに任せられていたためです。同様に、GolangやRustの開発者も、最新の優れたツールはアップストリームのプロジェクトから入手する必要がありました。

22.04 LTSにおけるSpring、.NET、Golangのセットアップでは通常、開発者が好きなパッケージマネージャーを使って言語やフレームワークをインストールし、自分のプロジェクトに組み込む必要がありました。この方法は熟練者にとっては有効でしたが、組織全体で開発環境を標準化したり、オフライン環境や制約の多い環境をサポートしたりするのは困難でした。

Ubuntu 24.04 LTS以降:ツールチェーンが進化

24.04 LTS25.04を比較すると、Ubuntuは単なる「ツールチェーンの装備」から「ツールチェーンの選択と管理」へと移行しました。Canonicalは、最新バージョンのGCC、LLVM、Golang、Java、.NET、Rustとともに、ビルド計画や継続的インテグレーション(CI)に役立つ統一された「ツールチェーンの提供状況」資料を発表しました。さらにUbuntu 25.04 リリースと同時に、「開発者のためのUbuntu」ポータルを作成し、GCC、Golang、Java、.NET、Python、Rustに関する体系的なハウツーガイドを公開しました。これにより開発者は、パッケージだけでなくワークフローの説明書にも簡単にアクセスできます。

プラットフォーム面で、Ubuntuの.NETは大きく変わりました。.NET 8のSDKとランタイムは公式snapとして提供されます。これには複数の.NET環境を管理できるCLIツールとインストーラーが含まれます。Snapcraftには専用のdotnetプラグインに加え、バージョン管理された.NET拡張機能が追加され、複雑だったsnapcraft.yamlファイルが、簡潔で再利用しやすい定義に変わりました。これにより、Ubuntuでの.NETアプリケーションのビルド、公開、更新のハードルが大幅に下がりました。デスクトップ、サーバー、クラウドホスト型ワークロードのいずれでも同じです。

SpringとGolangに対応するDevpack:フレームワークフローをsnap化

25.04リリースではdevpackが登場しました。第1弾はdevpack-for-springです。devpackは、アプリケーション開発者のユーザー体験を大きく改善しました。devpackとは、特定フレームワーク用のツール、厳選されたデフォルト設定、パッケージ化の技術をまとめたsnapです。つまり1回インストールするだけで、すぐに使える開発環境を作るためのものです。

たとえば、devpack-for-springはSpring CLIをパッケージ化し、Ubuntu専用の機能を追加しています。Spring Bootライブラリのオフラインインストールは、初回のビルドを高速化し、エアギャップ環境や帯域幅の限られた環境に対応します。また、コードの整形、静的解析、ベストプラクティスに基づくデフォルト設定のための設定済みMaven/Gradleプラグインも提供します。ここからdevpack-for-spring boot startコマンドはSpring Initializrを利用し、Java 21と最新のSpring Bootリリースを使用した新しいSpring Bootプロジェクトを自動生成します。つまりJava開発者は、ポリシーに合った最新の環境を1つのコマンドで得られるのです。devpack-for-springの詳細はCanonicalのブログをご覧ください。機能の概要はYouTubeチャンネルでも説明しています。ダウンロードはSnap Storeから。

devpack-for-go(およびGo snap全般)も、Golang開発者にとっての利便性を重視しています。これらにより、Ubuntuの別のリリースでも、Snap Storeで配布される他のディストリビューションでも、一貫したデフォルト設定を持つ完全なGolangツールチェーンをインストールできます。自動更新やロールバックも利用できます。

これらのdevpackは、.NETのsnap、Snapcraftの.NET プラグインや拡張機能とともに、Ubuntuを「コンパイラを備えた汎用OS」から、「フレームワークを認識したプラットフォーム」へと変化させます。Java/Spring、Golang、.NETの開発者は、新規インストールから数分で最初のビルドに到達でき、結果の安定した集中管理されたツール群を使用できます。

アプリケーション開発プラットフォームとしてのUbuntu 26.04 LTS

過去4年間の取り組みの成果であるUbuntu 26.04 LTSにより、Ubuntuは複数の言語ランタイムに対応するトップクラスのアプリケーション開発/運用基盤となりました。

最新のOpenJDK v25では、コンパクトオブジェクトヘッダー(JEP 519)がメモリ使用量を最大20%削減し、AOTメソッドプロファイリング(JEP 515)が起動時間を短縮します。仮想スレッドの性能も改善されます。Ubuntu 26.04 LTSには、高速起動版のOpenJDK-25-CRaCも付属します。また、OpenJDK 25ベースのgraalvm-jdk snapリリースもSnap Storeからダウンロードできます。

最新のLTSリリースである.NET 10は、速度、セキュリティ、機能性に優れた最新の開発プラットフォームで、mainアーカイブに公開されています。.NET snapでは、複数のバージョンの.NET SDKやランタイムを簡単にインストールし、管理できます。26.04 LTSでは、すでに提供中の.NET 8 に加えて.NET 10のSDKとランタイムもインストールと設定が可能になります。Canonicalは、人気の高い2つの.NET開発者向けツールもsnapして公開しました。1つ目はNetCoreDbgです。これは一般的なオープンソースの.NET デバッガで、GDB/MI、VSCode DAP、CLIインターフェイスを使用して、オープンソースのクロスプラットフォーム型ランタイムエンジンであるCoreCLRをデバッグできます。2つ目のMSBuildストラクチャードログビューアは、実行されたターゲット、タスク、プロパティ、項目値を構造化された形式で記録するMSBuild用ツールです。

Resolute Raccoon(Ubuntu 26.04 LTS)のデフォルトは、最新のアップストリーム版Go 1.26です。このリリースは、実行性能の大幅な向上、開発のしやすさ、レガシーコードの更新に重点を置いています。Snap Storeで提供されているdevpack-for-go snapは、人気の高いGolang開発ツールと、それをVS CodeなどのIDEと簡単に統合する仕組みを提供します。

Ubuntu 26.04 LTSではRust 1.93 がデフォルトのため、バイナリに監査情報を埋め込む機能(cargo-auditable機能)をオプトインで利用できます。この機能は、RustのバイナリをビルドしたときにどのRustライブラリバージョンを使用したかを記録します。したがって特定のライブラリバージョンに脆弱性が見つかった場合、そのバイナリを再ビルドできます。Rustバイナリに埋め込まれたこのデータを解析する監査ツール(cargo-audit)は、Snap Storeからsnapとして入手可能です。

すべてが開発者に役立つ

ツールチェーン、snap、devpackを見ると、Ubuntu 26.04 LTSでは、開発プラットフォームの価値連鎖の中でツールチェーンの役割を高めるという明確な戦略が実践されています。システム開発者は、シリーズごとに提供状況が文書化された最新のGCCやLLVMを入手し、ディストリビューションに組み込まれた強力なRustサポートを利用できます。これによりUbuntuは、カーネル、ドライバ、高性能が求められる重要なサービスの信頼できる基盤となります。アプリケーション開発者に対しても、フレームワークレベルで同じ配慮があります。それが、Java対応のSpring devpack、Golang対応のdevpackとsnap、公式の.NET snap、複雑なパッケージ化やランタイム管理を宣言的設定に変換するSnapcraftのプラグインや拡張機能などです。

この組み合わせにより、チームはdevpackやsnapを共有し、標準化できます。これには、IDEプラグイン、リンター、ビルド設定、ランタイムバージョンなどのベストプラクティスがエンコードされているため、新しい開発者のオンボーディングは、「Ubuntuをインストールし、devpack/snapを入れて、リポジトリをクローンする」だけで済みます。従来のような分厚いセットアップ手順書は要りません。またCI/CDパイプラインでは、サポートや明確な文書のあるツールチェーンバージョンや公式snapを利用しやすくなり、さまざまなノートPC、ビルドファーム、クラウド環境、での再現性が向上します。

今後に向けて:GCC、LLVM、Rust、devpack

今後、ツールチェーンチームは、devpack-for-spring、devpack-for-go、.NET snapのようなアイデアを、C/C++やPythonの中核ツールチェーンにも幅広く応用していく予定です。実際にどのような形にするかはまだ検討中ですが、未来のイメージを少し紹介しましょう。

GCCとLLVMに関しては、コンパイラ、リンカ、デバッガ、サニタイザ、クロスツールチェーンをまとめた専用の「開発スタック」やコンテナイメージが提供され、C/C++やシステムの開発者も、現在のSpringや.NET開発者と同様に、1つのコマンドで開発環境を構築できるようになります。Rustに関しては、rustupを最優先の開発フローとして採用し、Rust用イメージを厳選して提供します。また、LLDとの統合を強化することで、現代のシステムレベルのRustプロジェクトにUbuntuが最適となるでしょう。

devpackの面では、他の一般的なスタック(CondaなどのPythonフレームワーク、Rustウェブスタック、ゲームエンジン)向けのdevpackにも取り組みます。また、devpack、Snapcraftプラグイン、公式ドキュメントを綿密に整合させます。これにより、主要なすべての言語とフレームワークについて、Ubuntuでの「ゴールデンパス」が明確に文書化されます。

Canonicalは、devpack-for-spring、devpack-for-go、.NET対応snap、進化を続けるGCC/LLVM/Rustを基盤とし、Linux開発者とアプリケーション開発者のどちらにとっても、強力、安全で、サポートの充実した基盤としてUbuntuを提供したいと考えています。

ニュースレターのサインアップ

Ubuntuニュースレターの配信登録


お客様が購読登録を行われる場合、以下の条件に同意されたことになります。Canonicalのプライバシーに関するお知らせ個人情報保護ポリシー

関連記事

Ubuntu ProをNutanixのベアメタルKubernetesで提供

NutanixとCanonicalのパートナーシップ拡大によりコンテナ化されたワークロードの選択肢が増加 Enterprise Kubernetes®は、柔軟性の高いマルチアーキテクチャモデルへと進化しつつあります。AI/MLやデータ集約型のワークロードが膨大なハードウェアスループットを必要とする近年、組織はクラウドプラットフォームの安定性を維持しながら、ベアメタルのパフォーマンスを求めています。 このためNutanixとCanonicalは、このたび発表されたNKP Metalソリューションも含め、ベアメタルで実行するNKP(Nutanix Kubernetes Platform)インスタンスでもUbuntu Proを利用可能にしました。もともと2025年に発表されたパ […]

Ubuntu 26.04 LTSのセキュリティ最新情報

Ubuntu 26.04 LTSは、Canonicalにとって最もセキュリティを重視したLTSリリースです。単に機能を追加しただけでなく、システムのあらゆる層で同時にセキュリティの基準を引き上げ、全体的に強化しました。しかも既存の環境を壊したり、手動での介入が増えたりすることはありません。セキュリティの心臓部、つまりデフォルト設定に注力することで、CanonicalはUbuntuのセキュリティを新しい形で強化しました。この記事では、Ubuntu 26.04 LTSの新しいセキュリティ機能について概説します。 Ubuntu 26.04 LTS は、デスクトップ、サーバー、コンフィデンシャルVM、クラウドイメージ、エッジシステムでLinuxを運用する上で、今後10年間にわたっ […]

Canonical、Ubuntu 26.04 LTS Resolute Raccoonを公開

Ubuntuの11番目のLTS(長期サポート)リリースで、エンタープライズワークロード向けにシリコンを高度に最適化し、最新のセキュリティを搭載。 Canonicalは本日、Ubuntu 26.04(コードネーム「Resolute Raccoon」)をリリースしました。jp.ubuntu.com/downloadからダウンロードとインストールが可能です。 Resolute Raccoonは、TPM(Trusted Platform Module)を使用したフルディスク暗号化、アプリケーションのアクセス許可プロンプトの改良、Arm®ベースのサーバーに対応するLivepatch更新、メモリの安全性を高めるRustベースのユーティリティにより、復元性を重視した中間リリースでの改良 […]