2014-01-31 65 views
1

早些時候,我成功創建了debian軟件包,這很簡單。但現在,我必須爲我的應用程序創建相同的應用程序,這取決於外部程序包。 libwebkitgtk-1.0-0和jdk1.7.0是所需的外部軟件包。我希望他們自動安裝。另外我的軟件有一定的數據,需要存儲在用戶的主目錄中。在Ubuntu 12.04上創建Debian軟件包LTS

請指導我。

回答

2

您的debian/control文件需要爲其需要的其他包聲明Depends:。 Apt將爲您下載並安裝它們,dpkg將拒絕安裝,除非它們已安裝。

Debian軟件包沒有用戶主目錄的條目。如果所需的文件丟失,可能會創建一個包含用戶主目錄的包裝,其中包含/usr/share/yourpackage/config/*的副本。

#!/bin/sh 
test -d $HOME/.yourpackage || 
    cp -r /usr/share/yourpackage/config $HOME/.yourpackage 
exec /usr/lib/yourpackage/yourpackage.bin "[email protected]" 

所以真正的二進制是yourpackage.bin,這是包裝/usr/bin/yourpackage

對於額外的點,請使用環境變量,以便路徑不會完全硬編碼。對你自己來說更重要(使測試更容易),而不是對你的用戶來說更重要,但要牢記兩者的需求。

(提示:${YOURPACKAGE_SITE_CONFIG-/usr/share/yourpackage/config}將擴大到$YOURPACKAGE_SITE_CONFIG的值,如果它被設置,否則/usr/share/yourpackage/config你可能想要做的$YOURPACKAGE_CONFIG$YOURPACKAGE_BIN類似的東西,以便能夠在構建目錄中覆蓋了運行一個簡單的測試。全部三個)。