2006年11月24日 星期五

自由軟體及開源碼商業行為論(一)

因為最近的一些所見事物,我想要把幾個比較具體的部份,寫下來我對所謂自由軟體及開源碼商業行為,到底怎麼可以,怎麼不行,怎麼樣才是最佳的想法。以下的問答多參考自GNU/GPL的問答集

1.定義:什麼是自由軟體及開源碼(Free and Open Source Software)
根據Wikipedia上的定義:
「Free software is the term introduced by Richard Stallman in 1983 for software which the user can use for any purpose, study the source code of, adapt to their needs, and redistribute - modified or unmodified. The ambiguity of the English word "free" in the term means that, if not explained, "free software" can be misunderstood to mean software that is available without charge. To address this, many people have suggested alternative names.」
自由軟體是指讓使用者有各種軟體用途上的自由,如研究它的原始碼、用於想用的地方、散佈 - 不論是用現成或自己修改。Free並不表示「免費」之意,這是因為英文字的曖昧意思造成的誤解。

「免費」的觀念其實是備受爭議的,關於FOSS有兩大組織製定及發展相關標準,一個是Free Software Foundation(FSF),另一個是Open Source Initiative(OSI)。前者是知名的GNU/GPL授權規定的制定者,後者的主要是以「開源碼」為主要口號的宣傳及推廣為主。當然開源碼這個口號是希望能親近企業用戶,讓一般人對於FOSS反商的印象減少,也避開Free=免費的迷思。

FOSS的發展歷史自1985年FSF至今,已經超過20個年頭。雖然軟體技術日新月異,但是這個觀念仍然對許多人來說是很新的,而且因為太過新穎或反商的錯誤形象常常造成誤解。

2.FOSS可以從事商業行為?
從以上的FOSS定義,就可以知道商業行為和FOSS的定義是兩回事。FOSS並沒有規定不能從事軟體商業行為這擋子事,只是說明了使用者應該擁有什麼樣的軟體自由。

3.我如果修改了一個FOSS,一定要公開嗎?
不用,軟體自由除了給你發佈軟體的自由,你也可以選擇不發佈。FOSS讓你可以自由修改與使用。反之如果你知道有個人有個GPL的軟體,你向他要,他可以不給你。

4.我如果修改了一個FOSS(以GPL授權規定為例),想要把它發佈出去,修改的部份也會變成GPL?
如果不加以宣告就會變成自動以GPL授權規定。所以如果你不要把修改的部份自動變成GPL,必須要很明確的在公開處宣告你的修改部份,不然就會變成GPL。

GPL規定你發佈時,也必須要把修改的原始碼一並發佈。但允許你用各種方式發佈在公開場合,不一定只能透過網路。

5.我可以販賣FOSS(以GPL授權規定為例)嗎?有什麼要注意的?
任何人都可以作件事。這在GPL定義中稱為 right to sell copies(販賣複製版本的權利)。只有一點是需要注意,就是「販賣只有編譯過二進位執行碼版本時,必須附上原始碼」。這個是台灣最近許多大廠的所謂嵌入式linux最近被告,然後還被告成功的主要關鍵點。

6.我可以用讓人下載FOSS(以GPL授權規定為例)來收取費用嗎?有什麼要注意的?
可以。但是你必須提供「同價值的存取(equivalent access)」在你只有提供二進位版本時,意思是當你提供編譯過二進位執行碼版本時,也是提供原始碼給人下載,而且下載原始碼的價錢不能比下載二進位版本來得高。

沒有留言: