From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id 1E7056D10F for ; Thu, 4 Feb 2021 10:55:35 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 0705022313 for ; Thu, 4 Feb 2021 10:55:05 +0100 (CET) Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com [212.186.127.180]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS id E64AC22305 for ; Thu, 4 Feb 2021 10:55:03 +0100 (CET) Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1]) by proxmox-new.maurer-it.com (Proxmox) with ESMTP id B68BD461D3 for ; Thu, 4 Feb 2021 10:55:03 +0100 (CET) To: Thomas Lamprecht , Proxmox VE development discussion References: <20210203142536.28480-1-m.limbeck@proxmox.com> <20210203142536.28480-2-m.limbeck@proxmox.com> <091040d8-d2fd-326f-fe50-02eb1b69ca79@proxmox.com> From: Mira Limbeck Message-ID: <4f8fde70-00c9-b91a-25e7-7e8b045fdaf8@proxmox.com> Date: Thu, 4 Feb 2021 10:55:02 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.0 MIME-Version: 1.0 In-Reply-To: <091040d8-d2fd-326f-fe50-02eb1b69ca79@proxmox.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US X-SPAM-LEVEL: Spam detection results: 0 AWL 0.547 Adjusted score from AWL reputation of From: address KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment KAM_SHORT 0.001 Use of a URL Shortener for very short URL NICE_REPLY_A -0.178 Looks like a legit reply (A) RCVD_IN_DNSWL_MED -2.3 Sender listed at https://www.dnswl.org/, medium trust SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record URIBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [architecture.mk, proxmox.com, pkg-info.mk, gnu.org] Subject: Re: [pve-devel] [PATCH conntrack-tool v2 2/5] add packaging support X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 04 Feb 2021 09:55:35 -0000 On 2/4/21 8:08 AM, Thomas Lamprecht wrote: > On 03.02.21 15:25, Mira Limbeck wrote: >> Signed-off-by: Mira Limbeck >> --- >> v2: >> - unchanged > Some nits/comments inline. > You probably adapted this from proxmox-backup so my comments may hold true > there too. pmg-log-tracker actually > >> .cargo/config | 5 ++++ >> Makefile | 63 ++++++++++++++++++++++++++++++++++++++++++++ >> debian/changelog | 5 ++++ >> debian/copyright | 16 +++++++++++ >> debian/debcargo.toml | 17 ++++++++++++ >> debian/docs | 1 + >> 6 files changed, 107 insertions(+) >> create mode 100644 .cargo/config >> create mode 100644 Makefile >> create mode 100644 debian/changelog >> create mode 100644 debian/copyright >> create mode 100644 debian/debcargo.toml >> create mode 100644 debian/docs >> >> diff --git a/.cargo/config b/.cargo/config >> new file mode 100644 >> index 0000000..3b5b6e4 >> --- /dev/null >> +++ b/.cargo/config >> @@ -0,0 +1,5 @@ >> +[source] >> +[source.debian-packages] >> +directory = "/usr/share/cargo/registry" >> +[source.crates-io] >> +replace-with = "debian-packages" >> diff --git a/Makefile b/Makefile >> new file mode 100644 >> index 0000000..8ea2f8a >> --- /dev/null >> +++ b/Makefile >> @@ -0,0 +1,63 @@ >> +include /usr/share/dpkg/pkg-info.mk >> +include /usr/share/dpkg/architecture.mk >> + >> +PACKAGE=pve-conntrack-tool >> + >> +GITVERSION:=$(shell git rev-parse HEAD) >> + >> +DEB=${PACKAGE}_${DEB_VERSION_UPSTREAM_REVISION}_${DEB_BUILD_ARCH}.deb >> +DSC=rust-${PACKAGE}_${DEB_VERSION_UPSTREAM_REVISION}.dsc >> + >> +ifeq ($(BUILD_MODE), release) >> +CARGO_BUILD_ARGS += --release >> +COMPILEDIR := target/release >> +else >> +COMPILEDIR := target/debug >> +endif >> + >> +all: cargo-build $(SUBDIRS) >> + >> +.PHONY: cargo-build >> +cargo-build: >> + cargo build $(CARGO_BUILD_ARGS) >> + >> +.PHONY: build >> +build: > We normally try to use a more Debian conform build directory, like: > > BUILDDIR ?= ${PACKAGE}-${DEB_VERSION_UPSTREAM} > > This way one can also easily set their own via a make parameter. > > >> + rm -rf build >> + debcargo package \ >> + --config debian/debcargo.toml \ >> + --changelog-ready \ >> + --no-overlay-write-back \ >> + --directory build \ >> + $(PACKAGE) \ >> + $(shell dpkg-parsechangelog -l debian/changelog -SVersion | sed -e 's/-.*//') >> + rm build/Cargo.lock >> + find build/debian -name "*.hint" -delete > can we do all in a temporary directory and do a rename at the end? making this > target actin a bit more "atomic". Yes, will change that in v3 > >> + >> +.PHONY: deb >> +deb: $(DEB) >> +$(DEB): build >> + cd build; dpkg-buildpackage -b -us -uc --no-pre-clean --build-profiles=nodoc > is the `nodoc` actually required? Is it always generated by debcargo, as I do not > see any d/control like reference to it. > >> + lintian $(DEB) >> + >> +.PHONY: dsc >> +dsc: $(DSC) >> +$(DSC): build >> + cd build; dpkg-buildpackage -S -us -uc -d -nc >> + lintian $(DSC) >> + >> +.PHONY: dinstall >> +dinstall: ${DEB} >> + dpkg -i ${DEB} >> + >> +.PHONY: upload >> +upload: ${DEB} ${DBG_DEB} >> + tar cf - ${DEB} ${DBG_DEB}| ssh -X repoman@repo.proxmox.com -- upload --product pve --dist buster --arch ${DEB_BUILD_ARCH} >> + >> +.PHONY: distclean >> +distclean: clean >> + >> +.PHONY: clean >> +clean: >> + rm -rf *.deb ${PACKAGE}-* *.buildinfo *.changes *.dsc rust-${PACKAGE}_*.tar.?z build/ >> + find . -name '*~' -exec rm {} ';' >> diff --git a/debian/changelog b/debian/changelog >> new file mode 100644 >> index 0000000..700e739 >> --- /dev/null >> +++ b/debian/changelog >> @@ -0,0 +1,5 @@ >> +rust-pve-conntrack-tool (1.0.0-1) pve; urgency=medium >> + >> + * Initial release. >> + >> + -- Mira Limbeck Thu, 08 Oct 2020 14:04:19 +0200 >> diff --git a/debian/copyright b/debian/copyright >> new file mode 100644 >> index 0000000..4d6f36a >> --- /dev/null >> +++ b/debian/copyright >> @@ -0,0 +1,16 @@ >> +Copyright (C) 2020 Proxmox Server Solutions GmbH > 2020 - 2021 Haven't touched the patch at all since the first series, sorry about that. Will fix all these things in v3. > >> + >> +This software is written by Proxmox Server Solutions GmbH >> + >> +This program is free software: you can redistribute it and/or modify >> +it under the terms of the GNU Affero General Public License as published by >> +the Free Software Foundation, either version 3 of the License, or >> +(at your option) any later version. >> + >> +This program is distributed in the hope that it will be useful, >> +but WITHOUT ANY WARRANTY; without even the implied warranty of >> +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the >> +GNU Affero General Public License for more details. >> + >> +You should have received a copy of the GNU Affero General Public License >> +along with this program. If not, see . >> diff --git a/debian/debcargo.toml b/debian/debcargo.toml >> new file mode 100644 >> index 0000000..66c3e07 >> --- /dev/null >> +++ b/debian/debcargo.toml >> @@ -0,0 +1,17 @@ >> +overlay = "." >> +crate_src_path = ".." >> + >> +[source] >> +maintainer = "Proxmox Support Team " >> +section = "admin" >> +homepage = "http://www.proxmox.com" >> +vcs_git = "git://git.proxmox.com/git/pve-conntrack-tool.git" >> +vcs_browser = "https://git.proxmox.com/?p=pve-conntrack-tool.git;a=summary" >> + >> +[package] >> +summary = "PVE Conntrack Tool" >> +description = "Tool to dump and import conntracks" >> + >> +[packages.bin] >> +build-depends = ["libmnl-dev", "libnetfilter-conntrack-dev"] >> +depends = ["libmnl0", "libnetfilter-conntrack3"] >> diff --git a/debian/docs b/debian/docs >> new file mode 100644 >> index 0000000..8696672 >> --- /dev/null >> +++ b/debian/docs >> @@ -0,0 +1 @@ >> +debian/SOURCE >>