remove support for building proxmox backup 2.x

This commit is contained in:
Wolfgang
2024-06-30 20:44:42 +00:00
parent e6995b619d
commit 7e72b143ea
15 changed files with 25 additions and 668 deletions

View File

@@ -14,7 +14,6 @@ on:
type: choice type: choice
description: Version description: Version
options: options:
- 2.x
- 3.x - 3.x
arch: arch:
type: choice type: choice

View File

@@ -8,11 +8,9 @@ on:
type: choice type: choice
description: Version description: Version
options: options:
- 2.x
- 3.x - 3.x
push: push:
tags: tags:
- 2.**
- 3.** - 3.**
jobs: jobs:

View File

@@ -1,5 +1,5 @@
# proxmox-backup-arm64 # proxmox-backup-arm64
Script for building Proxmox Backup Server 2.x (Debian/Bullseye) or 3.x (Debian/Bookworm) (add pbs3 as option to build 3.x on Bullseye)<br /> Script for building Proxmox Backup Server 3.x for Debian/Bookworm<br />
At least 4 GB are required for compiling. On devices with low memory, SWAP must be used (see help section). At least 4 GB are required for compiling. On devices with low memory, SWAP must be used (see help section).
## Download pre-built packages ## Download pre-built packages
@@ -12,7 +12,7 @@ With the script you can also download all files of the latest release at once
or of a specific version or of a specific version
``` ```
./build.sh download=2.4.3-1 ./build.sh download=3.2.6-1
``` ```
## Build manually ## Build manually

View File

