Ubuntu Weekly Topics

2013年1月25日号Raring Ringtailの開発、ローリングリリース、Ubuntu for phonesのアプリ開発

Raring Ringtailの開発

Ubuntuの開発者が多い国や地域でのホリデーシーズンも終わり、4月リリース予定のRaring Ringtailの開発が加速してきました。今回のリリースでは3月半ばのベータまでマイルストーンリリースが出ないこともあって、Raringで起こっている変化に気づきにくいようです。そこで一度、これまでの状況を確認してみましょう。

Unity

Unityは、バージョン自体は12.10と同じ6.12.0であるものの、Jenkinsを使った自動ビルドに対応したため、毎日のようにスナップショットパッケージがアップロードされています[1]⁠。特にデザインまわりの改善が多いことが現時点での特徴です。

Nexus 7

Nexus 7は主に内蔵ハードウェアまわりの対応に注力しています。WiFi、Bluetooth、タッチスクリーンについてはいくつかの問題を抱えているものの、現状でも十分に動作しています。サウンドについては依然として一度サスペンドに移行し復帰しないと音が鳴らないようです。

最近の大きな変更点としては、加速度計を使った画面の自動回転に対応したことでしょう。回転時に画面がちらつくものの、ソフトウェアキーボードやLauncher、Panelも含めて思いのほかスムーズに動いています。

ただし現在は1秒毎にsysfsのデータを読んで、xrandr/xinputコマンドが実行されるシェルスクリプトがデーモンとして動いているだけですので、GNOME Settings Dameonなどを使ったもう少しCPU/メモリー/バッテリーにやさしい方法を模索中です。なお、光度計も動作しているためディスプレイの明るさの自動調整も入るでしょう。

カメラ、GPS、NFCについては現在も動作していません。

その他

今後は加速的にさらに多くの機能追加や変更が行われる予定です[2]⁠。特にベータリリース直前やカーネルフリーズ直前あたりで(場合によってはPCが起動できなくなるような)大きな変更がぽこぽこ入ってきますので[3]⁠、Raringの今後にご期待ください。

Ubuntuのローリングリリース

1月23日のUbuntu On AirでCanonicalのカーネルチームマネージャーであるLeann Ogasawaraが、Ubuntuのリリースを「ローリングリリース」に変更する考えについて言及したことが、各所話題なっています

動画の42分ごろからの話を簡単にまとめると、⁠LTSはこれまでどおり2年ごとにリリースしつつ、その間の通常の6ヶ月ごとのリリースを取りやめて、アップデートするだけで最新バージョンのパッケージを利用できるような体制も、取りうる可能性の一つとして議論している」ということです。

Ubuntuのリリース体制について

本題に入るために一度「現在の」Ubuntuのリリース体制についておさらいしておきましょう。まず、Ubuntuは6ヶ月ごとにリリースを行う「タイムベースリリース」を採用しています。リリースは4月と10月ですので、リリース年とあわせてバージョン表記をしています。例えば2012年10月にリリースされたら12.10、2013年4月にリリースされるものは13.04といった具合です。

セキュリティアップデートの対応期間はリリースされてから18ヶ月、つまり12.10なら14.04がリリースされるころにサポート期間がきれます。

これとは別に2年に一度の4月のリリースは5年間のサポートをうたった「Long Term Support(LTS)」としてリリースしています。直近だと12.04がLTSリリースでした。つまり、2年前の10.04や、2年後の14.04もLTSになる計算です。

LTSのメリットとして、長期サポート以外に「LTS-to-LTSアップグレード」があります。これは通常のリリースが一つずつしかアップグレードできない(例えば12.10からは13.04へしかアップグレードできず、12.10から13.10への一足飛びのアップグレードはできません)のに対して、LTSは10.04から12.04へのアップグレードをサポートするという機能です[4]⁠。これにより、⁠LTSのみ使う」という選択肢も可能になるわけです。

パッケージのバージョンについて

