Hello Blair,
Debian's Rust Team is working through the png 0.17 -> 0.18 transition
(tracked as rust-team/debcargo-conf#150). shotman currently pins
"png = 0.17.5" in its Cargo.toml, which blocks it from building against
a future png 0.18 archive. When the librust-png-dev package in the
Debian archive bumps to 0.18, shotman FTBFS until its Cargo.toml is
updated.
The attached quilt patch bumps the dependency to png 0.18.1. No source
changes are required: shotman's png use is encoder-only (Encoder::new,
set_depth, set_color, write_header, write_image_data, finish), and
that surface is API-compatible across 0.17 -> 0.18. The 0.18 breaking
changes (Decoder now requires Seek+BufRead, removed Encoder::set_srgb,
improved compression settings API) don't touch shotman's call sites.
I verified locally on the current main branch (0.4.10 tree equivalent):
cargo build -> clean
cargo test --no-run -> clean
cargo clippy -- -D warnings -> clean
The same patch was submitted upstream to
~whynothugo/shotman@lists.sr.ht today. Carrying this locally in Debian
lets the transition proceed without waiting on upstream merge and
release; it can be dropped when a new upstream tag is cut.
Patch follows.
Thanks,
Greg Lamberson
---
Description: Bump png dependency to 0.18.1
The png 0.18 release series is API-compatible with shotman's encoder
usage (Encoder::new, set_depth, set_color, write_header,
write_image_data, finish). No source changes are required.
.
This unblocks the Debian png 0.17 -> 0.18 transition for shotman
while upstream review of the equivalent patch is pending.
Author: Greg Lamberson <greg@lamco.io>
Forwarded: https://lists.sr.ht/~whynothugo/shotman/patches
Last-Update: 2026-04-19
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -30,7 +30,7 @@ wayland-client = "0.31.11"
wayland-protocols = { version = "0.32.9", features = ["client", "unstable", "staging"] }
wayland-protocols-wlr = { version = "0.3.9", features = ["client"] }
smithay-client-toolkit = { version = "0.19.2" }
-png = "0.17.5"
+png = "0.18.1"
memmap2 = "0.9.0"
itertools = "0.11.0"
thiserror = "1.0.32"
We believe that the bug you reported is fixed in the latest version of shotman, which is due to be installed in the Debian FTP archive. A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to 1134399@bugs.debian.org, and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Blair Noctis <ncts@debian.org> (supplier of updated shotman package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing ftpmaster@ftp-master.debian.org) Format: 1.8 Date: Mon, 17 Aug 2026 04:59:14 +0000 Source: shotman Architecture: source Version: 0.5.1-1 Distribution: unstable Urgency: medium Maintainer: Blair Noctis <ncts@debian.org> Changed-By: Blair Noctis <ncts@debian.org> Closes: 1126314 1134399 Changes: shotman (0.5.1-1) unstable; urgency=medium . * New upstream release, Closes: #1126314, #1134399 Checksums-Sha1: fffd733dfe0ce3de56200a33ab3a9967f8783e82 1790 shotman_0.5.1-1.dsc 50b08b02275d680cf01209350a42acf729f90462 30072 shotman_0.5.1.orig.tar.xz 2adbee0e579be824a99fe2feb37427cc14c18c03 4660 shotman_0.5.1-1.debian.tar.xz 728ed8b9d41700260b512a7596a6f08cdbdf562b 5145 shotman_0.5.1-1_source.buildinfo Checksums-Sha256: be48f4775bd58795e613882dd7d9dabd8b9c8fea183625098dc02ab52e820821 1790 shotman_0.5.1-1.dsc df8848cf1d58bef2d795703e22f4b7bfa6f464492d4e8e2019a1676619e75d9a 30072 shotman_0.5.1.orig.tar.xz 1bf6d3c0081ba96416e2dd37c569efa878a500d87082372990c889b13f1bd459 4660 shotman_0.5.1-1.debian.tar.xz 370cd363fdbc31ef419d27923ec9fc4383f5a3302562161d36c2eb73a4b1632a 5145 shotman_0.5.1-1_source.buildinfo Files: 76649620d2319419536d50c6db9b6a91 1790 utils optional shotman_0.5.1-1.dsc fca60cb51cd4428b4a7b88c2fb93884f 30072 utils optional shotman_0.5.1.orig.tar.xz 5a420588684571dd749e57fb5e0a3bca 4660 utils optional shotman_0.5.1-1.debian.tar.xz 6a2b9b412b54c4e588fa213a646549fd 5145 utils optional shotman_0.5.1-1_source.buildinfo -----BEGIN PGP SIGNATURE----- iIYEARYKAC4WIQSkiHwhuQf2oVaWacxWG2M00EUuRAUCaoKX0xAcbmN0c0BkZWJp YW4ub3JnAAoJEFYbYzTQRS5ExjQBALwHeXm/Bc8+x7mwMrk+jjf3M7pdr0AUxkQ3 i6wAJNZLAQCI/XlUR8JpPaZfVEH5Kty6Z3h+jbKWzRdsSpcDGBtJAg== =pQUw -----END PGP SIGNATURE-----