littlebunker

Methodically tracking the collapse. Climate data. Extreme weather. The long emergency.

CO₂ 431.6ppm
CH₄ 1940.46ppb
Δ Temp +1.48°C
Now --:--:--
CO₂ 431.6 ppm +2.1 ppm / yr CH₄ 1940.46 ppb +6.93 ppb / yr Δ Temp +1.48°C Peak +1.73°C Pop 8.1B +67M / yr CO₂ 431.6 ppm +2.1 ppm / yr CH₄ 1940.46 ppb +6.93 ppb / yr Δ Temp +1.48°C Peak +1.73°C Pop 8.1B +67M / yr

CO₂

431.6ppm
+2.1 / year

CH₄

1940.46ppb
+6.93 / year

Temp

+1.48°C
Peak +1.73°C

Population

8.1B
+67M / year

LittleBunker.com — Scripts

lb_pipeline.py

Harold-side pipeline replacing all GitHub Actions workflows.

Steps

Flag Replaces GHA workflow Frequency on Harold
--fetch 1-fetch-rss-enhanced.yml Hourly
--process 2-process-rss-enhanced.yml Hourly
--expire expire-old-posts.yml Weekly (Sunday)
--dedup dupes.yml + remove_duplicate_MD_posts.yml Daily
--build Jekyll step in site_build_and_update.yml Hourly (after process)
--deploy jekyll.yml -> CF Pages via wrangler Hourly (after build)
--bluesky bluesky-post.yml Every 3 hours

Usage on Harold

# Full hourly run (fetch + process + build + deploy)
python3 scripts/lb_pipeline.py --fetch --process --build --deploy

# Bluesky post (separate cron, every 3 hrs)
python3 scripts/lb_pipeline.py --bluesky

# Weekly maintenance (Sunday)
python3 scripts/lb_pipeline.py --expire --dedup

# Everything at once
python3 scripts/lb_pipeline.py --all

Dependencies (install on Harold once)

pip install feedparser pyyaml beautifulsoup4 atproto python-dotenv
gem install bundler && bundle install
npm install -g wrangler  # for CF Pages deploy

Environment

Copy .env.example to .env in the repo root and fill in all values. The script loads .env automatically via python-dotenv. Never commit .env — it is already in .gitignore.

fix_frontmatter.py

One-off utility for repairing malformed YAML frontmatter in existing posts. Run manually if posts were created with the old (pre-sanitiser) pipeline.