forked from proxmox-mirrors/proxmox-backup
Compare commits
2 Commits
65025459b0
...
e2bab5b49d
Author | SHA1 | Date | |
---|---|---|---|
![]() |
e2bab5b49d | ||
![]() |
406987a79c |
@ -1,8 +1,32 @@
|
||||
[source]
|
||||
[source.debian-packages]
|
||||
directory = "/usr/share/cargo/registry"
|
||||
[source.crates-io]
|
||||
replace-with = "debian-packages"
|
||||
replace-with = "dh-cargo-registry"
|
||||
|
||||
[source.dh-cargo-registry]
|
||||
directory = "/root/proxmox-backup/debian/cargo_registry"
|
||||
|
||||
[build]
|
||||
rustflags = ['-C', 'debuginfo=2', '-C', 'strip=none', '--cap-lints', 'warn', '--remap-path-prefix', '/root/proxmox-backup=/usr/share/cargo/registry/proxmox-backup-4.0.6', '--remap-path-prefix', '/root/proxmox-backup/debian/cargo_registry=/usr/share/cargo/registry']
|
||||
|
||||
[profile.release]
|
||||
debug=true
|
||||
debug = true
|
||||
|
||||
[target.x86_64-unknown-linux-gnu]
|
||||
linker = "x86_64-linux-gnu-gcc"
|
||||
ar = "x86_64-linux-gnu-ar"
|
||||
rustflags = [
|
||||
"-L", "/usr/lib/x86_64-linux-gnu",
|
||||
]
|
||||
|
||||
[target.riscv64gc-unknown-linux-gnu]
|
||||
linker = "riscv64-linux-gnu-gcc"
|
||||
ar = "riscv64-linux-gnu-ar"
|
||||
rustflags = [
|
||||
"-L", "/usr/lib/riscv64-linux-gnu",
|
||||
]
|
||||
|
||||
[target.aarch64-unknown-linux-gnu]
|
||||
linker = "aarch64-linux-gnu-gcc"
|
||||
ar = "aarch64-linux-gnu-ar"
|
||||
rustflags = [
|
||||
"-L", "/usr/lib/aarch64-linux-gnu",
|
||||
]
|
||||
|
15
Makefile
15
Makefile
@ -90,7 +90,7 @@ DESTDIR=
|
||||
|
||||
tests ?= --workspace
|
||||
|
||||
all: proxmox-backup-client-static $(SUBDIRS)
|
||||
all: $(SUBDIRS)
|
||||
|
||||
.PHONY: $(SUBDIRS)
|
||||
$(SUBDIRS):
|
||||
@ -129,21 +129,21 @@ build:
|
||||
.PHONY: proxmox-backup-docs
|
||||
$(DOC_DEB) $(DEBS): proxmox-backup-docs
|
||||
proxmox-backup-docs: build
|
||||
cd build; dpkg-buildpackage -b -us -uc --no-pre-clean
|
||||
cd build; dpkg-buildpackage -b -us -uc --no-pre-clean -a$(ARCH)
|
||||
lintian $(DOC_DEB)
|
||||
|
||||
.PHONY: deb dsc deb-nodoc deb-nostrip
|
||||
deb-nodoc: build
|
||||
cd build; dpkg-buildpackage -b -us -uc --no-pre-clean --build-profiles=nodoc
|
||||
cd build; dpkg-buildpackage -b -us -uc --no-pre-clean --build-profiles=nodoc -a$(ARCH)
|
||||
lintian $(DEBS)
|
||||
|
||||
deb-nostrip: build
|
||||
cd build; DEB_BUILD_OPTIONS=nostrip dpkg-buildpackage -b -us -uc
|
||||
cd build; DEB_BUILD_OPTIONS=nostrip dpkg-buildpackage -b -us -uc -a$(ARCH)
|
||||
lintian $(DEBS) $(DOC_DEB)
|
||||
|
||||
$(DEBS): deb
|
||||
deb: build
|
||||
cd build; dpkg-buildpackage -b -us -uc
|
||||
cd build; dpkg-buildpackage -b -us -uc -a$(ARCH)
|
||||
lintian $(DEBS) $(DOC_DEB)
|
||||
|
||||
.PHONY: dsc
|
||||
@ -212,6 +212,7 @@ $(COMPILED_BINS) $(COMPILEDIR)/dump-catalog-shell-cli $(COMPILEDIR)/docgen &:
|
||||
|
||||
.PHONY: proxmox-backup-client-static
|
||||
proxmox-backup-client-static:
|
||||
export CRATE_CC_NO_DEFAULTS=0
|
||||
$(MAKE) $(STATIC_BINS)
|
||||
|
||||
$(STATIC_BINS) &:
|
||||
@ -247,8 +248,8 @@ install: $(COMPILED_BINS) $(STATIC_BINS)
|
||||
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/ ;)
|
||||
install -m755 $(STATIC_COMPILEDIR)/proxmox-backup-client $(DESTDIR)$(BINDIR)/proxmox-backup-client-static
|
||||
install -m755 $(STATIC_COMPILEDIR)/pxar $(DESTDIR)$(BINDIR)/pxar-static
|
||||
# install -m755 $(STATIC_COMPILEDIR)/proxmox-backup-client $(DESTDIR)$(BINDIR)/proxmox-backup-client-static
|
||||
# install -m755 $(STATIC_COMPILEDIR)/pxar $(DESTDIR)$(BINDIR)/pxar-static
|
||||
$(MAKE) -C www install
|
||||
$(MAKE) -C docs install
|
||||
$(MAKE) -C templates install
|
||||
|
4
debian/control
vendored
4
debian/control
vendored
@ -65,7 +65,7 @@ Build-Depends: bash-completion,
|
||||
librust-proxmox-apt-0.99+default-dev,
|
||||
librust-proxmox-apt-api-types-2+default-dev,
|
||||
librust-proxmox-async-0.5+default-dev,
|
||||
librust-proxmox-auth-api-1+api-dev (>= 1.0.2),
|
||||
librust-proxmox-auth-api-1+api-dev ,
|
||||
librust-proxmox-auth-api-1+default-dev,
|
||||
librust-proxmox-auth-api-1+pam-authenticator-dev,
|
||||
librust-proxmox-base64-1+default-dev,
|
||||
@ -161,11 +161,9 @@ Build-Depends: bash-completion,
|
||||
librust-zstd-0.13+default-dev,
|
||||
librust-zstd-safe-7+default-dev,
|
||||
libsgutils2-dev,
|
||||
libstd-rust-dev,
|
||||
libsystemd-dev (>= 246-~~),
|
||||
patchelf,
|
||||
proxmox-widget-toolkit-dev <!nodoc>,
|
||||
proxmox-biome,
|
||||
python3-docutils,
|
||||
python3-pygments,
|
||||
python3-sphinx <!nodoc>,
|
||||
|
2
debian/proxmox-backup-file-restore.install
vendored
2
debian/proxmox-backup-file-restore.install
vendored
@ -1,4 +1,4 @@
|
||||
usr/bin/proxmox-file-restore
|
||||
usr/lib/x86_64-linux-gnu/proxmox-backup/file-restore/proxmox-restore-daemon
|
||||
usr/lib/riscv64-linux-gnu/proxmox-backup/file-restore/proxmox-restore-daemon
|
||||
usr/share/man/man1/proxmox-file-restore.1
|
||||
usr/share/zsh/vendor-completions/_proxmox-file-restore
|
||||
|
47
debian/rules
vendored
47
debian/rules
vendored
@ -22,6 +22,50 @@ export CARGO=/usr/share/cargo/bin/cargo
|
||||
|
||||
export CFLAGS CXXFLAGS CPPFLAGS LDFLAGS
|
||||
export DEB_HOST_RUST_TYPE DEB_HOST_GNU_TYPE
|
||||
export CRATE_CC_NO_DEFAULTS=1
|
||||
# Set cross-compilation environment variables for OpenSSL and C libraries
|
||||
# ifeq ($(DEB_HOST_ARCH),riscv64)
|
||||
# export CC_riscv64gc_unknown_linux_gnu=riscv64-linux-gnu-gcc
|
||||
# export CXX_riscv64gc_unknown_linux_gnu=riscv64-linux-gnu-g++
|
||||
# export AR_riscv64gc_unknown_linux_gnu=riscv64-linux-gnu-ar
|
||||
# export CARGO_TARGET_RISCV64GC_UNKNOWN_LINUX_GNU_LINKER=riscv64-linux-gnu-gcc
|
||||
# export CRATE_CC_NO_DEFAULTS=1
|
||||
# export CFLAGS_riscv64gc_unknown_linux_gnu=-fPIC
|
||||
# export CXXFLAGS_riscv64gc_unknown_linux_gnu=-fPIC
|
||||
# export PKG_CONFIG_riscv64gc_unknown_linux_gnu=riscv64-linux-gnu-pkg-config
|
||||
# export PKG_CONFIG_PATH_riscv64gc_unknown_linux_gnu=/usr/lib/riscv64-linux-gnu/pkgconfig
|
||||
# export PKG_CONFIG_LIBDIR_riscv64gc_unknown_linux_gnu=/usr/lib/riscv64-linux-gnu/pkgconfig
|
||||
# export RISCV64GC_UNKNOWN_LINUX_GNU_OPENSSL_LIB_DIR=/usr/lib/riscv64-linux-gnu
|
||||
# export RISCV64GC_UNKNOWN_LINUX_GNU_OPENSSL_INCLUDE_DIR=/usr/include
|
||||
# endif
|
||||
# ifeq ($(DEB_HOST_ARCH),arm64)
|
||||
# export CC_aarch64_unknown_linux_gnu=aarch64-linux-gnu-gcc
|
||||
# export CXX_aarch64_unknown_linux_gnu=aarch64-linux-gnu-g++
|
||||
# export AR_aarch64_unknown_linux_gnu=aarch64-linux-gnu-ar
|
||||
# export CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=aarch64-linux-gnu-gcc
|
||||
# export CFLAGS_aarch64_unknown_linux_gnu=-fPIC
|
||||
# export CXXFLAGS_aarch64_unknown_linux_gnu=-fPIC
|
||||
# export PKG_CONFIG_aarch64_unknown_linux_gnu=aarch64-linux-gnu-pkg-config
|
||||
# export PKG_CONFIG_PATH_aarch64_unknown_linux_gnu=/usr/lib/aarch64-linux-gnu/pkgconfig
|
||||
# export PKG_CONFIG_LIBDIR_aarch64_unknown_linux_gnu=/usr/lib/aarch64-linux-gnu/pkgconfig
|
||||
# export AARCH64_UNKNOWN_LINUX_GNU_OPENSSL_LIB_DIR=/usr/lib/aarch64-linux-gnu
|
||||
# export AARCH64_UNKNOWN_LINUX_GNU_OPENSSL_INCLUDE_DIR=/usr/include
|
||||
# endif
|
||||
|
||||
# ifeq ($(DEB_HOST_ARCH),loong64)
|
||||
# export CC_loongarch64_unknown_linux_gnu=loongarch64-linux-gnu-gcc
|
||||
# export CXX_loongarch64_unknown_linux_gnu=loongarch64-linux-gnu-g++
|
||||
# export AR_loongarch64_unknown_linux_gnu=loongarch64-linux-gnu-ar
|
||||
# export CARGO_TARGET_LOONGARCH64_UNKNOWN_LINUX_GNU_LINKER=loongarch64-linux-gnu-gcc
|
||||
# export CFLAGS_loongarch64_unknown_linux_gnu=-fPIC
|
||||
# export CXXFLAGS_loongarch64_unknown_linux_gnu=-fPIC
|
||||
# export PKG_CONFIG_loongarch64_unknown_linux_gnu=loongarch64-linux-gnu-pkg-config
|
||||
# export PKG_CONFIG_PATH_loongarch64_unknown_linux_gnu=/usr/lib/loongarch64-linux-gnu/pkgconfig
|
||||
# export PKG_CONFIG_LIBDIR_loongarch64_unknown_linux_gnu=/usr/lib/loongarch64-linux-gnu/pkgconfig
|
||||
# export LOONGARCH64_UNKNOWN_LINUX_GNU_OPENSSL_LIB_DIR=/usr/lib/loongarch64-linux-gnu
|
||||
# export LOONGARCH64_UNKNOWN_LINUX_GNU_OPENSSL_INCLUDE_DIR=/usr/include
|
||||
# endif
|
||||
|
||||
export CARGO_HOME = $(CURDIR)/debian/cargo_home
|
||||
|
||||
export DEB_CARGO_CRATE=proxmox-backup_$(DEB_VERSION_UPSTREAM)
|
||||
@ -60,9 +104,6 @@ override_dh_auto_install:
|
||||
dh_auto_install -- \
|
||||
PROXY_USER=backup \
|
||||
LIBDIR=/usr/lib/$(DEB_HOST_MULTIARCH)
|
||||
mkdir -p debian/proxmox-backup-client-static/usr/bin
|
||||
mv debian/tmp/usr/bin/proxmox-backup-client-static debian/proxmox-backup-client-static/usr/bin/proxmox-backup-client
|
||||
mv debian/tmp/usr/bin/pxar-static debian/proxmox-backup-client-static/usr/bin/pxar
|
||||
|
||||
override_dh_installsystemd:
|
||||
dh_installsystemd -pproxmox-backup-server proxmox-backup-daily-update.timer
|
||||
|
@ -301,7 +301,7 @@ pub async fn start_vm(
|
||||
let bus = (id / 32) + 2;
|
||||
if arch == "x86_64" {
|
||||
if id % 32 == 0 {
|
||||
rives.push("-device".to_owned());
|
||||
drives.push("-device".to_owned());
|
||||
drives.push(format!("pci-bridge,id=bridge{bus},chassis_nr={bus}"));
|
||||
}
|
||||
}
|
||||
@ -342,7 +342,7 @@ pub async fn start_vm(
|
||||
let qemu_bin = format!("qemu-system-{}", arch);
|
||||
let mut attempts = 0;
|
||||
loop {
|
||||
let mut qemu_cmd = std::process::Command::new(qemu_bin);
|
||||
let mut qemu_cmd = std::process::Command::new(&qemu_bin);
|
||||
qemu_cmd.args(base_args.iter());
|
||||
qemu_cmd.arg("-m");
|
||||
qemu_cmd.arg(format!(
|
||||
|
@ -285,8 +285,9 @@ impl TapeDriver for LtoTapeHandle {
|
||||
}
|
||||
|
||||
fn run_sg_tape_cmd(subcmd: &str, args: &[&str], fd: RawFd) -> Result<String, Error> {
|
||||
let arch = std::env::consts::ARCH;
|
||||
let mut command =
|
||||
std::process::Command::new("/usr/lib/x86_64-linux-gnu/proxmox-backup/sg-tape-cmd");
|
||||
std::process::Command::new(format!("/usr/lib/{arch}-linux-gnu/proxmox-backup/sg-tape-cmd"));
|
||||
command.args([subcmd]);
|
||||
command.args(["--stdin"]);
|
||||
command.args(args);
|
||||
|
Loading…
Reference in New Issue
Block a user