@@ -170,10 +170,8 @@ GITHUB_ACTION=""
if [ "${VERSION_CODENAME}" = "bookworm" ]; then if [ "${VERSION_CODENAME}" = "bookworm" ]; then
DISTNAME="bookworm" DISTNAME="bookworm"
PBSVERSION="pbs3"
else else
DISTNAME="bullseye" DISTNAME="bullseye"
PBSVERSION="pbs2"
fi fi
[ ! -d "${PACKAGES}" ] && mkdir -p "${PACKAGES}" [ ! -d "${PACKAGES}" ] && mkdir -p "${PACKAGES}"
@@ -214,9 +212,6 @@ do
[[ ${BUILD_PROFILES} =~ nocheck ]] || BUILD_PROFILES=${BUILD_PROFILES}",nocheck" [[ ${BUILD_PROFILES} =~ nocheck ]] || BUILD_PROFILES=${BUILD_PROFILES}",nocheck"
export DEB_BUILD_OPTIONS="nocheck" export DEB_BUILD_OPTIONS="nocheck"
;; ;;
pbs*)
PBSVERSION=${1}
;;
debug) debug)
exec &> >(tee "${LOGFILE}") exec &> >(tee "${LOGFILE}")
echo $@ echo $@
@@ -284,27 +279,17 @@ EOF
cd "${SOURCES}" cd "${SOURCES}"
if [ "${PBSVERSION}" = "pbs3" ]; then PROXMOX_BACKUP_VER="3.2.6-1"
PROXMOX_BACKUP_VER="3.2.6-1" PROXMOX_BACKUP_GIT="472b52f54c4db176eb408ebd0de209323879eb5e"
PROXMOX_BACKUP_GIT="472b52f54c4db176eb408ebd0de209323879eb5e" PROXMOX_GIT="aae8a03dc4e119b5930ef36a68fb7e50f446eeca"
PROXMOX_GIT="aae8a03dc4e119b5930ef36a68fb7e50f446eeca" PATHPATTERNS_GIT="281894a5b66099e919d167cd5f0644fff6aca234" # 0.3.0-1
PATHPATTERNS_GIT="281894a5b66099e919d167cd5f0644fff6aca234" # 0.3.0-1 PXAR_GIT="ebe402c01c736eb6b822d984cda48538c0b7bf87" # 0.12.0-1
PXAR_GIT="ebe402c01c736eb6b822d984cda48538c0b7bf87" # 0.12.0-1
else
PROXMOX_BACKUP_VER="2.4.6-1"
PROXMOX_BACKUP_GIT="6751d3787e3f45d1692d2a245ebb099288f65afc"
PROXMOX_GIT="286c55d5b493a1e76fa3e70ae1c874cf82ca39aa"
PROXMOX_OPENID_GIT="ecf59cbb74278ea0e9710466508158ed6a6828c4" # 0.9.9-1
PROXMOX_ACME_RS_GIT="abc0bdd09d5c3501534510d49da0ae8fa5c05c05" # 0.4.0
PATHPATTERNS_GIT="13145f729d0a703c33d560367843f555cc799272" # 0.2.0-1
PXAR_GIT="29cbeed3e1b52f5eef455cdfa8b5e93f4e3e88f5" # 0.10.2-1
fi
PROMXOX_FUSE_GIT="8d57fb64f044ea3dcfdef77ed5f1888efdab0708" # 0.1.4 PROMXOX_FUSE_GIT="8d57fb64f044ea3dcfdef77ed5f1888efdab0708" # 0.1.4
if [ ! -e "${PACKAGES}/proxmox-backup-${BUILD_PACKAGE}_${PROXMOX_BACKUP_VER}_${PACKAGE_ARCH}.deb" ]; then if [ ! -e "${PACKAGES}/proxmox-backup-${BUILD_PACKAGE}_${PROXMOX_BACKUP_VER}_${PACKAGE_ARCH}.deb" ]; then
git_clone_or_fetch https://git.proxmox.com/git/proxmox.git git_clone_or_fetch https://git.proxmox.com/git/proxmox.git
git_clean_and_checkout ${PROXMOX_GIT} proxmox git_clean_and_checkout ${PROXMOX_GIT} proxmox
if [ "${PBSVERSION}" = "pbs3" -a "${PACKAGE_ARCH}" = "arm64" ]; then if [ "${PACKAGE_ARCH}" = "arm64" ]; then
patch -p1 -d proxmox/ < "${PATCHES}/${PBSVERSION}/proxmox-arm64.patch" patch -p1 -d proxmox/ < "${PATCHES}/proxmox-arm64.patch"
fi fi
git_clone_or_fetch https://git.proxmox.com/git/proxmox-fuse.git git_clone_or_fetch https://git.proxmox.com/git/proxmox-fuse.git
git_clean_and_checkout ${PROMXOX_FUSE_GIT} proxmox-fuse git_clean_and_checkout ${PROMXOX_FUSE_GIT} proxmox-fuse
@@ -312,23 +297,17 @@ if [ ! -e "${PACKAGES}/proxmox-backup-${BUILD_PACKAGE}_${PROXMOX_BACKUP_VER}_${P
git_clean_and_checkout ${PXAR_GIT} pxar git_clean_and_checkout ${PXAR_GIT} pxar
git_clone_or_fetch https://git.proxmox.com/git/pathpatterns.git git_clone_or_fetch https://git.proxmox.com/git/pathpatterns.git
git_clean_and_checkout ${PATHPATTERNS_GIT} pathpatterns git_clean_and_checkout ${PATHPATTERNS_GIT} pathpatterns
if [ "${PBSVERSION}" = "pbs2" ]; then
git_clone_or_fetch https://git.proxmox.com/git/proxmox-acme-rs.git
git_clean_and_checkout ${PROXMOX_ACME_RS_GIT} proxmox-acme-rs
git_clone_or_fetch https://git.proxmox.com/git/proxmox-openid-rs.git
git_clean_and_checkout ${PROXMOX_OPENID_GIT} proxmox-openid-rs
fi
git_clone_or_fetch https://git.proxmox.com/git/proxmox-backup.git git_clone_or_fetch https://git.proxmox.com/git/proxmox-backup.git
git_clean_and_checkout ${PROXMOX_BACKUP_GIT} proxmox-backup git_clean_and_checkout ${PROXMOX_BACKUP_GIT} proxmox-backup
sed -i '/dh-cargo\|cargo:native\|rustc:native\|librust-/d' proxmox-backup/debian/control sed -i '/dh-cargo\|cargo:native\|rustc:native\|librust-/d' proxmox-backup/debian/control
sed -i 's/\(patchelf\|xindy\)\b/\1:native/' proxmox-backup/debian/control sed -i 's/\(patchelf\|xindy\)\b/\1:native/' proxmox-backup/debian/control
sed -i 's/\(latexmk\|proxmox-widget-toolkit-dev\|pve-eslint\|python3-sphinx\)/\1:all/' proxmox-backup/debian/control sed -i 's/\(latexmk\|proxmox-widget-toolkit-dev\|pve-eslint\|python3-sphinx\)/\1:all/' proxmox-backup/debian/control
patch -p1 -d proxmox-backup/ < "${PATCHES}/${PBSVERSION}/proxmox-backup-build.patch" patch -p1 -d proxmox-backup/ < "${PATCHES}/proxmox-backup-build.patch"
if [ "${BUILD_PACKAGE}" = "client" ]; then if [ "${BUILD_PACKAGE}" = "client" ]; then
patch -p1 -d proxmox-backup/ < "${PATCHES}/${PBSVERSION}/proxmox-backup-client.patch" patch -p1 -d proxmox-backup/ < "${PATCHES}/proxmox-backup-client.patch"
fi fi
if [ "${PBSVERSION}" = "pbs3" -a "${DISTNAME}" = "bullseye" ]; then if [ "${DISTNAME}" = "bullseye" ]; then
sed -i 's/libsgutils2-.*-2/libsgutils2-2/' proxmox-backup/debian/control sed -i 's/libsgutils2-.*-2/libsgutils2-2/' proxmox-backup/debian/control
fi fi
if [ "${PACKAGE_ARCH}" = "arm64" ]; then if [ "${PACKAGE_ARCH}" = "arm64" ]; then
@@ -337,7 +316,7 @@ if [ ! -e "${PACKAGES}/proxmox-backup-${BUILD_PACKAGE}_${PROXMOX_BACKUP_VER}_${P
sed -i "s/x86_64-linux-gnu/aarch64-linux-gnu/" proxmox-backup/debian/proxmox-backup-server.install sed -i "s/x86_64-linux-gnu/aarch64-linux-gnu/" proxmox-backup/debian/proxmox-backup-server.install
fi fi
[[ "${BUILD_PROFILES}" =~ cross ]] && \ [[ "${BUILD_PROFILES}" =~ cross ]] && \
patch -p1 -d proxmox-backup/ < "${PATCHES}/${PBSVERSION}/proxmox-backup-cross.patch" patch -p1 -d proxmox-backup/ < "${PATCHES}/proxmox-backup-cross.patch"
cd proxmox-backup/ cd proxmox-backup/
set_package_info set_package_info
cargo vendor cargo vendor
@@ -362,39 +341,29 @@ fi
[ "${BUILD_PACKAGE}" = "client" ] && exit 0 [ "${BUILD_PACKAGE}" = "client" ] && exit 0
if [ "${PBSVERSION}" = "pbs2" ]; then PVE_XTERMJS_VER="5.3.0-3"
PVE_XTERMJS_VER="4.16.0-3" PVE_XTERMJS_GIT="3301e28678e6a26187e8731d920b2b7686c35cad"
PVE_XTERMJS_GIT="99c9d214258a496227e15f0803fb163925be65c8" PROXMOX_XTERMJS_GIT="04e2d0e5c329b59c4ece59d77079443e39029883"
PROXMOX_XTERMJS_GIT="2a070da0651677411a245f1714895235b1caf584" PROXMOX_TERMPROXY_VER="1.0.1"
else
PVE_XTERMJS_VER="5.3.0-3"
PVE_XTERMJS_GIT="3301e28678e6a26187e8731d920b2b7686c35cad"
PROXMOX_XTERMJS_GIT="04e2d0e5c329b59c4ece59d77079443e39029883"
PROXMOX_TERMPROXY_VER="1.0.1"
fi
if [ ! -e "${PACKAGES}/pve-xtermjs_${PVE_XTERMJS_VER}_"*".deb" ]; then if [ ! -e "${PACKAGES}/pve-xtermjs_${PVE_XTERMJS_VER}_"*".deb" ]; then
git_clone_or_fetch https://git.proxmox.com/git/pve-xtermjs.git git_clone_or_fetch https://git.proxmox.com/git/pve-xtermjs.git
git_clean_and_checkout ${PVE_XTERMJS_GIT} pve-xtermjs git_clean_and_checkout ${PVE_XTERMJS_GIT} pve-xtermjs
patch -p1 -d pve-xtermjs/ < "${PATCHES}/${PBSVERSION}/pve-xtermjs-arm.patch" patch -p1 -d pve-xtermjs/ < "${PATCHES}/pve-xtermjs-arm.patch"
[[ "${BUILD_PROFILES}" =~ cross ]] && \ [[ "${BUILD_PROFILES}" =~ cross ]] && \
patch -p1 -d pve-xtermjs/ < "${PATCHES}/${PBSVERSION}/pve-xtermjs-cross.patch" patch -p1 -d pve-xtermjs/ < "${PATCHES}/pve-xtermjs-cross.patch"
cd pve-xtermjs/ cd pve-xtermjs/
git_clone_or_fetch https://git.proxmox.com/git/proxmox.git git_clone_or_fetch https://git.proxmox.com/git/proxmox.git
git_clean_and_checkout ${PROXMOX_XTERMJS_GIT} proxmox git_clean_and_checkout ${PROXMOX_XTERMJS_GIT} proxmox
[ "${PBSVERSION}" = "pbs3" ] && cd termproxy cd termproxy
set_package_info set_package_info
${SUDO} apt -y -a${PACKAGE_ARCH} build-dep . ${SUDO} apt -y -a${PACKAGE_ARCH} build-dep .
BUILD_MODE=release make deb BUILD_MODE=release make deb
cd .. cd ..
if [ "${PBSVERSION}" = "pbs3" ]; then cd xterm.js
cd xterm.js make deb
make deb cp -a pve-xtermjs_${PVE_XTERMJS_VER}_all.deb "${PACKAGES}"
cp -a pve-xtermjs_${PVE_XTERMJS_VER}_all.deb "${PACKAGES}" cd ..
cd .. cp -a proxmox-termproxy_${PROXMOX_TERMPROXY_VER}_${PACKAGE_ARCH}.deb "${PACKAGES}"
cp -a proxmox-termproxy_${PROXMOX_TERMPROXY_VER}_${PACKAGE_ARCH}.deb "${PACKAGES}"
else
cp -a pve-xtermjs_${PVE_XTERMJS_VER}_${PACKAGE_ARCH}.deb "${PACKAGES}"
fi
else else
echo "pve-xtermjs up-to-date" echo "pve-xtermjs up-to-date"
fi fi

View File

@@ -1,113 +0,0 @@
diff --git a/.cargo/config b/.cargo/config
index 3b5b6e48..50908c05 100644
--- a/.cargo/config
+++ b/.cargo/config
@@ -1,5 +1,17 @@
-[source]
-[source.debian-packages]
-directory = "/usr/share/cargo/registry"
[source.crates-io]
-replace-with = "debian-packages"
+replace-with = "vendored-sources"
+
+[source."git://git.proxmox.com/git/pathpatterns.git"]
+git = "git://git.proxmox.com/git/pathpatterns.git"
+replace-with = "vendored-sources"
+
+[source."git://git.proxmox.com/git/proxmox-fuse.git"]
+git = "git://git.proxmox.com/git/proxmox-fuse.git"
+replace-with = "vendored-sources"
+
+[source."git://git.proxmox.com/git/pxar.git"]
+git = "git://git.proxmox.com/git/pxar.git"
+replace-with = "vendored-sources"
+
+[source.vendored-sources]
+directory = "vendor"
diff --git a/Cargo.toml b/Cargo.toml
index 20c1e9c8..c0e13abe 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -241,31 +241,34 @@ proxmox-rrd.workspace = true
# Local path overrides
# NOTE: You must run `cargo update` after changing this for it to take effect!
[patch.crates-io]
-#proxmox-acme-rs = { path = "../proxmox-acme-rs" }
-#proxmox-async = { path = "../proxmox/proxmox-async" }
-#proxmox-auth-api = { path = "../proxmox/proxmox-auth-api" }
-#proxmox-borrow = { path = "../proxmox/proxmox-borrow" }
-#proxmox-compression = { path = "../proxmox/proxmox-compression" }
-#proxmox-fuse = { path = "../proxmox-fuse" }
-#proxmox-http = { path = "../proxmox/proxmox-http" }
-#proxmox-io = { path = "../proxmox/proxmox-io" }
-#proxmox-lang = { path = "../proxmox/proxmox-lang" }
-#proxmox-rest-server = { path = "../proxmox/proxmox-rest-server" }
-#proxmox-router = { path = "../proxmox/proxmox-router" }
-#proxmox-schema = { path = "../proxmox/proxmox-schema" }
-#proxmox-section-config = { path = "../proxmox/proxmox-section-config" }
-#proxmox-serde = { path = "../proxmox/proxmox-serde" }
-#proxmox-shared-memory = { path = "../proxmox/proxmox-shared-memory" }
-#proxmox-subscription = { path = "../proxmox/proxmox-subscription" }
-#proxmox-sys = { path = "../proxmox/proxmox-sys" }
-#proxmox-tfa = { path = "../proxmox/proxmox-tfa" }
-#proxmox-time = { path = "../proxmox/proxmox-time" }
-#proxmox-uuid = { path = "../proxmox/proxmox-uuid" }
+proxmox-acme-rs = { path = "../proxmox-acme-rs" }
+proxmox-async = { path = "../proxmox/proxmox-async" }
+proxmox-auth-api = { path = "../proxmox/proxmox-auth-api" }
+proxmox-borrow = { path = "../proxmox/proxmox-borrow" }
+proxmox-compression = { path = "../proxmox/proxmox-compression" }
+proxmox-fuse = { path = "../proxmox-fuse" }
+proxmox-http = { path = "../proxmox/proxmox-http" }
+proxmox-io = { path = "../proxmox/proxmox-io" }
+proxmox-lang = { path = "../proxmox/proxmox-lang" }
+proxmox-ldap = { path = "../proxmox/proxmox-ldap" }
+proxmox-metrics = { path = "../proxmox/proxmox-metrics" }
+proxmox-rest-server = { path = "../proxmox/proxmox-rest-server" }
+proxmox-router = { path = "../proxmox/proxmox-router" }
+proxmox-schema = { path = "../proxmox/proxmox-schema" }
+proxmox-section-config = { path = "../proxmox/proxmox-section-config" }
+proxmox-serde = { path = "../proxmox/proxmox-serde" }
+proxmox-shared-memory = { path = "../proxmox/proxmox-shared-memory" }
+proxmox-sortable-macro = { path = "../proxmox/proxmox-sortable-macro" }
+proxmox-subscription = { path = "../proxmox/proxmox-subscription" }
+proxmox-sys = { path = "../proxmox/proxmox-sys" }
+proxmox-tfa = { path = "../proxmox/proxmox-tfa" }
+proxmox-time = { path = "../proxmox/proxmox-time" }
+proxmox-uuid = { path = "../proxmox/proxmox-uuid" }
-#proxmox-apt = { path = "../proxmox-apt" }
-#proxmox-openid = { path = "../proxmox-openid-rs" }
+proxmox-apt = { path = "../proxmox/proxmox-apt" }
+proxmox-openid = { path = "../proxmox-openid-rs" }
-#pxar = { path = "../pxar" }
+pxar = { path = "../pxar" }
[features]
default = []
diff --git a/debian/rules b/debian/rules
index 79366229..1ebd7460 100755
--- a/debian/rules
+++ b/debian/rules
@@ -4,12 +4,9 @@
DH_VERBOSE = 1
include /usr/share/dpkg/pkg-info.mk
-include /usr/share/rustc/architecture.mk
export BUILD_MODE=release
-CARGO=/usr/share/cargo/bin/cargo
-
export CFLAGS CXXFLAGS CPPFLAGS LDFLAGS
export DEB_HOST_RUST_TYPE DEB_HOST_GNU_TYPE
export CARGO_HOME = $(CURDIR)/debian/cargo_home
@@ -27,7 +24,6 @@ endif
override_dh_auto_configure:
@perl -ne 'if (/^version\s*=\s*"(\d+(?:\.\d+)+)"/) { my $$v_cargo = $$1; my $$v_deb = "$(DEB_VERSION_UPSTREAM)"; \
die "ERROR: d/changelog <-> Cargo.toml version mismatch: $$v_cargo != $$v_deb\n" if $$v_cargo ne $$v_deb; exit(0); }' Cargo.toml
- $(CARGO) prepare-debian $(CURDIR)/debian/cargo_registry --link-from-system
dh_auto_configure
override_dh_auto_build:

View File

@@ -1,259 +0,0 @@
diff --git a/Makefile b/Makefile
index 06928be7..00751f1c 100644
--- a/Makefile
+++ b/Makefile
@@ -4,32 +4,21 @@ include defines.mk
PACKAGE := proxmox-backup
ARCH := $(DEB_BUILD_ARCH)
-SUBDIRS := etc www docs
+SUBDIRS := docs
# Binaries usable by users
USR_BIN := \
proxmox-backup-client \
- proxmox-file-restore \
- pxar \
- proxmox-tape \
- pmtx \
- pmt
+ pxar
# Binaries usable by admins
-USR_SBIN := \
- proxmox-backup-manager \
- proxmox-backup-debug \
+USR_SBIN :=
# Binaries for services:
-SERVICE_BIN := \
- proxmox-backup-api \
- proxmox-backup-banner \
- proxmox-backup-proxy \
- proxmox-daily-update
+SERVICE_BIN :=
# Single file restore daemon
-RESTORE_BIN := \
- proxmox-restore-daemon
+RESTORE_BIN :=
SUBCRATES != cargo metadata --no-deps --format-version=1 \
| jq -r .workspace_members'[]' \
@@ -61,8 +50,7 @@ RESTORE_DEB=proxmox-backup-file-restore_$(DEB_VERSION)_$(ARCH).deb
RESTORE_DBG_DEB=proxmox-backup-file-restore-dbgsym_$(DEB_VERSION)_$(ARCH).deb
DOC_DEB=$(PACKAGE)-docs_$(DEB_VERSION)_all.deb
-DEBS=$(SERVER_DEB) $(SERVER_DBG_DEB) $(CLIENT_DEB) $(CLIENT_DBG_DEB) \
- $(RESTORE_DEB) $(RESTORE_DBG_DEB) $(DEBUG_DEB) $(DEBUG_DBG_DEB)
+DEBS=${CLIENT_DEB} ${CLIENT_DBG_DEB}
DSC = rust-$(PACKAGE)_$(DEB_VERSION).dsc
@@ -154,30 +142,11 @@ cargo-build:
$(COMPILED_BINS) $(COMPILEDIR)/dump-catalog-shell-cli $(COMPILEDIR)/docgen: .do-cargo-build
.do-cargo-build:
$(CARGO) build $(CARGO_BUILD_ARGS) \
- --package proxmox-backup-banner \
- --bin proxmox-backup-banner \
--package proxmox-backup-client \
--bin proxmox-backup-client \
--bin dump-catalog-shell-cli \
- --bin proxmox-backup-debug \
- --package proxmox-file-restore \
- --bin proxmox-file-restore \
--package pxar-bin \
- --bin pxar \
- --package pbs-tape \
- --bin pmt \
- --bin pmtx \
- --package proxmox-restore-daemon \
- --bin proxmox-restore-daemon \
- --package proxmox-backup \
- --bin docgen \
- --bin proxmox-backup-api \
- --bin proxmox-backup-manager \
- --bin proxmox-backup-proxy \
- --bin proxmox-daily-update \
- --bin proxmox-file-restore \
- --bin proxmox-tape \
- --bin sg-tape-cmd
+ --bin pxar
touch "$@"
@@ -195,16 +164,16 @@ install: $(COMPILED_BINS)
$(foreach i,$(USR_SBIN), \
install -m755 $(COMPILEDIR)/$(i) $(DESTDIR)$(SBINDIR)/ ; \
install -m644 zsh-completions/_$(i) $(DESTDIR)$(ZSH_COMPL_DEST)/ ;)
- install -m755 $(COMPILEDIR)/pbs2to3 $(DESTDIR)$(SBINDIR)/
+ #install -m755 $(COMPILEDIR)/pbs2to3 $(DESTDIR)$(SBINDIR)/
install -dm755 $(DESTDIR)$(LIBEXECDIR)/proxmox-backup
install -dm755 $(DESTDIR)$(LIBEXECDIR)/proxmox-backup/file-restore
$(foreach i,$(RESTORE_BIN), \
install -m755 $(COMPILEDIR)/$(i) $(DESTDIR)$(LIBEXECDIR)/proxmox-backup/file-restore/ ;)
# install sg-tape-cmd as setuid binary
- install -m4755 -o root -g root $(COMPILEDIR)/sg-tape-cmd $(DESTDIR)$(LIBEXECDIR)/proxmox-backup/sg-tape-cmd
+ #install -m4755 -o root -g root $(COMPILEDIR)/sg-tape-cmd $(DESTDIR)$(LIBEXECDIR)/proxmox-backup/sg-tape-cmd
$(foreach i,$(SERVICE_BIN), \
install -m755 $(COMPILEDIR)/$(i) $(DESTDIR)$(LIBEXECDIR)/proxmox-backup/ ;)
- $(MAKE) -C www install
+ #$(MAKE) -C www install
$(MAKE) -C docs install
.PHONY: upload
diff --git a/debian/control b/debian/control
index 54912cc1..bab69748 100644
--- a/debian/control
+++ b/debian/control
@@ -21,7 +21,7 @@ Build-Depends: debhelper (>= 12),
pve-eslint:all (>= 7.18.0~),
python3-docutils,
python3-pygments,
- python3-sphinx:all <!nodoc>,
+ python3-sphinx:all,
rsync,
texlive-fonts-extra <!nodoc>,
texlive-fonts-recommended <!nodoc>,
@@ -34,34 +34,6 @@ Vcs-Browser: https://git.proxmox.com/?p=proxmox-backup.git;a=summary
Homepage: https://www.proxmox.com
Rules-Requires-Root: binary-targets
-Package: proxmox-backup-server
-Architecture: any
-Depends: fonts-font-awesome,
- libjs-extjs (>= 7~),
- libjs-qrcodejs (>= 1.20201119),
- libproxmox-acme-plugins,
- libsgutils2-2,
- libzstd1 (>= 1.3.8),
- lvm2,
- openssh-server,
- pbs-i18n,
- postfix | mail-transport-agent,
- proxmox-backup-docs,
- proxmox-mini-journalreader,
- proxmox-widget-toolkit (>= 3.5.2),
- pve-xtermjs (>= 4.7.0-1),
- sg3-utils,
- smartmontools,
- ${misc:Depends},
- ${shlibs:Depends},
-Recommends: zfsutils-linux,
- ifupdown2,
- proxmox-offline-mirror-helper,
- proxmox-mail-forward,
-Description: Proxmox Backup Server daemon with tools and GUI
- This package contains the Proxmox Backup Server daemons and related
- tools. This includes a web-based graphical user interface.
-
Package: proxmox-backup-client
Architecture: any
Depends: qrencode,
@@ -70,26 +42,3 @@ Depends: qrencode,
Description: Proxmox Backup Client tools
This package contains the Proxmox Backup client, which provides a
simple command line tool to create and restore backups.
-
-Package: proxmox-backup-docs
-Build-Profiles: <!nodoc>
-Section: doc
-Depends: fonts-font-awesome,
- libjs-extjs,
- libjs-mathjax,
- ${misc:Depends},
-Architecture: all
-Description: Proxmox Backup Documentation
- This package contains the Proxmox Backup Documentation files.
-
-Package: proxmox-backup-file-restore
-Architecture: any
-Depends: ${misc:Depends},
- ${shlibs:Depends},
-Recommends: pve-qemu-kvm (>= 5.0.0-9),
- proxmox-backup-restore-image,
-Breaks: proxmox-backup-restore-image (<< 0.3.1)
-Description: Proxmox Backup single file restore tools for pxar and block device backups
- This package contains the Proxmox Backup single file restore client for
- restoring individual files and folders from both host/container and VM/block
- device backups. It includes a block device restore driver using QEMU.
diff --git a/debian/rules b/debian/rules
index 1ebd7460..c72dcd50 100755
--- a/debian/rules
+++ b/debian/rules
@@ -37,12 +37,13 @@ override_dh_missing:
override_dh_auto_install:
dh_auto_install -- \
PROXY_USER=backup \
- LIBDIR=/usr/lib/$(DEB_HOST_MULTIARCH)
+ LIBDIR=/usr/lib/$(DEB_HOST_MULTIARCH) \
+ DESTDIR=$(PWD)/debian/tmp
-override_dh_installsystemd:
- dh_installsystemd -pproxmox-backup-server proxmox-backup-daily-update.timer
+#override_dh_installsystemd:
+# dh_installsystemd -pproxmox-backup-server proxmox-backup-daily-update.timer
# note: we start/try-reload-restart services manually in postinst
- dh_installsystemd --no-start --no-restart-after-upgrade
+# dh_installsystemd --no-start --no-restart-after-upgrade
override_dh_fixperms:
dh_fixperms --exclude sg-tape-cmd
diff --git a/docs/Makefile b/docs/Makefile
index 0d0963f3..32b51556 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -1,49 +1,15 @@
include ../defines.mk
GENERATED_SYNOPSIS := \
- proxmox-tape/synopsis.rst \
proxmox-backup-client/synopsis.rst \
proxmox-backup-client/catalog-shell-synopsis.rst \
- proxmox-backup-manager/synopsis.rst \
- proxmox-backup-debug/synopsis.rst \
- proxmox-file-restore/synopsis.rst \
- pxar/synopsis.rst \
- pmtx/synopsis.rst \
- pmt/synopsis.rst \
- config/media-pool/config.rst \
- config/tape/config.rst \
- config/tape-job/config.rst \
- config/user/config.rst \
- config/remote/config.rst \
- config/sync/config.rst \
- config/verification/config.rst \
- config/acl/roles.rst \
- config/datastore/config.rst \
- config/domains/config.rst
+ pxar/synopsis.rst
MAN1_PAGES := \
pxar.1 \
- pmtx.1 \
- pmt.1 \
- proxmox-tape.1 \
- proxmox-backup-proxy.1 \
- proxmox-backup-client.1 \
- proxmox-backup-manager.1 \
- proxmox-file-restore.1 \
- proxmox-backup-debug.1 \
- pbs2to3.1 \
-
-MAN5_PAGES := \
- media-pool.cfg.5 \
- tape.cfg.5 \
- tape-job.cfg.5 \
- acl.cfg.5 \
- user.cfg.5 \
- remote.cfg.5 \
- sync.cfg.5 \
- verification.cfg.5 \
- datastore.cfg.5 \
- domains.cfg.5
+ proxmox-backup-client.1
+
+MAN5_PAGES :=
PRUNE_SIMULATOR_FILES := \
prune-simulator/index.html \

View File

@@ -1,89 +0,0 @@
diff --git a/Makefile b/Makefile
index b307009d..45b2ac3c 100644
--- a/Makefile
+++ b/Makefile
@@ -37,7 +37,7 @@ SUBCRATES != cargo metadata --no-deps --format-version=1 \
ifeq ($(BUILD_MODE), release)
CARGO_BUILD_ARGS += --release
-COMPILEDIR := target/release
+COMPILEDIR := target/aarch64-unknown-linux-gnu/release
else
COMPILEDIR := target/debug
endif
diff --git a/docs/Makefile b/docs/Makefile
index b06badff..a5eb4ce2 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -85,7 +85,7 @@ SPHINXBUILD = sphinx-build
BUILDDIR = output
ifeq ($(BUILD_MODE), release)
-COMPILEDIR := ../target/release
+COMPILEDIR := ../target/aarch64-unknown-linux-gnu/release
SPHINXOPTS += -t release
else
COMPILEDIR := ../target/debug
@@ -98,16 +98,16 @@ ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(SPHINXOPTS) .
all: ${MAN1_PAGES} ${MAN5_PAGES}
config/%/config.rst: ${COMPILEDIR}/docgen
- ${COMPILEDIR}/docgen $*.cfg >$@
+ qemu-aarch64 ${COMPILEDIR}/docgen $*.cfg >$@
config/acl/roles.rst: ${COMPILEDIR}/docgen
- ${COMPILEDIR}/docgen "config::acl::Role" >$@
+ qemu-aarch64 ${COMPILEDIR}/docgen "config::acl::Role" >$@
%/synopsis.rst: ${COMPILEDIR}/%
- $< printdoc > $@
+ qemu-aarch64 $< printdoc > $@
proxmox-backup-client/catalog-shell-synopsis.rst: ${COMPILEDIR}/dump-catalog-shell-cli
- ${COMPILEDIR}/dump-catalog-shell-cli > proxmox-backup-client/catalog-shell-synopsis.rst
+ qemu-aarch64 ${COMPILEDIR}/dump-catalog-shell-cli > proxmox-backup-client/catalog-shell-synopsis.rst
${MAN1_PAGES} ${MAN5_PAGES}: man-pages
@@ -122,7 +122,7 @@ onlinehelpinfo:
@echo "Build finished. OnlineHelpInfo.js is in $(BUILDDIR)/scanrefs."
api-viewer/apidata.js: ${COMPILEDIR}/docgen
- ${COMPILEDIR}/docgen apidata.js >$@
+ qemu-aarch64 ${COMPILEDIR}/docgen apidata.js >$@
api-viewer/apidoc.js: ${API_VIEWER_FILES}
cat ${API_VIEWER_FILES} >$@.tmp
diff --git a/pxar-bin/tests/pxar.rs b/pxar-bin/tests/pxar.rs
index f2748598..0c31ee4f 100644
--- a/pxar-bin/tests/pxar.rs
+++ b/pxar-bin/tests/pxar.rs
@@ -8,14 +8,15 @@ fn pxar_create_and_extract() {
let dest_dir = "../tests/catar_data/test_xattrs_dest/";
let exec_path = if cfg!(debug_assertions) {
- "../target/debug/pxar"
+ "../target/aarch64-unknown-linux-gnu/debug/pxar"
} else {
- "../target/release/pxar"
+ "../target/aarch64-unknown-linux-gnu/release/pxar"
};
println!("run '{} create archive.pxar {}'", exec_path, src_dir);
- Command::new(exec_path)
+ Command::new("qemu-aarch64")
+ .arg(exec_path)
.arg("create")
.arg("./tests/archive.pxar")
.arg(src_dir)
@@ -24,7 +25,8 @@ fn pxar_create_and_extract() {
println!("run '{} extract archive.pxar {}'", exec_path, dest_dir);
- Command::new(exec_path)
+ Command::new("qemu-aarch64")
+ .arg(exec_path)
.arg("extract")
.arg("./tests/archive.pxar")
.arg("--target")

View File

@@ -1,124 +0,0 @@
diff --git a/.cargo/config b/.cargo/config
index 3b5b6e4..b08ce29 100644
--- a/.cargo/config
+++ b/.cargo/config
@@ -1,5 +1,5 @@
[source]
-[source.debian-packages]
-directory = "/usr/share/cargo/registry"
+[source.vendor]
+directory = "vendor"
[source.crates-io]
-replace-with = "debian-packages"
+replace-with = "vendor"
diff --git a/Cargo.toml b/Cargo.toml
index b9479be..0d417f4 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -19,3 +19,9 @@ clap = "3"
proxmox-io = "1"
proxmox-lang = "1.1"
proxmox-sys = "0.5"
+
+
+[patch.crates-io]
+proxmox-io = { path = "./proxmox/proxmox-io" }
+proxmox-lang = { path = "./proxmox/proxmox-lang" }
+proxmox-sys = { path = "./proxmox/proxmox-sys" }
diff --git a/Makefile b/Makefile
index 01488d1..cb0ceb7 100644
--- a/Makefile
+++ b/Makefile
@@ -46,6 +46,14 @@ $(TERMPROXY_BIN): .do-cargo-build
.PHONY: cargo-build
cargo-build: .do-cargo-build
+.PHONY: cargo-vendor
+cargo-vendor:
+ cargo vendor
+ rm -f vendor/endian_trait/rust-toolchain
+ rm -f vendor/endian_trait_derive/rust-toolchain
+ sed -i "s#\"rust-toolchain[^,]\+,##" vendor/endian_trait/.cargo-checksum.json
+ sed -i "s#\"rust-toolchain[^,]\+,##" vendor/endian_trait_derive/.cargo-checksum.json
+
update-dcontrol:
rm -rf $(BUILDDIR)
$(MAKE) $(BUILDDIR)
@@ -74,9 +82,10 @@ $(ORIG_SRC_TAR): $(BUILDDIR)
.PHONY: deb
deb: $(DEB)
$(DBG_DEB): $(DEB)
-$(DEB): $(BUILDDIR)
- cd $(BUILDDIR); dpkg-buildpackage -b -uc -us
- lintian $(DEB)
+$(DEB): cargo-vendor
+ echo "git clone git://git.proxmox.com/git/pve-xtermjs.git\\ngit checkout ${GITVERSION}" > debian/SOURCE
+ DEB_CARGO_PACKAGE=$(PACKAGE) dpkg-buildpackage -b -uc -us --no-pre-clean
+ lintian ../$(DEB)
@echo $(DEB)
.PHONY: dsc
diff --git a/debian/control b/debian/control
index fd052c2..65433dd 100644
--- a/debian/control
+++ b/debian/control
@@ -1,20 +1,8 @@
Source: rust-termproxy
Section: admin
Priority: optional
-Build-Depends: cargo:native,
- debhelper-compat (= 13),
- dh-cargo (>= 25),
- librust-anyhow-1+default-dev,
- librust-clap-3+default-dev,
- librust-mio-0.8+default-dev,
- librust-mio-0.8+net-dev,
- librust-mio-0.8+os-ext-dev,
- librust-proxmox-io-1+default-dev,
- librust-proxmox-lang-1+default-dev (>= 1.1-~~),
- librust-proxmox-sys-0.5+default-dev,
- librust-ureq-2+gzip-dev (>= 2.4-~~),
+Build-Depends: debhelper-compat (= 13),
libstd-rust-dev,
- rustc:native,
Maintainer: Proxmox Support Team <support@proxmox.com>
Standards-Version: 4.6.1
Vcs-Git: git://git.proxmox.com/git/pve-xtermjs.git
diff --git a/debian/install b/debian/install
index 04be689..0e69d82 100644
--- a/debian/install
+++ b/debian/install
@@ -1 +1,2 @@
-src/www/* /usr/share/pve-xtermjs/
+src/www/* /usr/share/pve-xtermjs/
+target/release/termproxy /usr/bin/
diff --git a/debian/rules b/debian/rules
index 6049291..c9fdaf4 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,7 +1,6 @@
#!/usr/bin/make -f
include /usr/share/dpkg/pkg-info.mk
-include /usr/share/rustc/architecture.mk
export BUILD_MODE=release
@@ -23,5 +23,4 @@ override_dh_auto_build:
override_dh_auto_configure:
rm -f Cargo.lock
- /usr/share/cargo/bin/cargo prepare-debian $(CURDIR)/debian/cargo_registry --link-from-system
dh_auto_configure
diff --git a/debian/rules.debcargo.hint b/debian/rules.debcargo.hint
index 92c239b..4aaf62a 100755
--- a/debian/rules.debcargo.hint
+++ b/debian/rules.debcargo.hint
@@ -1,6 +1,6 @@
#!/usr/bin/make -f
%:
- dh $@ --buildsystem cargo
+ dh $@
override_dh_auto_test:
dh_auto_test -- test --all

View File

@@ -1,24 +0,0 @@
diff --git a/Makefile b/Makefile
index 01488d1..b398856 100644
--- a/Makefile
+++ b/Makefile
@@ -22,9 +22,9 @@ DSC=rust-$(CRATENAME)_$(DEB_VERSION_UPSTREAM_REVISION).dsc
CARGO ?= cargo
ifeq ($(BUILD_MODE), release)
CARGO_BUILD_ARGS += --release
-COMPILEDIR := target/release
+COMPILEDIR := target/aarch64-unknown-linux-gnu/release
else
-COMPILEDIR := target/debug
+COMPILEDIR := target/aarch64-unknown-linux-gnu/debug
endif
PREFIX = /usr
diff --git a/debian/install b/debian/install
index 0e69d82..bb555a8 100644
--- a/debian/install
+++ b/debian/install
@@ -1,2 +1,2 @@
src/www/* /usr/share/pve-xtermjs/
-target/release/termproxy /usr/bin/
+target/aarch64-unknown-linux-gnu/release/termproxy /usr/bin/