![日記 日記](https://srad.jp/static/topics/journal_64.png)
beroの日記: Docker/VagrantイメージのGPLバイナリ頒布問題 5
日記 by
bero
GPLソフトをバイナリ頒布するときは、ソースコードを同時に頒布するか、後で入手できるという「書面」が必要だ。
今更だが、Docker HubやVagrant boxはバイナリ頒布しかしてないことに気づいた。
centosとかdebianとかの著名ディストリビューションに、独自ソフトを追加したり特定用途向けに設定済みにしたりした「派生ディストリビューション」と呼ばれるものがある。
このインストールイメージには元ディストリビューションのバイナリも含まれるので、「元ディストリビューション部分のソースも頒布しろ」と派生ディストリビューション作者がFSFに怒られたことがあった。
GPLの規約が派生ディストリビューションに及ぼす憂慮すべき影響 2006
同じ理由で、DockerイメージやVagrantイメージ「のみ」を頒布するのはGPL違反ではなかろうか。
すべてのイメージに含まれているであろうGNU bashの著作権を持つFSF、またはそれに類する広く使われているGPLソフト(busybox等)の作者が法的に本気になれば、昨今のコンテナエコシステムをいつでも殺せるのではなかろうか。
まあ、俺が気づいてなかっただけで気づいて当然のことだから、今まで黙認されてたのを今さらやんないだろうけど。
IaaSクラウドのイメージも問題といえば問題だが、コピー先の仮想マシンもクラウド社内なので頒布にあたらないと強弁できる...のか?
それはGPL違反じゃない (スコア:0)
GPLはソースコードの開示要求があったらそれに応じなければならないだけで
要求がなければ公開しなくても大丈夫です
Re: (スコア:0)
それは物理的な製品やメディアに組み込んで配布する場合です。
GPLv3 (bash)の場合 (スコア:0)
ネットワークにアクセスしてGPLv3のバイナリを入手させる場合、
同様な方法でソースにアクセスできる必要があります。(6のd)
自分が配布するより長生きすることが保証されていれば、
他人のサーバーを明示することも可能なようです。
バイナリの近くに入手方法を明示する必要はあります。
してなければ違反。
ただし書面というほどのものかどうかは?
派生ディストリビューション問題は、物理的な媒体を使ってるなら
他人にソースを配布させることはできないから(ディストリは6のc
には該当しない)、そこが問題かな。
ネットワークからダウンロードさせるなら、自分がバイナリを配布中は
元ディストリビューションからソースが配布されることを保証できていれば、
倫理的な問題になる。
Re: (スコア:0)
補足しておくと、要するにネットワークからダウンロードさせる場合、
後で配布というのができなくて、その場で提供しなければならない。
GPLv2にネットワークと物理的媒体を分けるような規定はなかった。
Re:GPLv3 (bash)の場合 (スコア:1)
v2 だと別配布するには、2-b) 別配布するという申し出を書いた3年間有効な「書面」が必要で、
ネット配布だと物理書面は添付できないから、2-a) ソース添付 しか選択肢がない。(事前に書面を郵送する手はある)
v3 だと 物理媒体だと同じく書面が必要だが、ネットだと#3642826 [srad.jp]の指摘のように、「書面」要件はない。
ただ、Dockerfileが
RUN git clone ほげほげ
だったりするのは、バイナリイメージに「対応するソース」って、どのcommitかイメージ配布者にすら特定不能では。
タイムスタンプから逆算できなくもないだろうが、
「どこで見つけられるかを明確に指示」したことにはなるまい。