It seems after jonas's revert of his debian/rules restructuring the vendored libs were no longer being located. Some small tweaks fixed that.
There has also been an update of rust-base64 recently which needed to be accounted for. Debdiff is attatched.
diff -Nru matrix-synapse-1.116.0/debian/changelog matrix-synapse-1.116.0/debian/changelog --- matrix-synapse-1.116.0/debian/changelog 2024-10-03 21:13:22.000000000 +0000 +++ matrix-synapse-1.116.0/debian/changelog 2024-10-08 09:05:28.000000000 +0000 @@ -1,3 +1,12 @@ +matrix-synapse (1.116.0-2.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Relax cargo dependency and Debian build-dependency on base64 crate. + * Fix clean target. + * Fix build process so vendored sources are actually used (Closes: #1084037). + + -- Peter Michael Green <plugw...@debian.org> Tue, 08 Oct 2024 09:05:28 +0000 + matrix-synapse (1.116.0-2) unstable; urgency=medium * removing myself as uploader, diff -Nru matrix-synapse-1.116.0/debian/control matrix-synapse-1.116.0/debian/control --- matrix-synapse-1.116.0/debian/control 2024-10-03 21:13:01.000000000 +0000 +++ matrix-synapse-1.116.0/debian/control 2024-10-08 09:05:28.000000000 +0000 @@ -12,7 +12,7 @@ dh-sequence-builtusing, libjs-jquery, librust-anyhow-1+default-dev (>= 1.0.63), - librust-base64-0.21+default-dev (>= 0.21.7), + librust-base64-0+default-dev (>= 0.21.7), librust-bytes-1+default-dev (>= 1.5), librust-blake2-0.10+default-dev (>= 0.10.4) <!nocheck>, librust-headers-dev (<< 0.5), diff -Nru matrix-synapse-1.116.0/debian/patches/debian-rust-mangle.patch matrix-synapse-1.116.0/debian/patches/debian-rust-mangle.patch --- matrix-synapse-1.116.0/debian/patches/debian-rust-mangle.patch 2024-10-03 16:10:56.000000000 +0000 +++ matrix-synapse-1.116.0/debian/patches/debian-rust-mangle.patch 2024-10-08 09:05:28.000000000 +0000 @@ -1,18 +1,23 @@ -Description: accept older releases/branches of crates bytes, headers and http +Description: accept older releases/branches of crates bytes, headers and http and newer releases of crate base64 Author: Jonas Smedegaard <d...@jones.dk> +Author: Peter Michael Green <plugw...@debian.org> Forwarded: not-needed -Last-Update: 2024-10-02 +Last-Update: 2024-10-08 --- This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ ---- a/rust/Cargo.toml -+++ b/rust/Cargo.toml -@@ -24,9 +24,9 @@ +Index: matrix-synapse-1.116.0/rust/Cargo.toml +=================================================================== +--- matrix-synapse-1.116.0.orig/rust/Cargo.toml ++++ matrix-synapse-1.116.0/rust/Cargo.toml +@@ -23,10 +23,10 @@ name = "synapse.synapse_rust" + [dependencies] anyhow = "1.0.63" - base64 = "0.21.7" +-base64 = "0.21.7" -bytes = "1.6.0" -headers = "0.4.0" -http = "1.1.0" ++base64 = ">= 0.21.7, < 1.0" +bytes = "1.5.0" +headers = ">= 0.3.9, <= 0.4" +http = ">= 0.2.11, <= 1" diff -Nru matrix-synapse-1.116.0/debian/patches/debian-rust.patch matrix-synapse-1.116.0/debian/patches/debian-rust.patch --- matrix-synapse-1.116.0/debian/patches/debian-rust.patch 2024-10-03 21:13:01.000000000 +0000 +++ matrix-synapse-1.116.0/debian/patches/debian-rust.patch 2024-10-08 09:05:28.000000000 +0000 @@ -1,3 +1,5 @@ +Modified by Peter Michael Green to include vendored sources. + From: Antonio Russo <aeru...@aerusso.net> Date: Wed, 23 Aug 2023 19:41:58 -0600 Subject: Tell cargo to use debian registry @@ -7,11 +9,13 @@ 1 file changed, 5 insertions(+) create mode 100644 .cargo/config.toml +Index: matrix-synapse-1.116.0/.cargo/config.toml +=================================================================== --- /dev/null -+++ b/.cargo/config.toml ++++ matrix-synapse-1.116.0/.cargo/config.toml @@ -0,0 +1,5 @@ +[source.crates-io] +replace-with = "dh-cargo-registry" + +[source.dh-cargo-registry] -+directory = "/usr/share/cargo/registry" ++directory = "debian/cargo_registry" diff -Nru matrix-synapse-1.116.0/debian/rules matrix-synapse-1.116.0/debian/rules --- matrix-synapse-1.116.0/debian/rules 2024-10-03 21:13:01.000000000 +0000 +++ matrix-synapse-1.116.0/debian/rules 2024-10-08 09:05:28.000000000 +0000 @@ -41,11 +41,18 @@ execute_before_dh_auto_configure: sed -i '/common/s/~=/>=/' pyproject.toml + mkdir -p debian/cargo_registry + for file in $(CURDIR)/debian/vendorlibs/* ; do \ + name=`basename "$$file"` ;\ + [ -e debian/cargo_registry/"$$name" ] || ln -sT "$$file" debian/cargo_registry/"$$name" ;\ + done $(CARGO) prepare-debian debian/cargo_registry --link-from-system execute_after_dh_auto_clean: rm -rf debian/cargo_registry mv Cargo.lock debian/Cargo.lock.orig || true + rm -f setup.py + rm -rf debian/cargo_home target override_dh_auto_install: dh_auto_install