Inspiration

After setting up the rustdoc static site and seeing how easy it was with GitHub Actions, I decided to share this workflow with the OSS community. I've been using cec-dpms to manage power states for my Linux workstation's HDMI TV display (It's basically an HTPC in the living room).

What it does

Builds HTML documentation for the cec-dpms project using rustdoc.

How we built it

Using GitHub Actions, I was able to cobble together a workflow that generates the HTML static pages using rustdoc, then commits these to a gh-pages branch and publishes them via GitHub Pages.

Challenges we ran into

The directory tree structure generated by rustdoc is not configurable. It also does not generate an index.html page for the top-level directory. Luckily, GitHub Pages does allow for configuring the root directory to serve from. I added a manual HTTP meta-tag redirect using bash scripting in the GitHub actions workflow. This solved the issue, and avoided HTTP redirect loops.

Accomplishments that we're proud of

1st contribution to cec-dpms, although just documentation for now. I've been working on learning Rust so I can contribute code in the future.

What we learned

Most OSS maintainers who are active enough will gladly accept help for things like this.

What's next for cec-dpms Documentation

Next, I'd like to learn more Rust and contribute a bugfix for a problem I found while using this project.

Built With

Share this project:

Updates