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

@@ -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