Signed-off-by: Lukas Wagner <l.wag...@proxmox.com> --- src/lettre/debian/changelog | 39 +++ src/lettre/debian/copyright | 38 +++ src/lettre/debian/copyright.debcargo.hint | 52 ++++ src/lettre/debian/debcargo.toml | 2 + src/lettre/debian/patches/relax-deps.patch | 13 + .../patches/remove_unused_features.patch | 267 ++++++++++++++++++ src/lettre/debian/patches/series | 2 + 7 files changed, 413 insertions(+) create mode 100644 src/lettre/debian/changelog create mode 100644 src/lettre/debian/copyright create mode 100644 src/lettre/debian/copyright.debcargo.hint create mode 100644 src/lettre/debian/debcargo.toml create mode 100644 src/lettre/debian/patches/relax-deps.patch create mode 100644 src/lettre/debian/patches/remove_unused_features.patch create mode 100644 src/lettre/debian/patches/series
diff --git a/src/lettre/debian/changelog b/src/lettre/debian/changelog new file mode 100644 index 0000000000..ce312dba28 --- /dev/null +++ b/src/lettre/debian/changelog @@ -0,0 +1,39 @@ +rust-lettre (0.11.1-2~bpo21+pve2) proxmox-rust; urgency=medium + + * Rebuild for Debian Bookworm / Proxmox with debcargo 2.7.8 and base64 + relaxed + * drop dkim feature, various crypto dependencies and webpki-roots + + -- Proxmox Support Team <supp...@proxmox.com> Thu, 13 Mar 2025 08:42:59 +0100 + +rust-lettre (0.11.1-2~bpo21+pve1) proxmox-rust; urgency=medium + + * Remove dependency downgrades + + -- Proxmox Support Team <supp...@proxmox.com> Wed, 24 Jul 2024 15:15:04 +0200 + +rust-lettre (0.11.1-1) UNRELEASED-FIXME-AUTOGENERATED-DEBCARGO; urgency=medium + + * Package lettre 0.11.1 from crates.io using debcargo 2.6.0 + * Downgrade fastrand from 2.0 to 1.8 + * Downgrade idna from 0.4 to 0.3 + * Downgrade url from 2.4 to 2.3 + * Drop patch that upgrades quoted_printable + + -- Lukas Wagner <l.wag...@proxmox.com> Wed, 08 Nov 2023 13:32:49 +0100 + +rust-lettre (0.10.4-1~bpo12+pve1) proxmox-rust; urgency=medium + + * Rebuild for Debian Bookworm / Proxmox + + -- Proxmox Support Team <supp...@proxmox.com> Fri, 04 Aug 2023 14:24:15 +0200 + +rust-lettre (0.10.4-1) UNRELEASED-FIXME-AUTOGENERATED-DEBCARGO; urgency=medium + + * Team upload. + * Package lettre 0.10.4 from crates.io using debcargo 2.6.0 + * Downgrade base64 dependency from 0.21 to 0.13 + * Upgrade quotable_printable from 0.4 to 0.5 + * Disable unneded features in Cargo.toml (boringssl, rustls, async-std) + + -- Lukas Wagner <l.wag...@proxmox.com> Tue, 01 Aug 2023 10:48:41 +0200 diff --git a/src/lettre/debian/copyright b/src/lettre/debian/copyright new file mode 100644 index 0000000000..13561096c4 --- /dev/null +++ b/src/lettre/debian/copyright @@ -0,0 +1,38 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: lettre +Upstream-Contact: + Alexis Mousset <cont...@amousset.me> + Paolo Barbolini <pa...@paolo565.org> +Source: https://github.com/lettre/lettre + +Files: * +Copyright: + 2014-2022 Alexis Mousset <cont...@amousset.me> + 2019-2022 Paolo Barbolini <pa...@paolo565.org> + 2018 K. <k...@illumium.org> +License: MIT + +Files: debian/* +Copyright: + 2023 Debian Rust Maintainers <pkg-rust-maintain...@alioth-lists.debian.net> + 2023 Lukas Wagner <l.wag...@proxmox.com> +License: MIT + +License: MIT + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + . + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. diff --git a/src/lettre/debian/copyright.debcargo.hint b/src/lettre/debian/copyright.debcargo.hint new file mode 100644 index 0000000000..714caf351a --- /dev/null +++ b/src/lettre/debian/copyright.debcargo.hint @@ -0,0 +1,52 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: lettre +Upstream-Contact: + Alexis Mousset <cont...@amousset.me> + Paolo Barbolini <pa...@paolo565.org> +Source: https://github.com/lettre/lettre + +Files: * +Copyright: + FIXME (overlay) UNKNOWN-YEARS Alexis Mousset <cont...@amousset.me> + FIXME (overlay) UNKNOWN-YEARS Paolo Barbolini <pa...@paolo565.org> +License: MIT +Comment: + FIXME (overlay): Since upstream copyright years are not available in + Cargo.toml, they were extracted from the upstream Git repository. This may not + be correct information so you should review and fix this before uploading to + the archive. + +Files: LICENSE +Copyright: + 2014-2022 Alexis Mousset <cont...@amousset.me> + 2019-2022 Paolo Barbolini <pa...@paolo565.org> + 2018 K. <k...@illumium.org> +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: debian/* +Copyright: + 2023-2025 Debian Rust Maintainers <pkg-rust-maintain...@alioth-lists.debian.net> + 2023-2025 Lukas Wagner <l.wag...@proxmox.com> +License: MIT + +License: MIT + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + . + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. diff --git a/src/lettre/debian/debcargo.toml b/src/lettre/debian/debcargo.toml new file mode 100644 index 0000000000..d69a1a27b7 --- /dev/null +++ b/src/lettre/debian/debcargo.toml @@ -0,0 +1,2 @@ +overlay = "." +uploaders = ["Lukas Wagner <l.wag...@proxmox.com>"] diff --git a/src/lettre/debian/patches/relax-deps.patch b/src/lettre/debian/patches/relax-deps.patch new file mode 100644 index 0000000000..ee7a6e97b1 --- /dev/null +++ b/src/lettre/debian/patches/relax-deps.patch @@ -0,0 +1,13 @@ +Index: lettre/Cargo.toml +=================================================================== +--- lettre.orig/Cargo.toml ++++ lettre/Cargo.toml +@@ -127,7 +127,7 @@ version = "0.1" + optional = true + + [dependencies.base64] +-version = "0.21" ++version = ">= 0.21, <0.23" + optional = true + + [dependencies.chumsky] diff --git a/src/lettre/debian/patches/remove_unused_features.patch b/src/lettre/debian/patches/remove_unused_features.patch new file mode 100644 index 0000000000..69fd8d377d --- /dev/null +++ b/src/lettre/debian/patches/remove_unused_features.patch @@ -0,0 +1,267 @@ +Index: lettre/Cargo.toml +=================================================================== +--- lettre.orig/Cargo.toml ++++ lettre/Cargo.toml +@@ -114,24 +114,6 @@ required-features = [ + "builder", + ] + +-[[example]] +-name = "asyncstd1_smtp_tls" +-required-features = [ +- "smtp-transport", +- "async-std1", +- "async-std1-rustls-tls", +- "builder", +-] +- +-[[example]] +-name = "asyncstd1_smtp_starttls" +-required-features = [ +- "smtp-transport", +- "async-std1", +- "async-std1-rustls-tls", +- "builder", +-] +- + [[bench]] + name = "transport_smtp" + harness = false +@@ -140,10 +122,6 @@ harness = false + name = "mailbox_parsing" + harness = false + +-[dependencies.async-std] +-version = "1.8" +-optional = true +- + [dependencies.async-trait] + version = "0.1" + optional = true +@@ -152,17 +130,9 @@ optional = true + version = "0.21" + optional = true + +-[dependencies.boring] +-version = "3" +-optional = true +- + [dependencies.chumsky] + version = "0.9" + +-[dependencies.ed25519-dalek] +-version = "2" +-optional = true +- + [dependencies.email-encoding] + version = "0.2" + optional = true +@@ -220,23 +190,6 @@ optional = true + version = "0.5" + optional = true + +-[dependencies.rsa] +-version = "0.9" +-optional = true +- +-[dependencies.rustls] +-version = "0.21" +-features = ["dangerous_configuration"] +-optional = true +- +-[dependencies.rustls-native-certs] +-version = "0.6.2" +-optional = true +- +-[dependencies.rustls-pemfile] +-version = "1" +-optional = true +- + [dependencies.serde] + version = "1" + features = ["derive"] +@@ -255,11 +208,6 @@ optional = true + version = "0.5.1" + optional = true + +-[dependencies.tokio1_boring] +-version = "3" +-optional = true +-package = "tokio-boring" +- + [dependencies.tokio1_crate] + version = "1" + optional = true +@@ -270,11 +218,6 @@ version = "0.3" + optional = true + package = "tokio-native-tls" + +-[dependencies.tokio1_rustls] +-version = "0.24" +-optional = true +-package = "tokio-rustls" +- + [dependencies.tracing] + version = "0.1.16" + features = ["std"] +@@ -290,14 +233,6 @@ version = "1" + features = ["v4"] + optional = true + +-[dependencies.webpki-roots] +-version = "0.25" +-optional = true +- +-[dev-dependencies.async-std] +-version = "1.8" +-features = ["attributes"] +- + [dev-dependencies.criterion] + version = "0.5" + +@@ -333,18 +268,6 @@ version = "0.3" + version = "2" + + [features] +-async-std1 = [ +- "dep:async-std", +- "dep:async-trait", +- "dep:futures-io", +- "dep:futures-util", +-] +-async-std1-rustls-tls = [ +- "async-std1", +- "rustls-tls", +- "dep:futures-rustls", +-] +-boring-tls = ["dep:boring"] + builder = [ + "dep:httpdate", + "dep:mime", +@@ -359,12 +282,6 @@ default = [ + "hostname", + "builder", + ] +-dkim = [ +- "dep:base64", +- "dep:sha2", +- "dep:rsa", +- "dep:ed25519-dalek", +-] + file-transport = [ + "dep:uuid", + "tokio1_crate?/fs", +@@ -377,15 +294,9 @@ file-transport-envelope = [ + ] + mime03 = ["dep:mime"] + pool = ["dep:futures-util"] +-rustls-tls = [ +- "dep:webpki-roots", +- "dep:rustls", +- "dep:rustls-pemfile", +-] + sendmail-transport = [ + "tokio1_crate?/process", + "tokio1_crate?/io-util", +- "async-std?/unstable", + ] + smtp-transport = [ + "dep:base64", +@@ -403,21 +314,11 @@ tokio1 = [ + "dep:futures-io", + "dep:futures-util", + ] +-tokio1-boring-tls = [ +- "tokio1", +- "boring-tls", +- "dep:tokio1_boring", +-] + tokio1-native-tls = [ + "tokio1", + "native-tls", + "dep:tokio1_native_tls_crate", + ] +-tokio1-rustls-tls = [ +- "tokio1", +- "rustls-tls", +- "dep:tokio1_rustls", +-] + + [badges.is-it-maintained-issue-resolution] + repository = "lettre/lettre" +Index: lettre/examples/asyncstd1_smtp_starttls.rs +=================================================================== +--- lettre.orig/examples/asyncstd1_smtp_starttls.rs ++++ /dev/null +@@ -1,33 +0,0 @@ +-use lettre::{ +- message::header::ContentType, transport::smtp::authentication::Credentials, AsyncSmtpTransport, +- AsyncStd1Executor, AsyncTransport, Message, +-}; +- +-#[async_std::main] +-async fn main() { +- tracing_subscriber::fmt::init(); +- +- let email = Message::builder() +- .from("NoBody <nob...@domain.tld>".parse().unwrap()) +- .reply_to("Yuin <y...@domain.tld>".parse().unwrap()) +- .to("Hei <h...@domain.tld>".parse().unwrap()) +- .subject("Happy new async year") +- .header(ContentType::TEXT_PLAIN) +- .body(String::from("Be happy with async!")) +- .unwrap(); +- +- let creds = Credentials::new("smtp_username".to_owned(), "smtp_password".to_owned()); +- +- // Open a remote connection to gmail using STARTTLS +- let mailer: AsyncSmtpTransport<AsyncStd1Executor> = +- AsyncSmtpTransport::<AsyncStd1Executor>::starttls_relay("smtp.gmail.com") +- .unwrap() +- .credentials(creds) +- .build(); +- +- // Send the email +- match mailer.send(email).await { +- Ok(_) => println!("Email sent successfully!"), +- Err(e) => panic!("Could not send email: {e:?}"), +- } +-} +Index: lettre/examples/asyncstd1_smtp_tls.rs +=================================================================== +--- lettre.orig/examples/asyncstd1_smtp_tls.rs ++++ /dev/null +@@ -1,33 +0,0 @@ +-use lettre::{ +- message::header::ContentType, transport::smtp::authentication::Credentials, AsyncSmtpTransport, +- AsyncStd1Executor, AsyncTransport, Message, +-}; +- +-#[async_std::main] +-async fn main() { +- tracing_subscriber::fmt::init(); +- +- let email = Message::builder() +- .from("NoBody <nob...@domain.tld>".parse().unwrap()) +- .reply_to("Yuin <y...@domain.tld>".parse().unwrap()) +- .to("Hei <h...@domain.tld>".parse().unwrap()) +- .subject("Happy new async year") +- .header(ContentType::TEXT_PLAIN) +- .body(String::from("Be happy with async!")) +- .unwrap(); +- +- let creds = Credentials::new("smtp_username".to_owned(), "smtp_password".to_owned()); +- +- // Open a remote connection to gmail +- let mailer: AsyncSmtpTransport<AsyncStd1Executor> = +- AsyncSmtpTransport::<AsyncStd1Executor>::relay("smtp.gmail.com") +- .unwrap() +- .credentials(creds) +- .build(); +- +- // Send the email +- match mailer.send(email).await { +- Ok(_) => println!("Email sent successfully!"), +- Err(e) => panic!("Could not send email: {e:?}"), +- } +-} diff --git a/src/lettre/debian/patches/series b/src/lettre/debian/patches/series new file mode 100644 index 0000000000..5a270d7772 --- /dev/null +++ b/src/lettre/debian/patches/series @@ -0,0 +1,2 @@ +remove_unused_features.patch +relax-deps.patch -- 2.39.5 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel