.deb
簡単なパッケージを作成しました。フッ素PM。このパッケージは非常に基本的なものであり、以下を実行します。ドッカーが書いたドキュメント(私の他の質問を見るここパッケージ記述の場合)。
パッケージに必要なものを指定しようとしています。ドッカーそしてドッカーが書いたそして:
fpm \
-s dir -t deb \
--deb-use-file-permissions \
-p diagnosticator-0.1.0-1-any.deb \
--name diagnosticator \
--license agpl3 \
--version 0.1.0 \
--architecture all \
--depends bash \
--depends docker \
--depends docker-compose \
--description "Diagnosticator local app" \
--url "https://diagnosticator.com" \
--maintainer "Enrico Cocchi" \
diagnosticator=/usr/bin/diagnosticator diagnosticator.1=/usr/share/man/man1/diagnosticator.1 docker-compose.yml=/usr/lib/diagnosticator/docker-compose.yml
しかし、次のようにインストールしようとするとsudo dpkg -i diagnosticator-0.1.0-1-any.deb
:
dpkg: dependency problems prevent configuration of diagnosticator:
diagnosticator depends on docker; however:
Package docker is not installed.
diagnosticator depends on docker-compose; however:
Package docker-compose is not installed.
私のユーザーのためにインストールして動作していても、次のようになります。
$ which docker
/usr/bin/docker
$ which docker-compose
/usr/local/bin/docker-compose
私がここで何を間違っているのか?
答え1
パッケージの依存関係は、バイナリではなくパッケージ名によって異なります。
の場合は、次のコマンドdocker
を実行して適切なパッケージ名を決定できます。
dpkg -S /usr/bin/docker
の場合、docker-compose
最初に独自のパッケージを作成するか、次に切り替える必要があります。関連パッケージ。
apt install ./diagnosticator-0.1.0-1-any.deb
パッケージをインストールする代わりにを使用して依存関係をdpkg -i
解決しようとすることもできます。また、パッケージファイル名はdiagnosticator_0.1.0-1_all.deb
。