#osxchat blog

2005/11/11

軟體包裝

作者: gugod

在 Mac 上面,常見的軟體包裝方式有三種:DMG、Package、與 Darwinports。我在 Wiki 上面放了一份簡單的比較表,請參參:Mac 軟體包裝比較

簡單的說,如果要散佈出去的軟體是一個獨立的應用程式,那麼可以很簡單的採用 DMG 的方式,直接把應用程式放在做好的 DMG(也就是磁碟映像 Disk Image)。這個方法在製作上最為省事(只要把整個應用程式的資料夾拖進磁碟映像檔裡面即可),在安裝上也最為省事(只要把磁碟映像檔裡面的東西拖出來即可)。以此方法散佈軟體,常見的例子有 Firefox

如果要安裝一些檔案到系統資源庫目錄,那麼前述方法就不適用了,總不成要使用者自行打開資源庫把檔案拖進去吧?(當然也可以啦,大家可能會被你嚇壞就是了)這時候要用的就是 Package,使用 XCode 附的 PackageMaker,可以做出完整的安裝程式(正如 Windows 的「下一步」安裝程式),有圖形界面可以安排要安裝的檔案,可以來自各個目錄、沒有限制,也可以指定需要系統管理員的密碼才得輸入,或是安裝完畢之後要重新開始等等選項。OpenVanilla 輸入法框架 在 Mac 上就是使用這種方法。

因為 DMG 其實只是磁碟映像檔而已,所以也可以把做好的 Package 丟進一個映像檔,然後散佈映像檔,這樣也很方便,大家抓回映像檔之後只要點兩下裡面的安裝程式,就可以進行安裝。當然,應用程式也可是可以做成安裝程式的,只不過在安裝上不會比用滑鼠拖拉方便吧(但也可以說,全數使用安裝程式,具有「一致性」,所以大家比較容易習慣。我想這點見仁見智,要方便的用只滑鼠拖拉就安裝軟體,勢必會有些犧牲吧。)

最後就是非常技客風味的 Darwinports。說起來這種方式跟做安裝程式很像,只是,因為其命令列界面的特性,使得所有過程都很容易自動化,而且比較便於把許多其他 Unix 類作業系統的軟體移植上 Mac 上。現在在 Darwinports 主目錄裡面的上千個軟體,泰半都是在 Linux 或是 FreeBSD 上面開發的。只是由於 Mac 骨子裡是 BSD ,也稱得上是一種 Unix 類的系統,所以要移植過來還算簡單(當然也不見得總是很簡單,會有很細節的系統標準界面問題,不過這裡就不討論了。)

簡單介紹到此,這三種方式從最直觀的方法(最省事)到最技巧的方法(最有彈性)都包括了,說得上是相當完善了。有興趣的朋友不妨跟據需求試試。

0 篇留言:

張貼留言

? 回前頁