パスワードを忘れた? アカウント作成
13946368 journal
日記

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クラウドのイメージも問題といえば問題だが、コピー先の仮想マシンもクラウド社内なので頒布にあたらないと強弁できる...のか?

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by Anonymous Coward on 2019年06月29日 21時21分 (#3642824)

    GPLはソースコードの開示要求があったらそれに応じなければならないだけで
    要求がなければ公開しなくても大丈夫です

    • by Anonymous Coward

      それは物理的な製品やメディアに組み込んで配布する場合です。

  • by Anonymous Coward on 2019年06月29日 21時22分 (#3642826)

    ネットワークにアクセスしてGPLv3のバイナリを入手させる場合、
    同様な方法でソースにアクセスできる必要があります。(6のd)
    自分が配布するより長生きすることが保証されていれば、
    他人のサーバーを明示することも可能なようです。
    バイナリの近くに入手方法を明示する必要はあります。
    してなければ違反。
    ただし書面というほどのものかどうかは?

    派生ディストリビューション問題は、物理的な媒体を使ってるなら
    他人にソースを配布させることはできないから(ディストリは6のc
    には該当しない)、そこが問題かな。
    ネットワークからダウンロードさせるなら、自分がバイナリを配布中は
    元ディストリビューションからソースが配布されることを保証できていれば、
    倫理的な問題になる。

    • by Anonymous Coward

      補足しておくと、要するにネットワークからダウンロードさせる場合、
      後で配布というのができなくて、その場で提供しなければならない。

      GPLv2にネットワークと物理的媒体を分けるような規定はなかった。

      • by bero (5057) on 2019年06月30日 3時18分 (#3642903) 日記

        v2 だと別配布するには、2-b) 別配布するという申し出を書いた3年間有効な「書面」が必要で、
        ネット配布だと物理書面は添付できないから、2-a) ソース添付 しか選択肢がない。(事前に書面を郵送する手はある)

        v3 だと 物理媒体だと同じく書面が必要だが、ネットだと#3642826 [srad.jp]の指摘のように、「書面」要件はない。

        ただ、Dockerfileが

        RUN git clone ほげほげ

        だったりするのは、バイナリイメージに「対応するソース」って、どのcommitかイメージ配布者にすら特定不能では。
        タイムスタンプから逆算できなくもないだろうが、
        「どこで見つけられるかを明確に指示」したことにはなるまい。

        親コメント
typodupeerror

目玉の数さえ十分あれば、どんなバグも深刻ではない -- Eric Raymond

読み込み中...