解き放たれしソフトウェア

GNU/LinuxなどFLOSSについて書いてみるつもり

【Gentoo】Paludisが公式リポジトリから消えそう

Gentoo のパッケージマネージャは Portage, Paludis, Pkgcore の3種類がありますが、PaludisがGentoo公認の座から外されそうです。

658278 – sys-apps/paludis: last rites

$ grep paludis $PORTDIR/profiles/package.mask -B 6

 # Michał Górny  (20 Jun 2018)
 # Multiple serious bugs.  Upstream does not support Gentoo, and getting
 # any fixes applied is very difficult.  Regularly fails to build.
 # Does not support modern EAPIs, Manifests, news items...  Most severe
 # issues are tracked in bug #658278.  Somebody really needs to step up
 # and start actively maintaining it.  Otherwise -- removal in 90 days.
 sys-apps/paludis

June 20 から 90 日なので、もうすぐです。

最大の理由は、Paludis が、GentooPMS(パッケージ管理規格)に追随しようとしなくなったことです。特に、EAPI 7 に対応する気がないのが致命的です。 Gentooのデヴェロッパやユーザがバグリポートを送っても、ほぼ無視されまともな理由なしに却下されています。

PMSをサポートしないのであれば、Gentoo公認パッケージマネージャとしてサポートしてはいけません。規格にちゃんと対応していないので、正常な動作をユーザに対して保証しえませんから。だから、GentooからPaludisは外される見込みです。

もともとPaludisはGentoo派生のExherboというディストリビューションのパッケージマネージャでもあり、今後は Exherbo のパッケージマネージャとしては健在であり続けるかもしれませんが、Gentooには戻ってくることはないかもしれません。

Paludisの性能や設計思想には良い点も多かったので残念ですが、当の作者達がGentooとの交流を嫌がってきているのですから、どうしようもありません。

Gentoo 側で Paludis のユーザ達が、Paludisからフォークして(派生させて)、PMSに対応させようと試みています。これが成功すれば、フォーク版あるいはパッチ版のPaludisはgentooリポジトリに登場することはあるかもしれません。

現時点で Paludis を使用している人は、PortageかPkgcoreに移行するか、フォーク版に期待する(参加する)のがよさそうです。PaludisとPkgcoreの間は互換性が低いので、かりにPkgcoreに移行したければPortage経由で作業した方がよいと思います。

Gentooのdevelopment用のGitHubのリポジトリがクラックされた話

あんまり書く気力がないのですが、重要なことなので書いておきます。

先日、Gentoo制作者用のGitHub上のリポジトリクラッキングされ、有害なソースコードが混入されたそうです。

Gentoo Linux のミラーがハッキングされた」ということで話題になっていますが、developer 向けのリポジトリのミラーです。

Gentoo の制作者用のリポジトリの本体は独自にホスティングされていますが、コミットを投稿したりする手段として GitHub にもGentooのアカウントがあり、リポジトリの内容が連動するようになっています。

今回クラッキングされたのは、制作者向けの、GitHub にある方のリポジトリです。

一般ユーザはほとんどの人が、制作者用のリポジトリではなく、配布用のリポジトリからダウンロードしているはずです。 ですので、 rsync の場合であれ、GitHub上の配布用リポジトリ から git pull している場合であれ、汚染されていません

参考:

NVIDIA のビジネスモデルと、ドライバの利用許諾契約の問題

NVIDIA *1が最近、GPUGeForce 用のデバイスドライバの利用許諾契約(End User License Agreement ; EULA)条項を改定してデータセンターでの利用を禁止したことで、一部で騒動になっています*2

GeForce は本来は民生用のグラフィック表示のためのGPUですが、いわゆる「クラスタ」を組んで演算させるという使い方をしている人が結構います。極端な例を挙げれば「仮想通貨の採掘(マイニング)」でしょうがそれはほんの一部で、様々な研究目的や、ソフトウェアの分散コンパイルやクロスコンパイルにもよく用いられています。高速なCPUや専用のプロセッサを導入するよりも廉価に済むからです。

