Browse Source

Initial docs workflow for Github Pages

pull/145/head
Ian Chamberlain 6 months ago
parent
commit
6f8f20484a
No known key found for this signature in database
GPG Key ID: AE5484D09405AA60
  1. 62
      .github/workflows/docs.yml
  2. 10
      README.md
  3. 2
      _config.yml
  4. 15
      assets/css/style.scss
  5. 2
      ctru-rs/README.md
  6. 3
      ctru-sys/README.md

62
.github/workflows/docs.yml

@ -0,0 +1,62 @@ @@ -0,0 +1,62 @@
name: GitHub Pages
on:
push:
branches:
- main
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
container: devkitpro/devkitarm
steps:
- name: Checkout branch
uses: actions/checkout@v4
- name: Setup Pages
uses: actions/configure-pages@v3
- name: Build with Jekyll
uses: actions/jekyll-build-pages@v1
- uses: rust3ds/test-runner/setup@v1
with:
toolchain: nightly
- name: Build workspace docs
run: cargo 3ds --verbose doc --verbose --no-deps --workspace
env:
RUSTDOCFLAGS: --enable-index-page
# https://github.com/actions/upload-pages-artifact#file-permissions
- name: Fix file permissions
run: |
chmod -c -R +rX "target/armv6k-nintendo-3ds/doc" | while read line; do
echo "::warning title=Invalid file permissions automatically fixed::$line"
done
- name: Copy generated docs to _site
# Note: this won't include proc-macro crate, but macros are re-exported
# by the crate docs so there will still be some documentation.
run: cp -R ./target/armv6k-nintendo-3ds/doc ./_site/crates
- name: Upload docs
uses: actions/upload-pages-artifact@v2
deploy:
runs-on: ubuntu-latest
needs: build
permissions:
pages: write
id-token: write
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2

10
README.md

@ -6,14 +6,20 @@ This repository is home of the `ctru-rs` project, which aims to bring full contr @@ -6,14 +6,20 @@ This repository is home of the `ctru-rs` project, which aims to bring full contr
This repository is organized as follows:
* [`ctru-rs`](./ctru-rs/) - Safe, idiomatic wrapper around [`ctru-sys`](./ctru-sys/).
* [`ctru-sys`](./ctru-sys/) - Low-level, unsafe bindings to [`libctru`](https://github.com/devkitPro/libctru).
* [`ctru-rs`](./ctru-rs) - Safe, idiomatic wrapper around [`ctru-sys`](./ctru-sys).
* [`ctru-sys`](./ctru-sys) - Low-level, unsafe bindings to [`libctru`](https://github.com/devkitPro/libctru).
## Getting Started
Specific information about how to use the crates is present in the individual README for each package.
Have a look at `ctru-rs`' [README.md](./ctru-rs/README.md) for a broad overview.
## Documentation
Cargo-generated [documentation](https://rust3ds.github.io/ctru-rs/crates) is available
via GitHub Pages, because the <https://docs.rs> build environment does not have `libctru`
installed.
## Original version
This project is based on the efforts of the original authors:

2
_config.yml

@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
# Configuration for GitHub Pages (Jekyll)
theme: jekyll-theme-midnight

15
assets/css/style.scss

@ -0,0 +1,15 @@ @@ -0,0 +1,15 @@
---
---
// https://github.com/pages-themes/midnight#stylesheet
@import "{{ site.theme }}";
// Give code links a color that matches regular links
a code {
color: inherit;
}
// Remove weird extra padding and spaces from inline code blocks
code {
padding: 0;
}

2
ctru-rs/README.md

@ -2,6 +2,8 @@ @@ -2,6 +2,8 @@
Safe and idiomatic Rust wrapper around [`libctru`](https://github.com/devkitPro/libctru).
Documentation for the `master` branch can be found [here](https://rust3ds.github.io/ctru-rs/crates/ctru).
## Getting Started
Thoroughly read the [`ctru-rs` wiki](https://github.com/rust3ds/ctru-rs/wiki/Getting-Started) to meet the requirements

3
ctru-sys/README.md

@ -2,6 +2,9 @@ @@ -2,6 +2,9 @@
Raw Rust bindings over the [`libctru`](https://github.com/devkitPro/libctru) C library.
Documentation for the latest devkitPro release can be found
[here](https://rust3ds.github.io/crates/ctru_sys).
## Requirements
To use the bindings provided by this crate you will need to link against the [`libctru`](https://github.com/devkitPro/libctru) library.

Loading…
Cancel
Save