Buildscript for proxmox backup server 2.1.2

This commit is contained in:
Wolfgang
2021-11-24 22:16:14 +01:00
parent 791c7bd3fc
commit fd0c4fa115
6 changed files with 599 additions and 0 deletions

View File

@@ -1,2 +1,20 @@
# proxmox-backup-arm64
Script for building Proxmox Backup Server for Armbian64
## Install build essentials and dependencies
```
apt-get -y install \
build-essential curl sudo git lintian \
pkg-config libudev-dev libssl-dev libapt-pkg-dev libclang-dev \
libnetaddr-ip-perl
```
## Install ``rustup``
```
curl -sSf https://sh.rustup.rs -sSf | sh -s
source .cargo/env
```
## Start build script
```
./build.sh
```

204
build.sh Executable file
View File

@@ -0,0 +1,204 @@
#!/bin/bash
#
# build script for proxmox backup server on arm64
# https://github.com/wofferl/proxmox-backup-arm64
SUDO="sudo"
[ ! -d packages ] && mkdir packages
PVE_ESLINT_VERSION="7.28.0-1"
PVE_ESLINT_GIT="ef0a5638b025ec9b9e3aa4df61a5b3b6bd471439"
if ! dpkg-query -W -f='${Version}' pve-eslint | grep -q ${PVE_ESLINT_VERSION}; then
if [ ! -d pve-eslint ]; then
git clone https://git.proxmox.com/git/pve-eslint.git
else
git -C pve-eslint fetch
fi
cd pve-eslint
git checkout ${PVE_ESLINT_GIT}
${SUDO} apt -y build-dep .
make deb || exit 0
${SUDO} apt -y install ./pve-eslint_${PVE_ESLINT_VERSION}_all.deb
cd ..
else
echo "pve-eslint up-to-date"
fi
PVE_COMMON_VERSION="7.0-14"
PVE_COMMON_GIT="3efa9ecd60825f2c95f3136bdaa3a258b13cdd38"
if ! dpkg-query -W -f='${Version}' libpve-common-perl | grep -q ${PVE_COMMON_VERSION}; then
if [ ! -d pve-common ]; then
git clone https://git.proxmox.com/git/pve-common.git
else
git -C pve-common fetch
fi
cd pve-common/
git checkout ${PVE_COMMON_GIT}
${SUDO} apt -y build-dep .
make deb || exit 0
${SUDO} dpkg -i --force-depends ./libpve-common-perl_${PVE_COMMON_VERSION}_all.deb || exit 0
cd ..
else
echo "libpve-common-perl up-to-date"
fi
PROXMOX_ACME_VERSION="1.4.0"
PROXMOX_ACME_GIT="300242d78bd63e91d0bc452e6284dafbec1043b1"
if ! dpkg-query -W -f='${Version}' libproxmox-acme-perl | grep -q ${PROXMOX_ACME_VERSION}; then
if [ ! -d proxmox-acme ]; then
git clone https://git.proxmox.com/git/proxmox-acme.git
else
git -C proxmox-acme fetch
fi
cd proxmox-acme/
git checkout ${PROXMOX_ACME_GIT}
make deb || exit 0
${SUDO} apt -y --fix-broken install ./libproxmox-acme-perl_${PROXMOX_ACME_VERSION}_all.deb ./libproxmox-acme-plugins_${PROXMOX_ACME_VERSION}_all.deb
cd ..
else
echo "libproxmox-acme-perl up-to-date"
fi
PROXMOX_WIDGETTOOLKIT_VERSION="3.4-1"
PROXMOX_WIDGETTOOLKIT_GIT="ceff5d3fc037d18c01a3c36acabc8c5713279f3d"
if ! dpkg-query -W -f='${Version}' proxmox-widget-toolkit-dev | grep -q ${PROXMOX_WIDGETTOOLKIT_VERSION}; then
if [ ! -d proxmox-widget-toolkit ]; then
git clone https://git.proxmox.com/git/proxmox-widget-toolkit.git
else
git -C proxmox-widget-toolkit fetch
fi
cd proxmox-widget-toolkit/
git checkout ${PROXMOX_WIDGETTOOLKIT_GIT}
${SUDO} apt -y build-dep .
make deb || exit 0
${SUDO} apt -y install ./proxmox-widget-toolkit-dev_${PROXMOX_WIDGETTOOLKIT_VERSION}_all.deb
cd ..
else
echo "proxmox-widget-toolkit up-to-date"
fi
PROXMOX_BACKUP_TAG="2.1.2"
PROXMOX_BACKUP_VERSION="2.1.2-1"
PROXMOX_GIT="c0312f3717bd00ace434929e7d3305b058f4aae9"
PROMXOX_FUSE_GIT="0e0966af8886c176d8decfe18cb7ead4db5a83a6"
PXAR_GIT="b203d38bcd399f852f898d24403f3d592e5f75f8"
PATHPATTERNS_GIT="916e41c50e75a718ab7b1b95dc770eed9cd7a403"
PROXMOX_ACME_RS_GIT="fb547f59352155bdc7a9738237e4df8fa0cda10d"
PROXMOX_APT_GIT="c7b17de1b5fec5807921efc9565917c3d6b09417"
PROXMOX_OPENID_GIT="d6e7e2599f5190d38dfab58426ebd0ce6a55dd1e"
if [ ! -e packages/proxmox-backup-server_${PROXMOX_BACKUP_VERSION}_arm64.deb ]; then
[ ! -d proxmox ] && git clone https://git.proxmox.com/git/proxmox.git || git -C proxmox fetch
git -C proxmox checkout ${PROXMOX_GIT}
[ ! -d proxmox-fuse ] && git clone https://git.proxmox.com/git/proxmox-fuse.git || git -C proxmox-fuse fetch
git -C proxmox-fuse checkout ${PROMXOX_FUSE_GIT}
[ ! -d pxar ] && git clone https://git.proxmox.com/git/pxar.git || git -C pxar fetch
git -C pxar checkout ${PXAR_GIT}
[ ! -d pathpatterns ] && git clone https://git.proxmox.com/git/pathpatterns.git || git -C pathpatterns fetch
git -C pathpatterns checkout ${PATHPATTERNS_GIT}
[ ! -d proxmox-acme-rs ] && git clone https://git.proxmox.com/git/proxmox-acme-rs.git || git -C proxmox-acme-rs fetch
git -C proxmox-acme-rs checkout ${PROXMOX_ACME_RS_GIT}
[ ! -d proxmox-apt ] && git clone https://git.proxmox.com/git/proxmox-apt.git || git -C proxmox-apt fetch
git -C proxmox-apt checkout ${PROXMOX_APT_GIT}
[ ! -d proxmox-openid-rs ] && git clone https://git.proxmox.com/git/proxmox-openid-rs.git || git -C proxmox-openid-rs fetch
git -C proxmox-openid-rs checkout ${PROXMOX_OPENID_GIT}
[ ! -d proxmox-backup ] && git clone https://git.proxmox.com/git/proxmox-backup.git || git -C proxmox-backup fetch
git -C proxmox-backup clean -f
git -C proxmox-backup checkout .
git -C proxmox-backup checkout ${PROXMOX_BACKUP_TAG}
patch -p1 -d proxmox-backup/ < patches/proxmox-backup-arm.patch
patch -p1 -d proxmox-backup/ < patches/proxmox-backup-compile.patch
cd proxmox-backup
cargo vendor || exit 0
${SUDO} apt -y build-dep .
dpkg-buildpackage -b -us -uc --no-pre-clean || exit 0
cd ..
cp -a proxmox-backup-client_${PROXMOX_BACKUP_VERSION}_arm64.deb \
proxmox-backup-docs_${PROXMOX_BACKUP_VERSION}_all.deb \
proxmox-backup-file-restore_${PROXMOX_BACKUP_VERSION}_arm64.deb \
proxmox-backup-server_${PROXMOX_BACKUP_VERSION}_arm64.deb \
packages/
else
echo "proxmox-backup up-to-date"
fi
PROXMOX_XTERMJS_GIT="d3636d45d973e79a05a89c7e7e3d0fec73f6e067"
PVE_XTERMJS_VER="4.12.0-1"
PVE_XTERMJS_GIT="3b087ebf80621a39e2977cad327056ff4b425efe"
if [ ! -e packages/pve-xtermjs_${PVE_XTERMJS_VER}_arm64.deb ]; then
[ ! -d proxmox ] && git clone https://git.proxmox.com/git/proxmox.git || git -C proxmox fetch
git -C proxmox checkout ${PROXMOX_XTERMJS_GIT}
[ ! -d pve-xtermjs ] && git clone https://git.proxmox.com/git/pve-xtermjs.git || git -C pve-xtermjs fetch
git -C pve-xtermjs clean -f
git -C pve-xtermjs checkout .
git -C pve-xtermjs checkout ${PVE_XTERMJS_GIT}
patch -p1 -d pve-xtermjs/ < patches/pve-xtermjs-arm.patch
cd pve-xtermjs
make deb || exit 0
cd ..
cp -a pve-xtermjs_${PVE_XTERMJS_VER}_arm64.deb packages/
else
echo "pve-xtermjs up-to-date"
fi
PROXMOX_JOURNALREADER_VER="1.2-1"
PROXMOX_JOURNALREADER_GIT="5ce05d16f63b5bddc0ffffa7070c490763eeda22"
if [ ! -e packages/proxmox-mini-journalreader_${PROXMOX_JOURNALREADER_VER}_arm64.deb ]; then
[ ! -d proxmox-mini-journalreader ] && git clone https://git.proxmox.com/git/proxmox-mini-journalreader.git || git -C proxmox-mini-journalreader fetch
git -C proxmox-mini-journalreader clean -f
git -C proxmox-mini-journalreader checkout .
git -C proxmox-mini-journalreader checkout ${PROXMOX_JOURNALREADER_GIT}
patch -p1 -d proxmox-mini-journalreader/ < patches/proxmox-mini-journalreader.patch
cd proxmox-mini-journalreader/
make deb || exit 0
cp -a proxmox-mini-journalreader_${PROXMOX_JOURNALREADER_VER}_arm64.deb ../packages
cd ..
else
echo "proxmox-mini-journalreader up-to-date"
fi
PBS_I18N_VER="2.6-2"
PBS_I18N_GIT="bc0fe9172658e0a203480834275472f120501148"
if [ ! -e packages/pbs-i18n_${PBS_I18N_VER}_all.deb ]; then
[ ! -d proxmox-i18n ] && git clone https://git.proxmox.com/git/proxmox-i18n.git || git -C proxmox-i18n fetch
git -C proxmox-i18n checkout ${PBS_I18N_GIT}
cd proxmox-i18n/
make deb || exit 0
cp -a pbs-i18n_${PBS_I18N_VER}_all.deb ../packages/
cd ..
else
echo "pbs-i18n up-to-date"
fi
EXTJS_VER="7.0.0-1"
EXTJS_GIT="58b59e2e04ae5cc29a12c10350db15cceb556277"
if [ ! -e packages/libjs-extjs_${EXTJS_VER}_all.deb ]; then
[ ! -d extjs ] && git clone https://git.proxmox.com/git/extjs.git || git -C extjs fetch
git -C extjs checkout ${EXTJS_GIT}
cd extjs/
make deb || exit 0
cp -a libjs-extjs_${EXTJS_VER}_all.deb ../packages/
cd ..
else
echo "libjs-extjs up-to-date"
fi
QRCODEJS_VER="1.20201119-pve1"
QRCODEJS_GIT="1cc4649f55853d7d890aa444a7a58a8466f10493"
if [ ! -e packages/libjs-qrcodejs_${QRCODEJS_VER}_all.deb ]; then
[ ! -d libjs-qrcodejs ] && git clone https://git.proxmox.com/git/libjs-qrcodejs.git || git -C libjs-qrcodejs fetch
git -C libjs-qrcodejs checkout ${QRCODEJS_GIT}
cd libjs-qrcodejs
make deb || exit 0
cp -a libjs-qrcodejs_${QRCODEJS_VER}_all.deb ../packages/
cd ..
else
echo "libjs-qrcodejs up-to-date"
fi

