diff --git a/build.sh b/build.sh index 51bedc7..25f691c 100755 --- a/build.sh +++ b/build.sh @@ -148,13 +148,13 @@ ${SUDO} apt install -y "${packages_install[@]}" cd "${SOURCES}" -PROXMOX_BACKUP_VER="2.3.3-1" -PROXMOX_BACKUP_GIT="bde9e3d74c86d1600409f81e2a72de91e717cd62" -PATHPATTERNS_GIT="916e41c50e75a718ab7b1b95dc770eed9cd7a403" # 0.1.2-1 +PROXMOX_BACKUP_VER="2.4.0-2" +PROXMOX_BACKUP_GIT="743f83bc5a79e69e246d3a4ece57984270ee7869" +PATHPATTERNS_GIT="8a0dce93d535ef04bfa9c8317edc0ef0216e9042" # 0.1.3-1 PROXMOX_ACME_RS_GIT="abc0bdd09d5c3501534510d49da0ae8fa5c05c05" # 0.4.0 PROXMOX_APT_GIT="8a7a719aec23ad98a00bb452f0ced4cbf88ba591" # 0.9.3-1 PROMXOX_FUSE_GIT="8d57fb64f044ea3dcfdef77ed5f1888efdab0708" # 0.1.4 -PROXMOX_GIT="9c44e9b410a7eab21160d9588dcb8f5d88f1f979" +PROXMOX_GIT="32e7d3ccdfd2702dcceea312a6caee7b1565030a" PROXMOX_OPENID_GIT="ecf59cbb74278ea0e9710466508158ed6a6828c4" # 0.9.9-1 PXAR_GIT="29cbeed3e1b52f5eef455cdfa8b5e93f4e3e88f5" # 0.10.2-1 if [ ! -e "${PACKAGES}/proxmox-backup-server_${PROXMOX_BACKUP_VER}_arm64.deb" ]; then @@ -175,7 +175,6 @@ if [ ! -e "${PACKAGES}/proxmox-backup-server_${PROXMOX_BACKUP_VER}_arm64.deb" ]; git_clone_or_fetch https://git.proxmox.com/git/proxmox-backup.git git_clean_and_checkout ${PROXMOX_BACKUP_GIT} proxmox-backup - patch -p1 -d proxmox/ < "${PATCHES}/proxmox-no-ksm.patch" patch -p1 -d proxmox-backup/ < "${PATCHES}/proxmox-backup-arm.patch" cd proxmox-backup/ cargo vendor diff --git a/patches/proxmox-backup-arm.patch b/patches/proxmox-backup-arm.patch index de8a940..3651370 100644 --- a/patches/proxmox-backup-arm.patch +++ b/patches/proxmox-backup-arm.patch @@ -25,65 +25,72 @@ index 3b5b6e48..50908c05 100644 +[source.vendored-sources] +directory = "vendor" diff --git a/Cargo.toml b/Cargo.toml -index 2bf9ae48..588de82f 100644 +index 032060e0..14ee5288 100644 --- a/Cargo.toml +++ b/Cargo.toml -@@ -238,27 +238,29 @@ proxmox-rrd.workspace = true +@@ -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-apt = { path = "../proxmox-apt" } -#proxmox-async = { path = "../proxmox/proxmox-async" } --#proxmox-compression = { path = "../proxmox/proxmox-compression" } +-#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-openid = { path = "../proxmox-openid-rs" } --#proxmox-router = { path = "../proxmox/proxmox-rest-server" } +-#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-shared-memory = { path = "../proxmox/proxmox-shared-memory" } --#proxmox-sys = { path = "../proxmox/proxmox-sys" } -#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" } --#pxar = { path = "../pxar" } +proxmox-acme-rs = { path = "../proxmox-acme-rs" } -+proxmox-apt = { path = "../proxmox-apt" } +proxmox-async = { path = "../proxmox/proxmox-async" } -+proxmox-compression = { path = "../proxmox/proxmox-compression" } ++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-openid = { path = "../proxmox-openid-rs" } +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-serde = { path = "../proxmox/proxmox-serde" } +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-apt" } ++proxmox-openid = { path = "../proxmox-openid-rs" } + +-#pxar = { path = "../pxar" } +pxar = { path = "../pxar" } [features] default = [] diff --git a/debian/control b/debian/control -index 02f32ef8..13d713ff 100644 +index 286922b5..13d713ff 100644 --- a/debian/control +++ b/debian/control -@@ -2,124 +2,7 @@ Source: rust-proxmox-backup +@@ -2,133 +2,7 @@ Source: rust-proxmox-backup Section: admin Priority: optional Build-Depends: debhelper (>= 12), @@ -129,21 +136,30 @@ index 02f32ef8..13d713ff 100644 - librust-proxmox-acme-rs-0.4+default-dev, - librust-proxmox-apt-0.9+default-dev, - librust-proxmox-async-0.4+default-dev, +- librust-proxmox-auth-api-0.1+api-dev, +- librust-proxmox-auth-api-0.1+api-types-dev, +- librust-proxmox-auth-api-0.1+default-dev, +- librust-proxmox-auth-api-0.1+pam-authenticator-dev, - librust-proxmox-borrow-1+default-dev, - librust-proxmox-compression-0.1+default-dev (>= 0.1.1-~~), - librust-proxmox-fuse-0.1+default-dev (>= 0.1.3-~~), -- librust-proxmox-http-0.7+client-dev, -- librust-proxmox-http-0.7+client-trait-dev, -- librust-proxmox-http-0.7+default-dev, -- librust-proxmox-http-0.7+http-helpers-dev, -- librust-proxmox-http-0.7+proxmox-async-dev, -- librust-proxmox-http-0.7+websocket-dev, +- librust-proxmox-http-0.8+client-dev, +- librust-proxmox-http-0.8+client-trait-dev, +- librust-proxmox-http-0.8+default-dev, +- librust-proxmox-http-0.8+http-helpers-dev, +- librust-proxmox-http-0.8+proxmox-async-dev, +- librust-proxmox-http-0.8+rate-limited-stream-dev, +- librust-proxmox-http-0.8+rate-limiter-dev, +- librust-proxmox-http-0.8+websocket-dev, - librust-proxmox-io-1+default-dev (>= 1.0.1-~~), - librust-proxmox-io-1+tokio-dev (>= 1.0.1-~~), - librust-proxmox-lang-1+default-dev (>= 1.1-~~), +- librust-proxmox-ldap-0.1+default-dev, - librust-proxmox-metrics-0.2+default-dev, - librust-proxmox-openid-0.9+default-dev (>= 0.9.9-~~), -- librust-proxmox-rest-server-0.2+default-dev (>= 0.2.1-~~), +- librust-proxmox-rest-server-0.3+default-dev, +- librust-proxmox-rest-server-0.3+rate-limited-stream-dev, +- librust-proxmox-rest-server-0.3+templates-dev, - librust-proxmox-router-1+cli-dev (>= 1.3.1-~~), - librust-proxmox-router-1+default-dev (>= 1.3.1-~~), - librust-proxmox-router-1+server-dev (>= 1.3.1-~~), @@ -153,17 +169,17 @@ index 02f32ef8..13d713ff 100644 - librust-proxmox-serde-0.1+default-dev (>= 0.1.1-~~), - librust-proxmox-serde-0.1+serde-json-dev (>= 0.1.1-~~), - librust-proxmox-shared-memory-0.2+default-dev (>= 0.2.3-~~), +- librust-proxmox-sortable-macro-0.1+default-dev (>= 0.1.2-~~), - librust-proxmox-subscription-0.3+api-types-dev, - librust-proxmox-subscription-0.3+default-dev, - librust-proxmox-sys-0.4+acl-dev (>= 0.4.2-~~), - librust-proxmox-sys-0.4+crypt-dev (>= 0.4.2-~~), - librust-proxmox-sys-0.4+default-dev (>= 0.4.2-~~), - librust-proxmox-sys-0.4+logrotate-dev (>= 0.4.2-~~), -- librust-proxmox-sys-0.4+sortable-macro-dev (>= 0.4.2-~~), - librust-proxmox-sys-0.4+timer-dev (>= 0.4.2-~~), -- librust-proxmox-tfa-2+api-dev (>= 2.1-~~), -- librust-proxmox-tfa-2+api-types-dev (>= 2.1-~~), -- librust-proxmox-tfa-2+default-dev (>= 2.1-~~), +- librust-proxmox-tfa-3+api-dev, +- librust-proxmox-tfa-3+api-types-dev, +- librust-proxmox-tfa-3+default-dev, - librust-proxmox-time-1+default-dev (>= 1.1.2-~~), - librust-proxmox-uuid-1+default-dev, - librust-proxmox-uuid-1+serde-dev, @@ -232,7 +248,7 @@ index feb0557b..9501d29b 100755 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 +index 76f50cd0..528a3cc5 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/ diff --git a/patches/proxmox-no-ksm.patch b/patches/proxmox-no-ksm.patch deleted file mode 100644 index e47f89b..0000000 --- a/patches/proxmox-no-ksm.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff --git a/proxmox-sys/src/linux/procfs/mod.rs b/proxmox-sys/src/linux/procfs/mod.rs -index 30b9978..ccb14aa 100644 ---- a/proxmox-sys/src/linux/procfs/mod.rs -+++ b/proxmox-sys/src/linux/procfs/mod.rs -@@ -4,6 +4,7 @@ use std::fmt; - use std::fs::OpenOptions; - use std::io::{BufRead, BufReader}; - use std::net::{Ipv4Addr, Ipv6Addr}; -+use std::path::Path; - use std::str::FromStr; - use std::sync::RwLock; - use std::time::Instant; -@@ -455,8 +456,12 @@ pub fn read_meminfo() -> Result { - - meminfo.swapused = meminfo.swaptotal - meminfo.swapfree; - -- let spages_line = file_read_firstline("/sys/kernel/mm/ksm/pages_sharing")?; -- meminfo.memshared = spages_line.trim_end().parse::()? * 4096; -+ if Path::new("/sys/kernel/mm/ksm/pages_sharing").exists() { -+ let spages_line = file_read_firstline("/sys/kernel/mm/ksm/pages_sharing")?; -+ meminfo.memshared = spages_line.trim_end().parse::()? * 4096; -+ } else { -+ meminfo.memshared = 0; -+ } - - Ok(meminfo) - }