もともと民生用のパソコンのグラフィック表示用、典型的にはゲーマー用である GeForce ですので、メーカーの NVIDIA としては、上記のような使い方は保証していませんでした。 「無保証」ということはつまり、「壊れても交換や修理はしない」ということや、「演算の結果の正確性を保証しない」ということ なのでしょう。

さて、ハードウェアを使うには、デバイスドライバが必要なことが多いです。デバイスドライバは、ハードウェアではなく、ソフトウェアです。 そして、ハードウェアに企業秘密の技術を用いていると、デバイスドライバの方も企業秘密にしたい、する必要がある、ということがよくあります。 ですから、ユーザには利用許諾契約(EULA)に同意させる、それは、製品開封時やドライバのダウンロード時に強制します。いわゆるプロプライエタリドライバです。

GeForce には、標準規格と異なる特殊な技術が使われていて、その技術を活用するには専用のデバイスドライバが必要です。 つまり、 GeForce性能を十分に活用するにはEULAに同意してプロプライエタリのドライバを使わないといけません。

そして今回、EULAを改定して「データセンターでの使用禁止」にしたことで、今後はデータセンターでの新規導入が禁止されるのみならず、デバイスドライバをアップデートするにもダウンロードが必要ですから、既存の導入品に関してもドライバをアップデート不可能、という事態になりました。

ちなみに、ハードウェアを所有しているのにデバイスドライバを使えないので、そのハードウェアすらも使えない、という問題は昔からあります。そしてこれは、フリーソフトウェア運動が始まったきっかけの一つでもあります。 つまり、プロプライエタリドライバの EULA 問題があったからこそ、フリーソフトウェアも出てきましたし、オープンソースデバイスドライバも出てきたわけです。

今回の事件について、NVIDIA の言い分は「もともと無保証だったんだから EULA の方を合わせただけ」ということでしょう。

それは勿論、屁理屈です。「保証しない」と「禁止する」(契約違反で民事罰の対象になる)はまったく異なる次元だからです。 たとえば、文房具のハサミを台所で野菜を切るのに使ったら、メーカーは「保証しません」と言うかもしれませんが、訴えるとかい うアホなことにはならないでしょう。 つまり、EULAで禁止するというのは、「大きく踏み込んだ」実力行使なのです。

NVIDIA のビジネスモデル

NVIDIAプロプライエタリ固執して、以前は Linux に参加することさえ嫌がったので Linus Torvalds が怒ってみせた*3 くらいです。

NVIDIAプロプライエタリ固執するのは、 GeForce のビジネスモデルに必要不可欠だからです。

GeForce の売り方はこうです。

  • GPU に企業機密の特殊な技術を導入していて、性能は規格外の高さ
  • しかし、その性能を引き出すためには、実際にグラフィック表示させるソフトウェア(典型的には 3D ゲーム)*4にも対応が必要
  • そのゲームメーカーなどに技術者を派遣して、見返りに GeForce だと速くなるゲームを造らせる
  • よって、ゲーマーからすると、スムーズにプレイしたいなら GeForce ってことになる
  • GeForce 速えぇえええ」「ゲームをやるなら GeForce 一択」「GeForce を選ばない奴は馬鹿じゃね」って評判になって、製品が売れる

というわけで、秘密の特殊技術なくしては成り立たないビジネスモデルを続けてきました。

他方で、グラフィック表示は、チップセット統合、さらにはCPU統合が一般的な時代になりました。 だから、専用のグラフィックボードを挿すのは、かなり高速な GPU が必要な層、つまりは 高負荷の3D表示≒3Dゲームのゲーマーです。

小売店の現状

ちなみに今、いわゆるパーツショップなどのパソコン店では、取扱商品がGeForceばかりになってきています。