View File

@@ -0,0 +1,212 @@
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 eed8f8f9..0169a1ed 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -130,6 +130,26 @@ pbs-tape = { path = "pbs-tape" }
#proxmox-tfa = { path = "../proxmox/proxmox-tfa" }
#proxmox-schema = { path = "../proxmox/proxmox-schema" }
#pxar = { path = "../pxar" }
+proxmox = { path = "../proxmox/proxmox", features = [ "sortable-macro", "api-macro", "cli", "router", "tfa" ] }
+proxmox-http = { path = "../proxmox/proxmox-http", features = [ "client", "http-helpers", "websocket" ] }
+proxmox-fuse = { path = "../proxmox-fuse" }
+proxmox-io = { path = "../proxmox/proxmox-io" }
+proxmox-lang = { path = "../proxmox/proxmox-lang" }
+proxmox-router = { path = "../proxmox/proxmox-router", features = [ "cli" ] }
+proxmox-schema = { path = "../proxmox/proxmox-schema", features = [ "api-macro" ] }
+proxmox-section-config = { path = "../proxmox/proxmox-section-config" }
+proxmox-tfa = { path = "../proxmox/proxmox-tfa", features = [ "u2f" ] }
+proxmox-time = { path = "../proxmox/proxmox-time" }
+proxmox-uuid = { path = "../proxmox/proxmox-uuid" }
+proxmox-borrow = { path = "../proxmox/proxmox-borrow" }
+proxmox-async = { path = "../proxmox/proxmox-async" }
+proxmox-sys = { path = "../proxmox/proxmox-sys" }
+proxmox-shared-memory = { path = "../proxmox/proxmox-shared-memory" }
+proxmox-apt = { path = "../proxmox-apt" }
+proxmox-openid = { path = "../proxmox-openid-rs" }
+proxmox-acme-rs = { path = "../proxmox-acme-rs" }
+pxar = { path = "../pxar", features = [ "tokio-io" ] }
+pathpatterns = { path = "../pathpatterns" }
[features]
default = []
diff --git a/debian/control b/debian/control
index 170009ab..f3298cbe 100644
--- a/debian/control
+++ b/debian/control
@@ -6,106 +6,6 @@ Build-Depends: debhelper (>= 12),
cargo:native,
rustc:native,
libstd-rust-dev,
- librust-anyhow-1+default-dev,
- librust-apt-pkg-native-0.3+default-dev (>= 0.3.2-~~),
- librust-base64-0.13+default-dev,
- librust-bitflags-1+default-dev (>= 1.2.1-~~),
- librust-bytes-1+default-dev,
- librust-cidr-0.2+default-dev (>= 0.2.1-~~),
- librust-crc32fast-1+default-dev,
- librust-crossbeam-channel-0.5+default-dev,
- librust-endian-trait-0.6+arrays-dev,
- librust-endian-trait-0.6+default-dev,
- librust-env-logger-0.7+default-dev,
- librust-flate2-1+default-dev,
- librust-foreign-types-0.3+default-dev,
- librust-futures-0.3+default-dev,
- librust-h2-0.3+default-dev,
- librust-h2-0.3+stream-dev,
- librust-handlebars-3+default-dev,
- librust-hex-0.4+default-dev (>= 0.4.3-~~),
- librust-http-0.2+default-dev,
- librust-hyper-0.14+default-dev (>= 0.14.5-~~),
- librust-hyper-0.14+full-dev (>= 0.14.5-~~),
- librust-lazy-static-1+default-dev (>= 1.4-~~),
- librust-libc-0.2+default-dev,
- librust-log-0.4+default-dev,
- librust-nix-0.19+default-dev (>= 0.19.1-~~),
- librust-nom-5+default-dev (>= 5.1-~~),
- librust-num-traits-0.2+default-dev,
- librust-once-cell-1+default-dev (>= 1.3.1-~~),
- librust-openssl-0.10+default-dev,
- librust-pam-0.7+default-dev,
- librust-pam-sys-0.5+default-dev,
- librust-pathpatterns-0.1+default-dev (>= 0.1.2-~~),
- librust-percent-encoding-2+default-dev (>= 2.1-~~),
- librust-pin-project-lite-0.2+default-dev,
- librust-proxmox-0.15+default-dev (>= 0.15.3-~~),
- librust-proxmox-0.15+sortable-macro-dev (>= 0.15.3-~~),
- librust-proxmox-0.15+tokio-dev (>= 0.15.3-~~),
- librust-proxmox-acme-rs-0.3+default-dev,
- librust-proxmox-apt-0.8+default-dev,
- librust-proxmox-async-0.2+default-dev,
- librust-proxmox-borrow-1+default-dev,
- librust-proxmox-fuse-0.1+default-dev (>= 0.1.1-~~),
- librust-proxmox-http-0.5+client-dev (>= 0.5.4-~~),
- librust-proxmox-http-0.5+default-dev (>= 0.5.4-~~),
- librust-proxmox-http-0.5+http-helpers-dev (>= 0.5.4-~~),
- librust-proxmox-http-0.5+websocket-dev (>= 0.5.4-~~),
- librust-proxmox-io-1+default-dev,
- librust-proxmox-io-1+tokio-dev,
- librust-proxmox-lang-1+default-dev,
- librust-proxmox-openid-0.9+default-dev,
- librust-proxmox-router-1+cli-dev (>= 1.1-~~),
- librust-proxmox-router-1+default-dev (>= 1.1-~~),
- librust-proxmox-schema-1+api-macro-dev (>= 1.0.1-~~),
- librust-proxmox-schema-1+default-dev (>= 1.0.1-~~),
- librust-proxmox-schema-1+upid-api-impl-dev (>= 1.0.1-~~),
- librust-proxmox-section-config-1+default-dev,
- librust-proxmox-shared-memory-0.1+default-dev (>= 0.1.1-~~),
- librust-proxmox-sys-0.1+default-dev (>= 0.1.2-~~),
- librust-proxmox-tfa-1+api-dev (>= 1.3-~~),
- librust-proxmox-tfa-1+api-types-dev (>= 1.3-~~),
- librust-proxmox-tfa-1+default-dev (>= 1.3-~~),
- librust-proxmox-time-1+default-dev (>= 1.1-~~),
- librust-proxmox-uuid-1+default-dev,
- librust-proxmox-uuid-1+serde-dev,
- librust-pxar-0.10+default-dev (>= 0.10.1-~~),
- librust-pxar-0.10+tokio-io-dev (>= 0.10.1-~~),
- librust-regex-1+default-dev (>= 1.2-~~),
- librust-rustyline-7+default-dev,
- librust-serde-1+default-dev,
- librust-serde-1+derive-dev,
- librust-serde-cbor-0.11+default-dev (>= 0.11.1-~~),
- librust-serde-json-1+default-dev,
- librust-siphasher-0.3+default-dev,
- librust-syslog-4+default-dev,
- librust-thiserror-1+default-dev,
- librust-tokio-1+default-dev (>= 1.6-~~),
- librust-tokio-1+fs-dev (>= 1.6-~~),
- librust-tokio-1+io-std-dev (>= 1.6-~~),
- librust-tokio-1+io-util-dev (>= 1.6-~~),
- librust-tokio-1+macros-dev (>= 1.6-~~),
- librust-tokio-1+net-dev (>= 1.6-~~),
- librust-tokio-1+parking-lot-dev (>= 1.6-~~),
- librust-tokio-1+process-dev (>= 1.6-~~),
- librust-tokio-1+rt-dev (>= 1.6-~~),
- librust-tokio-1+rt-multi-thread-dev (>= 1.6-~~),
- librust-tokio-1+signal-dev (>= 1.6-~~),
- librust-tokio-1+sync-dev (>= 1.6-~~),
- librust-tokio-1+time-dev (>= 1.6-~~),
- librust-tokio-openssl-0.6+default-dev (>= 0.6.1-~~),
- librust-tokio-stream-0.1+default-dev,
- librust-tokio-util-0.6+codec-dev,
- librust-tokio-util-0.6+default-dev,
- librust-tokio-util-0.6+io-dev,
- librust-tower-service-0.3+default-dev,
- librust-udev-0.4+default-dev,
- librust-url-2+default-dev (>= 2.1-~~),
- librust-walkdir-2+default-dev,
- librust-xdg-2+default-dev (>= 2.2-~~),
- librust-zstd-0.6+bindgen-dev,
- librust-zstd-0.6+default-dev,
libacl1-dev,
libfuse3-dev,
libsystemd-dev (>= 246-~~),
diff --git a/debian/proxmox-backup-file-restore.install b/debian/proxmox-backup-file-restore.install
index d952836e..7e1bf2dd 100644
--- a/debian/proxmox-backup-file-restore.install
+++ b/debian/proxmox-backup-file-restore.install
@@ -1,4 +1,4 @@
usr/bin/proxmox-file-restore
usr/share/man/man1/proxmox-file-restore.1
usr/share/zsh/vendor-completions/_proxmox-file-restore
-usr/lib/x86_64-linux-gnu/proxmox-backup/file-restore/proxmox-restore-daemon
+usr/lib/aarch64-linux-gnu/proxmox-backup/file-restore/proxmox-restore-daemon
diff --git a/debian/proxmox-backup-file-restore.postinst b/debian/proxmox-backup-file-restore.postinst
index feb0557b..9501d29b 100755
--- a/debian/proxmox-backup-file-restore.postinst
+++ b/debian/proxmox-backup-file-restore.postinst
@@ -4,7 +4,7 @@ set -e
update_initramfs() {
# regenerate initramfs for single file restore VM
- INST_PATH="/usr/lib/x86_64-linux-gnu/proxmox-backup/file-restore"
+ INST_PATH="/usr/lib/aarch64-linux-gnu/proxmox-backup/file-restore"
CACHE_PATH="/var/cache/proxmox-backup/file-restore-initramfs.img"
CACHE_PATH_DBG="/var/cache/proxmox-backup/file-restore-initramfs-debug.img"
diff --git a/debian/proxmox-backup-server.install b/debian/proxmox-backup-server.install
index 6e2219b4..82954cdd 100644
--- a/debian/proxmox-backup-server.install
+++ b/debian/proxmox-backup-server.install
@@ -4,11 +4,11 @@ etc/proxmox-backup-banner.service /lib/systemd/system/
etc/proxmox-backup-daily-update.service /lib/systemd/system/
etc/proxmox-backup-daily-update.timer /lib/systemd/system/
etc/pbs-enterprise.list /etc/apt/sources.list.d/
-usr/lib/x86_64-linux-gnu/proxmox-backup/proxmox-backup-api
-usr/lib/x86_64-linux-gnu/proxmox-backup/proxmox-backup-proxy
-usr/lib/x86_64-linux-gnu/proxmox-backup/proxmox-backup-banner
-usr/lib/x86_64-linux-gnu/proxmox-backup/proxmox-daily-update
-usr/lib/x86_64-linux-gnu/proxmox-backup/sg-tape-cmd
+usr/lib/aarch64-linux-gnu/proxmox-backup/proxmox-backup-api
+usr/lib/aarch64-linux-gnu/proxmox-backup/proxmox-backup-proxy
+usr/lib/aarch64-linux-gnu/proxmox-backup/proxmox-backup-banner
+usr/lib/aarch64-linux-gnu/proxmox-backup/proxmox-daily-update
+usr/lib/aarch64-linux-gnu/proxmox-backup/sg-tape-cmd
usr/sbin/proxmox-backup-debug
usr/sbin/proxmox-backup-manager
usr/bin/pmtx

View File

@@ -0,0 +1,53 @@
diff --git a/src/api2/backup/environment.rs b/src/api2/backup/environment.rs
index 5906cb57..bdac20bd 100644
--- a/src/api2/backup/environment.rs
+++ b/src/api2/backup/environment.rs
@@ -195,7 +195,7 @@ impl BackupEnvironment {
if size < data.chunk_size {
data.small_chunk_count += 1;
if data.small_chunk_count > 1 {
- bail!("fixed writer '{}' - detected multiple end chunks (chunk size too small)");
+ bail!("fixed writer '{}' - detected multiple end chunks (chunk size too small)", data.name);
}
}
diff --git a/src/tape/drive/mod.rs b/src/tape/drive/mod.rs
index 16845973..67b75557 100644
--- a/src/tape/drive/mod.rs
+++ b/src/tape/drive/mod.rs
@@ -260,7 +260,7 @@ pub fn media_changer(
None => Ok(None),
}
}
- _ => bail!("unknown drive type '{}' - internal error"),
+ _ => bail!("unknown drive type '{}' - internal error", section_type_name),
}
}
None => {
@@ -308,7 +308,7 @@ pub fn open_drive(
let handle = open_lto_tape_drive(&tape)?;
Ok(Box::new(handle))
}
- _ => bail!("unknown drive type '{}' - internal error"),
+ _ => bail!("unknown drive type '{}' - internal error", section_type_name),
}
}
None => {
@@ -498,7 +498,7 @@ pub fn request_and_load_media(
update_and_log_request_error(&mut last_error, request_error)?;
}
}
- _ => bail!("drive type '{}' not implemented!"),
+ _ => bail!("drive type '{}' not implemented!", section_type_name),
}
}
None => {
@@ -587,7 +587,7 @@ fn tape_device_path(
"lto" => {
LtoTapeDrive::deserialize(config)?.path
}
- _ => bail!("unknown drive type '{}' - internal error"),
+ _ => bail!("unknown drive type '{}' - internal error", section_type_name),
};
Ok(path)
}

