我正在尝试使用fpm创建一个deb包,其中包含一些shell脚本文件,但是deb包应该使用名为vim(Linux中的vim编辑器)的依赖项来创建。意味着在安装deb软件包时,应先安装vim,然后再安装脚本文件。
要求是在安装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
提前致谢...
最佳答案
正如@Vorsprung所提到的,您需要使用--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