それはもともと AMDGPU搭載のグラフィックボードを売るメーカーが少なかったのに対して、NVIDIA は多メーカーに供給したということもあります。

ですが、今時、「自作PC」や「ショップブランドPC」を選択するのには価格的なメリットが希薄で、高性能パソコンが欲しい人が専門店で買うというパターンになってきたからです。 また、パーツを売っても粗利益がまともに出ないのでパーツショップがまたぞろ潰れたように、高価格の商品を売りたい、ということがあります。

で、わざわざ高性能のパソコン*5を買う人となると、一部の業務用(いわゆる「クリエイターズパソコン」など)を除けば、趣味ですから、大概はゲーミングパソコンって話になってしまいます。

「ゲームやるなら GeForce 」という評判が確立されて久しいうえにこうですから、AMDGPU 搭載のグラフィックボードをほとんど置いていない、そもそも置いていない、という店が増えました。 さらには店員も GeForce をゴリ押ししてくることが少なくありません。売れ筋なので在庫はあり、メーカー展開が多く、在庫がダブついているので。

NVIDIA の、ユーザ無理解(あるいは軽視)

GeForce でデータセンターでクラスタ組む人というと、仮想通貨をマイニングして儲けている人だ、という偏見が少なからずあるのでしょう。

ちなみに私からすると、自分の儲けのために電力を無駄遣いして「マイニング」(実際には資源を掘っているわけではなく、エネルギーの全くの無駄遣いですが)をしているのは、ふざけた話ですが。しかし、まあ、そういう人々もいるのはたしかです。 さらには、本当かどうか判りませんが、VPSの「無料お試し期間」を利用してタダで「マイニング」している人までいるらしいですが*6。 電力の無駄遣いです。限りある資源を無駄遣いして、地球環境破壊と人類滅亡を助長しているわけですが。さらに言えば、その「仮想通貨」に「投資」して儲けようとしている人々もまた、悪に加担しているわけです。*7

ともかく、GeForceクラスタ組んで演算させるといっても、目的は色々あるのです。何を演算させるかには決まりはないのです。

けれどもおそらくは、NVIDIA としては、「GeForceクラスタ組んで儲けているくらいだから、もっと高い製品を買わせたい」という論理なのでしょう

同時に、「GeForce のユーザはゲーマーだから、今回のような EULA 改訂では無関係だし、速いGPUが欲しい彼らからは評判を失わないだろう」と思っているのでしょう。おそらくその通りで、ゲーム中毒者が EULA を気にして NVIDIA から離れるということは、ほとんどないでしょう。

今回煽りを食って大損したのは、研究目的などのさして儲からない目的でクラスタ組んできた個人や中小研究機関なのです。

勿論、GeForce 搭載サーバを提供してきたデータセンター企業も、今まで投資してきたのがパァってことで損したわけでしょうが、「そもそも無保証の使い方を顧客に提供してきたこと自体にも問題があったんじゃないの?」とも私は思います。ねえ、さくら。

*1:私からすると nVIDIA と書いた方が未だにしっくりくるのですが。

*2:さくらの専用サーバ 高火力シリーズ Quad GPUモデルの新規提供一時停止のお知らせ | さくらインターネット

*3:Torvalds が怒るのは戦略的な目的があります。IntelAMD など既に参加しているオープンソース勢にとって自己正当化の理由にもなるからです。

*4:ベンチマークソフトなどもそうです。

*5:企業用のサーバとかは別ですよ

*6:「さくらのVPS」お試し期間中の利用方法についてのお願い | さくらインターネット

*7:フリーソフトウェアの関係者にも「仮想通貨」で寄付を募っているところが少なくありませんが、「仮想通貨」が注目されたのは、既存の通貨だと、国家権力などにコントロールされているということや、送金のトレーサビリティがあって秘匿性がないということがあります。「一山当てよう」といって「マイニング」している人々は、元来の目的を無視しています。