Ubuntuの基本スタンスとして、リリース後は特別な理由がない限り各ソフトウェアのバージョンをあげません。例えば12.10のリポジトリにあるソフトウェアのバージョンが1.0だったとして、Ubuntu 12.10のリリース後にそのソフトウェアのバージョンが2.0になったとしても、原則としてUbuntu 12.10のユーザーはバージョン1.0を使いつづけることになります。

「特別な理由」に該当し、バージョンが更新されるケースは次の3つになります[5]⁠。

  • セキュリティ脆弱性が見つかった、もしくは「起動できない」などの根本的な問題が存在する場合。この場合はStable Release Updatesというレビューステップを経てアップデートされます。ただしこのSRUに該当したとしても、できるだけパッチのみ適用するようなより小さな変更で対応することが求められています。
  • Micro Release Exceptionsに該当するパッケージ。Firefoxのような短いスパンでリリースを行い、古いバージョンはサポートを外してしまうソフトウェアについては、MREとしてソフトウェアのバージョンをあげるようにしています。
  • Backportsにアップロードされたパッケージ。Ubuntuのリポジトリには、⁠Backports」と呼ばれる他のリリースのより新しいバージョンのパッケージを過去のリリースに取り込む仕組みが存在します。SRUに比べて条件が緩いため、セキュリティアップデートに該当しないアップデートはこの方法が利用されます。最近のリリースでは最初からこのリポジトリが有効になっているため、Backportsに存在するパッケージを明示的にインストールしたときは、そちらの新しいバージョンが利用されます。

ローリングリリースのメリットデメリット

一口に「ローリングリリース」と言っても、既に多くのディストリビューションでいろいろな形のローリングリリースが採用されています。Ubutnuで採用する場合はどういった形になるのでしょうか。

まず、LTSについてはこれまでどおり2年に1度となります。LTSという位置づけから、LTSリリースに対するSRUやMREについては変わらず、多くのソフトウェアのバージョンは維持しつつ5年間のサポートを提供することになるでしょう。

通常のリリースはなくなるので、LTSがリリースされる前後で、バージョンをあげるブランチ(RRブランチ)とLTSのためにバージョンを維持するブランチ(LTSブランチ)に分岐することになります。

もしその方法でいくとなると、次のようなメリットやデメリットがあげられます。

