diff --git a/.github/workflows/pages.yml b/.github/workflows/pages.yml index 79dd714..065abd4 100644 --- a/.github/workflows/pages.yml +++ b/.github/workflows/pages.yml @@ -16,9 +16,9 @@ jobs: fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod - name: Setup Hugo - uses: peaceiris/actions-hugo@v3 + uses: peaceiris/actions-hugo@v2 with: - hugo-version: '0.155.0' + hugo-version: 'latest' # extended: true - name: Setup Rust diff --git a/builder/src/main.rs b/builder/src/main.rs index 2b590d3..b1eeda8 100644 --- a/builder/src/main.rs +++ b/builder/src/main.rs @@ -6,6 +6,7 @@ extern crate tracing; use std::{ path::{Path, PathBuf}, + process::{self, Stdio}, time, }; @@ -110,6 +111,30 @@ fn watch(root: PathBuf) -> Result<()> { watcher.watch(&root.join("static"), RecursiveMode::Recursive)?; watcher.watch(&root.join("config.toml"), RecursiveMode::NonRecursive)?; + info!("Starting webserver"); + let root1 = root.clone(); + std::thread::spawn(move || { + let root = root1; + let run = || -> Result<()> { + let path = root.join("dist"); + let mut server = process::Command::new("live-server"); + server + .current_dir(path) + .stdout(Stdio::null()) + .stderr(Stdio::null()); + + let mut child = server.spawn().wrap_err("failed to spawn `live-server`.\ + Install https://github.com/tapio/live-server into your PATH, for example with nix, see shell.nix")?; + let exit = child.wait().wrap_err("interrupt waiting for live-server")?; + bail!("live-server exited early, exit: {exit}"); + }; + + if let Err(e) = run() { + error!(?e); + process::exit(1); + } + }); + info!("Starting loop"); std::thread::spawn(move || { diff --git a/static/root/index.html b/static/root/index.html index 1612adc..5263a0c 100644 --- a/static/root/index.html +++ b/static/root/index.html @@ -50,14 +50,13 @@ } .numbered-section { - counter-set: subsection 0; + counter-set: subsection 1; } .numbered-section::before { counter-increment: section; content: counter(section) ". "; } .numbered-subsection::before { - counter-increment: subsection; content: counter(section) "." counter(subsection) ". "; } @@ -132,7 +131,6 @@

Table of Contents

    -
  1. Introduction
  2. Blog
  3. Socials
  4. Slides
  5. @@ -140,29 +138,11 @@ Projects
    1. Rust
    2. -
    3. Other
    -
  6. About me
  7. Contact
-
-

Introduction

-
-

Conventions and Terminology

-
- The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD - NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to - be interpreted as described in - BCP 14 [RFC2119] [RFC8174] when, and - only when, they appear in all capitals, as shown here. -
-
-

Blog

@@ -248,38 +228,6 @@
-
-

About me

-
-

General

-
-

- my name is nora and my pronouns are she/her (you can also find them in DNS as - TXT pronouns.noratrieb.dev). i like doing all kinds of things with - computers and learning about how they work. i like learning about anything really, - i'm also interested in history and other sciences. -

-

- i work as a web developer, where i make websites and systems. this website is also - very cool. -

-
-
-
-

Also known as

-
-
    -
  • - lw t5, 208(sp); lw sp, 20(sp) -
    - explanation - the ASCII bytes for NORA encoded as RISC-V instructions -
    -
  • -
-
-
-

Contact

@@ -288,8 +236,8 @@
  • discord (preferred): noratrieb - . if you're on a server where i'm too (like the Rust Community Discord) you can just - DM me (make sure to include the reason in the first message or i will ignore it) + . if you're on a server where i'm too (like the Rust Community Discord) you can just DM me + (make sure to include the reason in the first message or i will ignore it)
  • Matrix: