登入  |  English
感謝您對「自由軟體鑄造場」的支持與愛護,十多年來「自由軟體鑄造場」受中央研究院支持,並在資訊科學研究所以及資訊科技創新研究中心執行,現已完成階段性的任務。 原網站預計持續維運至 2021年底,網站內容基本上不會再更動。本網站由 Denny Huang 備份封存。
也紀念我們永遠的朋友 李士傑先生(Shih-Chieh Ilya Li)。
討論區
是否可部分變更授權? (1 位瀏覽者) (1) Guest
Go to bottom Favoured: 0
TOPIC: 是否可部分變更授權?
#230
是否可部分變更授權? 2009/05/15 18:36  (10 Years, 6 Months ago) Karma: 0  
事情是這樣的
我的程式原本是以 GPLv3 發佈
但是在發展過程中有一部分的程式碼要分離出來
以 header + dll 的方式連結,以利 plugin 擴充(暫且稱這部分為 libcore)
請問是否可在之後釋出的版本把 libcore 改為 LGPL,其他部分仍保持為 GPL 呢?
legnaleurc (User)
Fresh Boarder
Posts: 2
graphgraph
User Offline Click here to see the profile of this user
Logged Logged  
 
The administrator has disabled public write access.  
#232
Re:是否可部分變更授權? 2009/05/18 11:50  (10 Years, 6 Months ago) Karma: 10  
Hi legnaleurc,

只要這個軟體從頭至尾都是由您自行開發的,

那麼隨時變更授權方式都是可以的!

所以假設您原來的軟體專案是A軟體,

授權的方式是以GPL3來釋出,

而且軟體專案的內容完全係屬自行編寫。

那麼以下數種變更授權方式都是可行的,

A (GPL3授權)→ A (LGPL3授權)。

這種方式是將整個軟體專案都改授權掉。

或者是,

A (GPL3授權)→ A (CDDL授權)。

甚至是,

A (GPL3授權)→ A (Unopen原始碼的商業授權)。

前提是這整個軟體專案都是由您自行撰寫的,

且需注意的是,這個變更授權的效應只能向後生效

之前以GPL3授權釋出的版本並不能被撤銷

原來以GPL3的授權方式得到軟體者,永遠都能以GPL3的授權方式來運用該A軟體。

另外、您原文中所提到的變更授權方式比較近似下面這種,

A (GPL3授權)→ A-main componet (GPL3授權)+Libcore(Library改為LGPL3授權)。

這也是可以的,

只要前提符合:(1)整個軟體專案皆由您個人撰寫;(2)Libcore為函式庫軟體(LGPL3只適用在函式庫上)。

那麼這個改授權一樣是向後生效,

之前以GPL3授權釋出的版本並不能被撤銷,

原來以GPL3的授權方式得到A軟體專案者,也永遠都能以GPL3的授權方式來運用該A軟體。

約略是如此。

實際的案例可以看Nokia將Qt從4.5版開始,增加以LGPL 2.1授權發佈的選項:www.qtsoftware.com/about/news/lgpl-license-option-added-to-qt

另外要提醒的是,因為自由軟體授權不可事後撤銷

尤其是GPL3、LGPL3這類強烈Copyleft性質的自由軟體授權條款,

所以嚴格來說您變更授權方式後,

其實是「原授權與新授權雙軌平行並呈」的方式來讓使用者選用,

所以建議如果變更了原軟體的授權模式後,

可以增設新的版本別來讓使用者清楚的知悉這個改變,

例如,

原GPL3授權A程式為「版本1.0」。

之後A-main componet (GPL3授權)+Libcore(Library改為LGPL3授權)的版本,可以改稱為「版本2.0」或是「版本1.1」。

這樣使用者取用上比較不會產生誤會。

有後續問題歡迎接續討論。

敬祝 順心

20090518 1145 自由軟體鑄造場 林誠夏
lucien (Admin)
Moderator
Posts: 157
graph
User Offline Click here to see the profile of this user
Logged Logged  
 
The administrator has disabled public write access.  
#235
Re:是否可部分變更授權? 2009/05/18 22:56  (10 Years, 6 Months ago) Karma: 0  
也就是說雖然是只有部分模組更改授權
實際上是新增授權讓使用者選擇囉?

再請問一下,自行撰寫的是指
有用到其他函式庫,但是所有內容皆是自己撰寫嗎?

那麼如果我使用了某個函式庫A
它是編為動態連結,在編譯它時可以選擇以LGPL,GPL,non-free方式編譯
GPL和non-free擁有較多額外功能(因有動態連結到其他GPL或non-free程式庫)
我雖是使用LGPL方式編譯並發佈
但是客戶端有可能自行抽換A的dll,改為GPL或non-free的版本以取得更多功能
請問這種狀況下我是否也要跟著更動授權
或是責任在客戶端手上?
legnaleurc (User)
Fresh Boarder
Posts: 2
graphgraph
User Offline Click here to see the profile of this user
Logged Logged  
 
The administrator has disabled public write access.  
#236
Re:是否可部分變更授權? 2009/05/19 11:12  (10 Years, 6 Months ago) Karma: 10  
Hi legnaleurc,

簡單回覆您的問題如下,

一、雖然想做的是讓原GPL授權程式的部分模組更改授權,實際上是新增授權選項讓使用者選擇囉?

是的、如同我之前提到的,GPL授權的方式不能嗣後撤銷,這點在GPL2的時期有一些爭議,因為條款本身並沒有明示這點,但是自由軟體基金會的律師認為Copyleft不可撤銷的特性可從條文邏輯解釋可得:https://blog.milkingthegnu.org/2008/05/dual-licensing.html;那麼到了2007年GPL改版到第3版的時候,自由軟體基金會就把這句話直接寫明到GPL3的內容裡了,可參照GPL3第2條:All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met.

所以、原則上以GPL授權的作品一經釋出,即使是軟體的原始著作權利人,也不能嗣後將這個授權撤銷,但是基於您是軟體著作權利人的地位,您永遠也可以再以新的授權方式將該軟體重行釋出,所以之前才會說這是一種「授權雙軌並行並呈」的方式。

二、客戶端自行將LGPL授權的函式庫抽換為GPL授權的版本,或是更換為並不開放程式原始碼的其它版本,這個責任在客戶端還是在整個專案的原始散布者?

散布者、其實GPL授權條款並不去考慮究竟是誰做這個抽換動作的,重點在於、散布GPL授權目的碼的人要肩負後續提供程式原始碼的責任,所以簡單來說、最後的檔案是由誰散布的,就由誰來負責任。那麼如果如案例中提到的,整個程式原則上是以GPL來進行授權,嗣後客戶端自行將原本LGPL授權的函式庫抽換出來,改為UnOpen的私有函式庫(Proprietary Library),並且由客戶端自行散布該更動後的版本,那麼之後的爭議及責任原則上就由這個抽換函式庫的客戶端自行負責。

有後續問題歡迎接續討論。

敬祝 順心

20090519 1110 自由軟體鑄造場 林誠夏
lucien (Admin)
Moderator
Posts: 157
graph
User Offline Click here to see the profile of this user
Logged Logged  
 
The administrator has disabled public write access.  
Go to top