From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from localhost (localhost [127.0.0.1]) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTP id 255E126226 for ; Fri, 8 Jun 2018 12:43:57 -0400 (EDT) Received: from turing.freelists.org ([127.0.0.1]) by localhost (turing.freelists.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id rnVHJJQRN4Wt for ; Fri, 8 Jun 2018 12:43:57 -0400 (EDT) Received: from smtp39.i.mail.ru (smtp39.i.mail.ru [94.100.177.99]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTPS id 5FEE02621A for ; Fri, 8 Jun 2018 12:43:56 -0400 (EDT) From: Alexander Turenko Subject: [tarantool-patches] [PATCH] debian: don't install systemd service file twice Date: Fri, 8 Jun 2018 19:43:38 +0300 Message-Id: Sender: tarantool-patches-bounce@freelists.org Errors-to: tarantool-patches-bounce@freelists.org Reply-To: tarantool-patches@freelists.org List-help: List-unsubscribe: List-software: Ecartis version 1.0.0 List-Id: tarantool-patches List-subscribe: List-owner: List-post: List-archive: To: Konstantin Osipov , Kirill Yukhin Cc: Alexander Turenko , tarantool-patches@freelists.org It fixes the following errors during tarantool installation from packages on debian / ubuntu: ``` Unpacking tarantool (1.9.1.23.gacbd91c-1) ... dpkg: error processing archive /var/cache/apt/archives/tarantool_1.9.1.23.gacbd91c-1_amd64.deb (--unpack): trying to overwrite '/lib/systemd/system/tarantool.service', which is also in package tarantool-common 1.9.1.23.gacbd91c-1 ``` The problem is that tarantool.service file was shipped with tarantool-common and tarantool packages both. It is the regression after 8925b8622f381378684de633e917229051e3482f. The way to avoid installing / enabling the service file within tarantool package is to pass `--name` option to dh_systemd_enable, but do not pass the service file name. In that case dh_systemd_enable does not found the service file and does not enforce existence of the file. Hope there is less hacky way to do so, but I don't found one at the moment. --- issue: no branch: Totktonada/fix-debian-packages travis-ci: https://travis-ci.org/tarantool/tarantool/builds/389768109 debian/rules | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/debian/rules b/debian/rules index f3be35edc..edfecfc33 100755 --- a/debian/rules +++ b/debian/rules @@ -20,9 +20,12 @@ DEB_CMAKE_EXTRA_FLAGS := \ -DWITH_SYSVINIT=ON \ -DWITH_SYSTEMD=$(WITH_SYSTEMD) -DEB_DH_INSTALLINIT_ARGS := --name=tarantool +# Install tarantool.service within tarantool-common package, but does not +# install it within tarantool and tarantool-dev packages. +DEB_DH_INSTALLINIT_ARGS := --name=tarantool +DEB_DH_SYSTEMD_ENABLE_ARGS_tarantool := --name=tarantool DEB_DH_SYSTEMD_ENABLE_ARGS_tarantool-common := --name=tarantool tarantool.service -DEB_DH_SYSTEMD_START_ARGS_tarantool-common := --no-restart-on-upgrade tarantool.service +DEB_DH_SYSTEMD_START_ARGS_tarantool-common := --no-restart-on-upgrade tarantool.service # Needed for proper backtraces in fiber.info() DEB_DH_STRIP_ARGS := -X/usr/bin/tarantool -- 2.17.1