既存の Debian パッケージに systemd サービスファイルを追加しようとしています。フォローするhttps://wiki.debian.org/Teams/pkg-systemd/Packagingdebian/packagename.service
だから私のdebhelper
バージョンは9.xなので、私も次のことをしました。
- 次へ
dh-systemd
追加Build-Depends
debian/control
- コマンド
--with systemd
に追加されました。dh
debian/rules
再構築パッケージを使用すると、debuild -i -us -uc -b
次の出力で失敗します。
Now running lintian...
[...]
W: packagename: init.d-script-not-marked-as-conffile etc/init.d/packagename
E: packagename: init.d-script-not-included-in-package etc/init.d/packagename
ファイルがある場合は、ビルドスクリプトにinit.dスクリプトが必要なようです.service
。実際に生成されたコンテンツには、DEBIAN/postinst
次のセクションが含まれます。
# Automatically added by dh_installinit
if [ -x "/etc/init.d/infinoted" ]; then
update-rc.d infinoted defaults >/dev/null
invoke-rc.d infinoted start || exit $?
fi
# End automatically added section
これが予想される動作ですか?ファイルを含めるときは常にSysV initスクリプトを含める必要がありますか.service
?それ以外の場合、このセクションが生成されないように推奨される方法は何ですか?
私のシステムはDebian Jessieです。
答え1
オーバーレイはdh_installinit
私にとって効果的です。次の項目に追加しましたdebian/rules
。
override_dh_installinit:
true
それでもsystemdデバイスをインストールし、すべてが期待どおりに機能しているようです。
しかし、これが期待される動作かバグかはまだわかりません。私はDebian StretchやSidではテストしておらず、Jessieでのみテストしました。