d-bootstrap-use-local-css
authorDebian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)
committerFabian Grünbichler <debian@fabian.gruenbichler.email>
Sun, 10 Sep 2023 17:22:53 +0000 (18:22 +0100)
===================================================================

Gbp-Pq: Name d-bootstrap-use-local-css.patch

src/bootstrap/doc.rs

index d02edb013fc16f2797524e502c3d6845cad226b1..217870dc2d0a4339352395446e688ffba5e23854 100644 (file)
@@ -351,7 +351,27 @@ impl Step for Standalone {
                 .arg("--index-page")
                 .arg(&builder.src.join("src/doc/index.md"))
                 .arg("--markdown-playground-url")
-                .arg("https://play.rust-lang.org/")
+                .arg("https://play.rust-lang.org/");
+
+            // Debian: librustdoc now generates a resource-suffix for static
+            // files with rustc_hash::FxHasher, so we need to find it.
+            let _dir = out.join("static.files");
+            if _dir.is_dir() {
+                let _css = _dir.read_dir().expect("Debian: failed to read static.files/ when is_dir() == true")
+                    .find_map(|entry| entry.ok().map(|entry| {
+                        let name = entry.file_name().into_string()
+                            .expect("Debian: rustc files should have UTF-8 name");
+                        if name.starts_with("rustdoc-") && name.ends_with(".css") {
+                            Some(name)
+                        } else { None }
+                    })).flatten();
+                if let Some(name) = _css {
+                    cmd.arg("--markdown-css").arg(name);
+                }
+            }
+
+            cmd.arg("--markdown-css")
+                .arg("rust.css")
                 .arg("-o")
                 .arg(&out)
                 .arg(&path);
@@ -360,11 +380,6 @@ impl Step for Standalone {
                 cmd.arg("--disable-minification");
             }
 
-            if filename == "not_found.md" {
-                cmd.arg("--markdown-css").arg("https://doc.rust-lang.org/rust.css");
-            } else {
-                cmd.arg("--markdown-css").arg("rust.css");
-            }
             builder.run(&mut cmd);
         }