2019年2月21日
OSSライセンスMeetupとは
その名の通り OSS
今回はGPLに主な焦点を当て、
これまで、
Meetupの雰囲気
前回より募集枠が少なかったにもかかわらず、
セッション「実録:GPL違反とその対応」
GPL違反とその対応
2002年
しかし公開からしばらくして、
合致しないものとなっていた原因は次のようなことでした。
- 各国語対応のため、
gettextパッケージ (GPL-2ライセンス) のソースコードの一部 (libintl) を利用したにもかかわらず、 該当の配布物 (ライセンスを明確にしていないソースコード・ 非GPLのソースコード、 およびバイナリのみ公開のライブラリを含む) がGPLでの配布ではなかった - ソースコードを公開していないライブラリ内でLGPL-2.
1 のライブラリ(glibc) を利用していたが、 該当の配布物はリバースエンジニアリングを禁止するなど、 使用許諾がLGPLに準拠するものではなかった
指摘を受けて、
- 各国語対応のため、
gettextパッケージをLGPL準拠バージョンである 0. 10. 40 (当時) 以降に差し替えたうえで、 モジュールをリンクする形で利用するように修正 - 自社が開発、
権利を持つコードについて、 独自ライセンスを作成してFree Standards Group (当時) に確認。明確にライセンスを設定 - LGPL第6条に基づき、
非公開コンポーネントのリバースエンジニアリングを許可するように、 配布していたバイナリの使用許諾を修正
振り返り
こうして、
筆者も当時、
対応に関する考察として、
- 1.なぜLinux版のドライバを開発するに至ったのか?
- Linuxの発展や提供の加速によりユーザの利点を考慮したということと、
メーカーでは公式にサポートするまでの知識や体制が不足 (ディストリビューションの種類が多いなど) していた - 2.なぜすべてオープンソース化しないのか?
- 差別化のために高品位な入出力を提供する必要があったが、
それを実現する部分 (モジュール) が企業の知的財産と言える部分に抵触するため、 完全なオープン化はできなかった - 3.なぜすべてクローズドソース化しないのか?
- WindowsやMacではOSのモジュールを利活用することが一般的だが、
Linuxではその部分がOSのモジュールとしては提供されていない。OSSモジュールがそれに該当すると考えているため、 すべてスクラッチでクローズドなソースをベースに作成はしない
そして、
- OSSを開発すること
- OSSを利活用すること
その中で、
まとめ
最後に宮田さんはOSSの利活用とライセンスについて次のようにまとめて、
- OSSの利活用方法が配布する内容や利用するOSSのライセンスに沿っているか、
事前に検討が必要 - OSSライセンスに関することは、
自分の判断だけではなく複数人でしつこいほど確認しても損はない (それが自分たちの知見にもなる) - 開発者寄りのライセンスの内容なので、
法務に丸投げはできない。開発者と法務担当者で専門知識を持ち合って協議することがよい - LGPLの動的/
静的リンクなど、 ネット上の情報が正しいとは限らない。必ず元情報にあたって確認が必要 - それでも、
もしOSSライセンスに沿わないと指摘を受けた場合は 「調査」 と 「対応」 を最優先する。ただし、 調査と対応には 「労力」 と 「時間」 が必要 - OSSライセンスに沿わない利活用を考えている人はいない
(はず)
ディスカッション
イベントの後半は小笠原さんをモデレータに講演者の宮田さんを交えてのディスカッションです
ディスカッションで会場から出された質問と回答、
- Q:一番最初にリリースしたドライバはGPL違反したままなので、
ソースを公開してほしいと言われなかったのか? - A:言われてはいない。指摘をされただけ。
- Q:今回の話は古い話だけど、
今のGPL v3とかAGPLになった場合の知見はあるか? - A:GPL v3の公開が予定されていることは認識していたので、
v3のプレビューもしていた。 - Q:改定後のライセンスに条件付きGPLになっている。これはGPLの総本山であるFSF的には嬉しくないはずだと思うが、
FSFはそれを称賛していたのはなぜか? - A:厳格さを求めてドライバの公開を中止されるとLinuxがデスクトップとしての使い勝手が落ちることになるのをFSFが危惧していた。また、
この件以外にも行ってきていたOSSへの貢献を評価してもらえた。 - Q:Contributor License Agreement
(CLA) をどうするか? - A:その内容は厳密な契約書を交わすようなものから、
READMEに書くレベルのものまで、 さまざま。法的拘束力を重視するとコントリビューションの敷居が上がるし、 落とし所が難しいが、 法務部門と協議してバランスをとるしかない。 - Q:AGPLの伝播性:importしたときはサーバサイドのソースも含める?
- A:
(質問への直接の答えではないが) 関連した話題として、 JSのminifyやconcat時におけるGPLv3の扱いについて、 GNUが 「JavaScriptの罠」 という文書を出している。日本語訳は古くなってしまっているので誰か翻訳をしてほしい。
参加者からの質問が非常に活発で、
懇親会
この会の懇親会はソフトドリンクやスナック菓子を片手に参加者同士、
あとがき
今回は前回より時間が少し長くなっていたのですが、
前回も思ったのですが、
- 何をしてはいけないか
- もし違反したときにどういう対応を考えなければいけないか
は認識しておく必要があると思います。
OSSを使ったシステム/
もちろん、
最後になりましたが、