View File

@@ -0,0 +1,18 @@
diff --git a/src/mini-journalreader.c b/src/mini-journalreader.c
index 92176ac..2e0cfa9 100644
--- a/src/mini-journalreader.c
+++ b/src/mini-journalreader.c
@@ -214,10 +214,12 @@ int main(int argc, char *argv[]) {
uint64_t begin = 0;
uint64_t end = 0;
char c;
+ int opt = 0;
progname = argv[0];
- while ((c = (char)getopt (argc, argv, "b:e:d:n:f:t:h")) != -1) {
+ while ((opt = getopt (argc, argv, "b:e:d:n:f:t:h")) != -1) {
+ c = (char) opt;
switch (c) {
case 'b':
begin = arg_to_uint64(optarg);

View File

@@ -0,0 +1,94 @@
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 ffd72b2..f808e7e 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,5 +1,5 @@
[package]
-name = "termproxy"
+name = "pve-xtermjs"
version = "4.12.0"
authors = [
"Dominik Csapak <d.csapak@proxmox.com>",
@@ -14,4 +14,5 @@ exclude = [ "build", "debian" ]
mio = { version = "0.7", features = [ "net", "os-ext" ] }
curl = "0.4"
clap = "2.33"
-proxmox = { version = "0.10.0", default-features = false }
+#proxmox = { version = "0.10.0", default-features = false }
+proxmox = { path = "../proxmox/proxmox", default-features = false }
diff --git a/Makefile b/Makefile
index 0cabc7d..18891c9 100644
--- a/Makefile
+++ b/Makefile
@@ -35,6 +35,14 @@ $(SUBDIRS):
cargo-build:
cargo build $(CARGO_BUILD_ARGS)
+.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
+
.PHONY: build
build:
rm -rf build
@@ -53,9 +61,10 @@ build:
.PHONY: deb
deb: ${DEB}
-$(DEB): build
- cd build; dpkg-buildpackage -b -uc -us --no-pre-clean
- 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/cargo-checksum.json b/debian/cargo-checksum.json
new file mode 100644
index 0000000..e69de29
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
index d9612f8..29df636 100644
--- a/debian/control
+++ b/debian/control
@@ -3,15 +3,6 @@ Section: admin
Priority: optional
Build-Depends: debhelper (>= 12),
dh-cargo (>= 24),
- cargo:native,
- rustc:native,
- libstd-rust-dev,
- librust-clap-2+default-dev (>= 2.33-~~),
- librust-curl-0.4+default-dev,
- librust-mio-0.7+default-dev,
- librust-mio-0.7+net-dev,
- librust-mio-0.7+os-ext-dev,
- librust-proxmox-0.10-dev
Maintainer: Proxmox Support Team <support@proxmox.com>
Standards-Version: 4.5.1
Vcs-Git: git://git.proxmox.com/git/pve-xtermjs.git