- Vixual - http://www.vixual.net/blog -

[轉載]讓人既愛又頭痛的 GNU/GPL

轉載自: 自由軟體鑄造場


GNU Genral Public License(以下簡稱GNU/GPL)是第一份自由軟體授權條款,也是目前最廣為被使用的授權條款之一。自由軟體之父 Richard M. Stallman(以下稱 Stallman)為了替他的軟體開發計畫- GNU 計畫尋找適當的授權方式,在 1989 年草擬出 GNU/GPL 第一版。它的整個架構與理念源自於 Stallman 所宣示的軟體使用者四大自由(註一):


為了實現上述研究自由與改良自由,使用者必須可以取得軟體原始碼。而任何一個符合上述四大自由的軟體就可以被稱為自由軟體。

為了落實四大自由,Stallman 設計了一套不同於當時既有的著作權授權模式-copyleft。這套制度最大的特色有二:

透過這樣一套機制,不僅僅最初的原始程式版本是免授權金、開放原始碼,就連之後所產生出來的修改版本也一樣。所需要注意的是,這一切的基礎是奠基在著作權制度之上,所以自由軟體仍然是有著作權的軟體。

Copyleft 制度落實為具有授權條款文字就成為了 GNU/GPL。它的主要內容包括:

GNU/GPL 因為基於 copyleft 所發展出來,再加上條款當中規定,對於就算是僅僅擷取一小段原始碼來使用,因此而開發出來的程式也必須要透過 GNU/GPL 來授權,所以有人稱 GNU/GPL 像是病毒一般(viral license),會將其他的程式原始碼也感染成為開放狀態。

這種病毒的感染特性,雖然維持了 Stallman 對於自由軟體自由開放的理念,卻剝奪了一些使用者對於軟體授權條款內容的選擇權利,所以 GNU/GPL 是集毀譽於一身的授權條款。

這樣的特性對於認同自由軟體理念的程式開發者以及單純的程式使用者來說,是相當受到歡迎的,但是對於那些想要使用 GNU/GPL 程式原始碼,卻不願意將所開發程式原始碼公開出來的人來說,卻是相當頭痛的,因為他們必須割愛去另外尋找合適的替代程式。此外,還有一些人使用了GNU/GPL 程式原始碼,卻不清楚其中的規定,之後才知道必須開放原始碼,卻礙於一些理由無法將原始碼公開,這種情況在承接政府計畫開發軟體時,就有可能發生,因為依據相關規定,接受政府經費補助所開發出來的軟體,原則上必須在我國境內使用,雖然有例外規定可依循,但是礙於既有行政作業程序的僵化與繁複,依據例外規定並非易事。

GNU/GPL 目前最新的版本為第二版,其中當然有許多適用上的問題,因此由 Stallman 所創辦的自由軟體基金會(註二)正在著手草擬第三版,期待修改出來的版本更為完善。不過上述 GNU/GPL 令人既愛又頭痛的特性,應該還是會繼續被保留,因為就是這些特性使得自由軟體得以廣泛地流通,並且受到越來越多人的認同與支持。

註一:有關GNU計畫的緣起與GPL產生背景請參見: http://www.gnu.org/
註二:自由軟體基金會(Free Software Foundation, FSF): http://www.fsf.org/

相關網頁