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)) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id BA4C2717DA; Fri, 11 Jun 2021 13:44:49 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 1122710DEB; Fri, 11 Jun 2021 13:44:44 +0200 (CEST) Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com [94.136.29.106]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS id 3419810918; Fri, 11 Jun 2021 13:44:28 +0200 (CEST) Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1]) by proxmox-new.maurer-it.com (Proxmox) with ESMTP id EAD9342F7F; Fri, 11 Jun 2021 13:44:27 +0200 (CEST) From: Fabian Ebner To: pve-devel@lists.proxmox.com, pbs-devel@lists.proxmox.com Date: Fri, 11 Jun 2021 13:44:11 +0200 Message-Id: <20210611114418.28772-23-f.ebner@proxmox.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20210611114418.28772-1-f.ebner@proxmox.com> References: <20210611114418.28772-1-f.ebner@proxmox.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL 0.657 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% 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 POISEN_SPAM_PILL 0.1 Meta: its spam POISEN_SPAM_PILL_1 0.1 random spam to be learned in bayes POISEN_SPAM_PILL_3 0.1 random spam to be learned in bayes 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. [proxmox.com, repositories.pm, default.mk, gnu.org] Subject: [pve-devel] [PATCH v6 pve-rs 2/4] add files for Debian packaging 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: Fri, 11 Jun 2021 11:44:49 -0000 based on those from pmg-rs. Signed-off-by: Fabian Ebner --- Changes from v5: * adapt to new crate name/structure .gitignore | 5 ++++ Makefile | 73 ++++++++++++++++++++++++++++++++++++++++++++++++ debian/changelog | 5 ++++ debian/compat | 1 + debian/control | 20 +++++++++++++ debian/copyright | 16 +++++++++++ debian/rules | 7 +++++ debian/triggers | 1 + 8 files changed, 128 insertions(+) create mode 100644 Makefile create mode 100644 debian/changelog create mode 100644 debian/compat create mode 100644 debian/control create mode 100644 debian/copyright create mode 100755 debian/rules create mode 100644 debian/triggers diff --git a/.gitignore b/.gitignore index 52e46cb..c8e72b6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,8 @@ /target Cargo.lock /PVE +/build +libpve-rs-perl-dbgsym_*.deb +libpve-rs-perl_*.buildinfo +libpve-rs-perl_*.changes +libpve-rs-perl_*.deb diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..b8efdca --- /dev/null +++ b/Makefile @@ -0,0 +1,73 @@ +include /usr/share/dpkg/default.mk + +PACKAGE=libpve-rs-perl + +ARCH:=$(shell dpkg-architecture -qDEB_BUILD_ARCH) +export GITVERSION:=$(shell git rev-parse HEAD) + +PERL_INSTALLVENDORARCH != perl -MConfig -e 'print $$Config{installvendorarch};' +PERL_INSTALLVENDORLIB != perl -MConfig -e 'print $$Config{installvendorlib};' + +MAIN_DEB=${PACKAGE}_${DEB_VERSION}_${ARCH}.deb +DBGSYM_DEB=${PACKAGE}-dbgsym_${DEB_VERSION}_${ARCH}.deb +DEBS=$(MAIN_DEB) $(DBGSYM_DEB) + +DESTDIR= + +PM_DIRS := \ + PVE/RS/APT + +PM_FILES := \ + PVE/RS/APT/Repositories.pm + +ifeq ($(BUILD_MODE), release) +CARGO_BUILD_ARGS += --release +endif + +all: +ifneq ($(BUILD_MODE), skip) + cargo build $(CARGO_BUILD_ARGS) +endif + +# always re-create this dir +# but also copy the local target/ and PVE/ dirs as a build-cache +.PHONY: build +build: + rm -rf build + cargo build --release + rsync -a debian Makefile Cargo.toml Cargo.lock src target PVE build/ + +.PHONY: install +install: target/release/libpve_rs.so + install -d -m755 $(DESTDIR)$(PERL_INSTALLVENDORARCH)/auto + install -m644 target/release/libpve_rs.so $(DESTDIR)$(PERL_INSTALLVENDORARCH)/auto/libpve_rs.so + install -d -m755 $(DESTDIR)$(PERL_INSTALLVENDORLIB)/PVE/RS + for i in $(PM_DIRS); do \ + install -d -m755 $(DESTDIR)$(PERL_INSTALLVENDORLIB)/$$i; \ + done + for i in $(PM_FILES); do \ + install -m644 $$i $(DESTDIR)$(PERL_INSTALLVENDORLIB)/$$i; \ + done + +.PHONY: deb +deb: $(MAIN_DEB) +$(MAIN_DEB): build + cd build; dpkg-buildpackage -b -us -uc --no-pre-clean + lintian $(DEBS) + +distclean: clean + +clean: + cargo clean + rm -rf *.deb *.dsc *.tar.gz *.buildinfo *.changes Cargo.lock build + find . -name '*~' -exec rm {} ';' + +.PHONY: dinstall +dinstall: ${DEBS} + dpkg -i ${DEBS} + +.PHONY: upload +upload: ${DEBS} + # check if working directory is clean + git diff --exit-code --stat && git diff --exit-code --stat --staged + tar cf - ${DEBS} | ssh -X repoman@repo.proxmox.com upload --product pve --dist buster diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..c9a8855 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,5 @@ +libpve-rs-perl (0.1.0-1) unstable; urgency=medium + + * Initial release. + + -- Proxmox Support Team Thu, 27 May 2021 10:41:30 +0200 diff --git a/debian/compat b/debian/compat new file mode 100644 index 0000000..f599e28 --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +10 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..20ab5c7 --- /dev/null +++ b/debian/control @@ -0,0 +1,20 @@ +Source: libpve-rs-perl +Section: perl +Priority: optional +Maintainer: Proxmox Support Team +Build-Depends: debhelper (>= 10), + librust-perlmod-macro-dev, + librust-anyhow-dev, + librust-proxmox-apt-dev, + librust-perlmod-dev, + librust-serde-dev, +Standards-Version: 4.3.0 +Homepage: https://www.proxmox.com + +Package: libpve-rs-perl +Architecture: any +Depends: ${perl:Depends}, + ${shlibs:Depends}, +Description: Components of Proxmox Virtual Environment which have been ported to Rust. + Contains parts of Proxmox Virtual Environment which have been ported to, or + newly implemented in the Rust programming language. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..5661ef6 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,16 @@ +Copyright (C) 2021 Proxmox Server Solutions GmbH + +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/rules b/debian/rules new file mode 100755 index 0000000..97aca06 --- /dev/null +++ b/debian/rules @@ -0,0 +1,7 @@ +#!/usr/bin/make -f + +#export DH_VERBOSE=1 +export BUILD_MODE=skip + +%: + dh $@ diff --git a/debian/triggers b/debian/triggers new file mode 100644 index 0000000..59dd688 --- /dev/null +++ b/debian/triggers @@ -0,0 +1 @@ +activate-noawait pve-api-updates -- 2.20.1