2015-06-12 53 views
2

我正在嘗試使用fpm創建一個deb包,其中包含一些shell腳本文件。但deb包應該創建一個名爲vim(Linux中的vim編輯器)的依賴項。意思是在安裝deb包的時候,應該先安裝vim然後腳本文件。使用fpm構建依賴關係的deb包創建

要求是在安裝deb包時,vim應該先安裝,然後再安裝腳本文件。

fpm命令我曾嘗試是:

fpm -s dir -t deb -n 'test' --deb-pre-depends vim --after-install /home/test/testfile.sh -C /home test 

和DEB包後創建的。安裝時,我收到以下錯誤:

dpkg: regarding test_1.0_amd64.deb containing test, pre-dependency problem: 
test pre-depends on vim 
    vim is not installed. 

dpkg: error processing archive test_1.0_amd64.deb (--install): 
pre-dependency problem - not installing test 
Errors were encountered while processing: 
test_1.0_amd64.deb 

在此先感謝...

回答

2

由於@Vorsprung爲alredy提編輯您需要使用--depends

fpm -s dir \ 
    -t deb \ 
    -n 'test' \ 
    --depends vim \ 
    --after-install /home/test/testfile.sh \ 
    -C /home test 

你需要知道dpkg不會爲你安裝的依賴關係,但你可以運行apt-get事後安裝所有缺少的依賴關係:

dpkg -i test.deb 
apt-get install -f