メリット

  • RRブランチのユーザーは常に最新のソフトウェアを利用できる(Debian sidに近い感覚⁠⁠。
  • アップグレードという形で数百MBのイメージやパッケージを一度にダウンロードしなくてもいい。
  • LTS以外のサポートやテストは一本化できる。
  • 半年に一度動物を考えなくていい。

デメリット

  • RRブランチの安定性はこれまでのリリースとは下がる(UbuntuのAlphaあたりを一般ユーザーも使うことになる⁠⁠。
  • リリースというリセットポイントがないため、日々のアップデートで少しずつ異なる環境で発生する不具合と戦う必要が出てくる。
  • リリース後にある程度安定してからアップグレードという技が使えない。
  • 半年に一度のリリースパーティができない。

いずれも運用方法によって回避や軽減できるものではあります。おそらく他のディストリビューションの体制も参考になるでしょう。

ただ、定期的で短いスパンで「リリース」という話題を提供してきたことが、Ubuntuのコミュニティ拡大の一助になったのは事実です。当時とはディストリビューションを取り巻く状況は変わってきているとはいえ、そう簡単には体制は変わりません[6]⁠。

実際のところ、もしローリングリリースを採用することになっても反映されるのは14.04からです。少なくとも13.04や13.10はこれまでどおりリリースされますので、実際の動きが発生するのは今年の後半以降になるでしょう[7]⁠。

Ubuntu for phonesのアプリ開発

今月初めにUbuntu for phonesの話SDKのプレビュー版が公開されたことをうけて、さっそくQMLを使ったアプリが開発・公開されています。

Ubuntu Phoneまわりでは、Ubuntu Phoneを意識した壁紙Android用Live Wallpaperなども作られています。

Full Circle Magazine Python Special Edition Volume 5

Full Circle MagazineのPythonスペシャル版 #5がリリースされています。Full Circle MagazineはUbuntuに関する記事を集めた月刊ウェブマガジンで、今回はPython関連の記事を抜き出した特別編です。第27回から第31回までのFull Circle MagazineのPython連載記事を抜粋しており、⁠Ubuntu上で利用できるPython入門」PDFとして利用できます。

UWN #300

Ubuntu Weekly Newsletter #300がリリースされています。今回は記念すべき第300回ということで、CanonicalのCEOであるJane Silberをはじめとする関係者一同からお祝いとお礼のコメントが寄せられています。

その他のニュース

今週のセキュリティアップデート

usn-1694-1:RPMのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2013-January/001962.html
  • Ubuntu 12.10用のアップデータがリリースされています。CVE-2012-6088を修正します。
  • パッケージの署名の処理に不具合があり、不正な署名を通過してしまう問題がありました。
  • 対処方法:通常の場合、アップデータを適用することで問題を解決できます。
usn-1695-1:RPMのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2013-January/001963.html
  • Ubuntu 12.04 LTS・11.10・10.04 LTS用のアップデータがリリースされています。CVE-2011-3378CVE-2012-0060CVE-2012-0061CVE-2012-0815を修正します。
  • パッケージのヘッダーの処理に不具合があり、RPMをクラッシュさせ、サービスを停止させたり、任意のコードを実行できてしまう問題がありました。
  • 対処方法:通常の場合、アップデータを適用することで問題を解決できます。
usn-1696-1:Linuxカーネルのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2013-January/001964.html
  • Ubuntu 12.04 LTS用のアップデータがリリースされています。CVE-2012-4461CVE-2012-4530CVE-2012-5532を修正します。
  • 対処方法:アップデータを適用の上、システムを再起動してください。
  • 備考:ABIの変更を伴います。
usn-1698-1:Linuxカーネル(OMAP4)のセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2013-January/001965.html
  • Ubuntu 12.04 LTS用のアップデータがリリースされています。CVE-2012-4530CVE-2012-5532を修正します。
  • 対処方法:アップデータを適用の上、システムを再起動してください。
  • 備考:ABIの変更を伴います。
usn-1699-1:Linuxカーネルのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2013-January/001966.html
  • Ubuntu 12.10用のアップデータがリリースされています。CVE-2012-4461CVE-2012-4530CVE-2012-5532を修正します。
  • 対処方法:アップデータを適用の上、システムを再起動してください。
  • 備考:ABIの変更を伴います。
usn-1700-1:Linuxカーネル(OMAP4)のセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2013-January/001967.html
  • Ubuntu 12.10用のアップデータがリリースされています。CVE-2012-4530CVE-2012-5532を修正します。
  • 対処方法:アップデータを適用の上、システムを再起動してください。
  • 備考:ABIの変更を伴います。
usn-1701-1:Vinoのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2013-January/001969.html
  • Ubuntu 12.10・12.04 LTS・11.10・10.04 LTS用のアップデータがリリースされています。CVE-2012-4429を修正します。
  • 接続の認証を行う前にクリップボードのアクティビティを送信してしまう問題がありました。
  • 対処方法:アップデータを適用の上、ログインしなおすことでセッションを再起動してください。
usn-1702-1:PHPのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2013-January/001970.html
  • Ubuntu 12.04 LTS用のアップデータがリリースされています。CVE-2012-6113を修正します。
  • 空の文字列を使ったopenssl_encrpt関数の処理に問題があり、攻撃者が任意のメモリーデータを閲覧し、機密情報を晒す可能性のある不具合が存在しました。
  • 対処方法:通常の場合、アップデータを適用することで問題を解決できます。
usn-1703-1:MySQLのセキュリティアップデート
usn-1704-1:Linuxカーネル(Quantal HWE)のセキュリティアップデート
usn-1681-3:Firefoxの再アップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2013-January/001972.html
  • Ubuntu 12.10・12.04 LTS・11.10・10.04 LTS用のアップデータがリリースされています。
  • usn-1681-1の再アップデートで、言語パックが適切に反映されない問題を解決します。またFirefox 18.0.1相当にアップデートされます。
  • 対処方法:アップデータを適用の上、Firefoxを再起動してください。

おすすめ記事

記事・ニュース一覧