mirror of
https://github.com/jbowdre/runtimeterror.git
synced 2024-11-23 23:42:19 +00:00
Compare commits
12 commits
c2f2491ab9
...
bbc65d85de
Author | SHA1 | Date | |
---|---|---|---|
bbc65d85de | |||
15fc1a9eba | |||
9c6da303a9 | |||
25e4274986 | |||
46229fbe0a | |||
a2ae1a084a | |||
13ba253e76 | |||
dec25919e5 | |||
e2d39367b4 | |||
99c771dfe9 | |||
b2ff47a9f2 | |||
d6fb612171 |
15 changed files with 55 additions and 117 deletions
4
.github/workflows/deploy-preview.yml
vendored
4
.github/workflows/deploy-preview.yml
vendored
|
@ -22,9 +22,9 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Hugo setup
|
||||
uses: peaceiris/actions-hugo@v2.6.0
|
||||
uses: peaceiris/actions-hugo@v3.0.0
|
||||
with:
|
||||
hugo-version: '0.121.1'
|
||||
hugo-version: '0.127.0'
|
||||
extended: true
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
|
4
.github/workflows/deploy-prod.yml
vendored
4
.github/workflows/deploy-prod.yml
vendored
|
@ -24,9 +24,9 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Hugo setup
|
||||
uses: peaceiris/actions-hugo@v2.6.0
|
||||
uses: peaceiris/actions-hugo@v3.0.0
|
||||
with:
|
||||
hugo-version: '0.121.1'
|
||||
hugo-version: '0.127.0'
|
||||
extended: true
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
|
|
@ -46,7 +46,7 @@
|
|||
|
||||
[[main]]
|
||||
identifier = "notes"
|
||||
name = "notes"
|
||||
name = "notes↗"
|
||||
url = "https://notes.runtimeterror.dev"
|
||||
weight = 100
|
||||
[[main.params]]
|
||||
|
|
|
@ -208,12 +208,12 @@ url = "/homelab"
|
|||
label = "my homelab setup"
|
||||
|
||||
[[slashPages]]
|
||||
title = "/save"
|
||||
title = "/save↗"
|
||||
url = "/save"
|
||||
label = "referral links"
|
||||
|
||||
[[slashPages]]
|
||||
title = "/uses"
|
||||
title = "/uses↗"
|
||||
url = "/uses"
|
||||
label = "stuff i use"
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
---
|
||||
title: "/changelog"
|
||||
date: "2024-05-26T21:19:08Z"
|
||||
lastmod: "2024-06-25T04:11:34Z"
|
||||
lastmod: "2024-06-29T03:55:04Z"
|
||||
description: "Maybe I should keep a log of all my site-related tinkering?"
|
||||
featured: false
|
||||
toc: false
|
||||
|
@ -10,6 +10,11 @@ categories: slashes
|
|||
---
|
||||
*High-level list of config/layout changes to the site. The full changelog is of course [on GitHub](https://github.com/jbowdre/runtimeterror/commits/main/).*
|
||||
|
||||
**2024-06-28:**
|
||||
- Add [recentfm.js](https://recentfm.rknight.me/) recently-played widget to sidebar
|
||||
- Use [Hugo render-hook](https://gohugo.io/render-hooks/links/#examples) to add ↗ marker to external links
|
||||
- Redirect /uses and /saves to pages on the [personal blog](https://blog.jbowdre.lol)
|
||||
|
||||
**2024-06-24:**
|
||||
- Select the [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/?ref=chooser-v1) license
|
||||
- Add a simple [upvote widget powered by Cabin](/kudos-with-cabin/) to posts
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
---
|
||||
title: "/colophon"
|
||||
date: "2024-05-26T22:30:58Z"
|
||||
lastmod: "2024-06-18T16:09:47Z"
|
||||
lastmod: "2024-06-29T03:29:46Z"
|
||||
description: "There's a lot that goes into this site. Let me tell you how it works."
|
||||
featured: false
|
||||
toc: true
|
||||
|
@ -11,14 +11,16 @@ categories: slashes
|
|||
*I don't consider myself to be a web developer, but I've learned a **ton** through the process of building/tweaking/maintaining this site. The [colophon](https://indieweb.org/colophon) provides a quick overview of what powers `runtimeterror.dev`.*
|
||||
|
||||
### This site...
|
||||
- is built with [Hugo](https://gohugo.io/) using the [risotto](https://github.com/joeroe/risotto) theme with many, many tweaks and customizations.
|
||||
- uses the font face [Berkeley Mono](https://berkeleygraphics.com/typefaces/berkeley-mono/) ([details](/using-custom-font-hugo/)).
|
||||
- is built with [Hugo](https://gohugo.io/) based on the [risotto](https://github.com/joeroe/risotto) theme with many, many tweaks and customizations.
|
||||
- uses the font face [Berkeley Mono](https://berkeleygraphics.com/typefaces/berkeley-mono/) ([details](/using-custom-font-hugo/)), and icons from [Font Awesome](https://fontawesome.com/) and [Fork Awesome](https://forkaweso.me/).
|
||||
- performs syntax highlighting with [Torchlight](https://torchlight.dev) ([details](/spotlight-on-torchlight/)).
|
||||
- provides site search with [lunr](https://lunrjs.com/) based on an implementation detailed by [Victoria Drake](https://victoria.dev/blog/add-search-to-hugo-static-sites-with-lunr/).
|
||||
- leverages [Cabin](https://withcabin.com) for [privacy-friendly](https://withcabin.com/privacy/runtimeterror.dev) analytics.
|
||||
- resolves via [Bunny DNS](https://bunny.net/dns/).
|
||||
- is published to / hosted on [Bunny Storage](https://bunny.net/storage/) and [Bunny CDN](https://bunny.net/cdn/) with a [GitHub Actions workflow](//further-down-the-bunny-hole/)
|
||||
- has a [Gemini](https://geminiprotocol.net) mirror at `gemini://gmi.runtimeterror.dev`. This is generated from a [Hugo gemtext post layout](https://github.com/jbowdre/runtimeterror/blob/main/layouts/_default/single.gmi), deployed to a [Vultr](https://www.vultr.com/) VPS through a GitHub Actions workflow, and served with [Agate](https://github.com/mbrubeck/agate).
|
||||
- has a [Gemini](https://geminiprotocol.net) mirror at `gemini://gmi.runtimeterror.dev`. This is generated from a [Hugo gemtext post layout](https://github.com/jbowdre/runtimeterror/blob/main/layouts/_default/single.gmi), deployed to a [Vultr](https://www.vultr.com/) VPS through that same GitHub Actions workflow, and served with [Agate](https://github.com/mbrubeck/agate).
|
||||
|
||||
The post content is licensed under [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/); the site code is under the [MIT License](https://github.com/jbowdre/runtimeterror/blob/main/LICENSE).
|
||||
|
||||
|
||||
Look behind the scenes at [github.com/jbowdre/runtimeterror](https://github.com/jbowdre/runtimeterror).
|
||||
|
|
|
@ -1,22 +1,4 @@
|
|||
---
|
||||
title: "/save"
|
||||
date: "2024-05-28T00:25:51Z"
|
||||
lastmod: "2024-05-28"
|
||||
description: "Referral links for products and services I use and heartily recommend."
|
||||
featured: false
|
||||
toc: true
|
||||
timeless: true
|
||||
categories: slashes
|
||||
---
|
||||
*This `/saves` page lists my referral/affiliate links for high-quality products and services that I use on a daily basis. These are things I frequently recommend to others anyway, but signing up with these links might save one or both of us some money.*
|
||||
|
||||
### I use and recommend:
|
||||
- **[Bunny.net](https://bunny.net?ref=0eh23p45xs)** DNS and CDN service that really hops
|
||||
- **[Cloaked](https://join.cloaked.app/?utm_source=referral&utm_campaign=Ee83SGN8OR)** Protect your personal information by generating unique identities
|
||||
- **[Fastmail](https://app.fastmail.com/signup/?STKI=/u29803368)** Fast, private email
|
||||
- **[NextDNS](https://nextdns.io/?from=2jujzdcc)** Cloud-based DNS filtering
|
||||
- **[omg.lol](https://home.omg.lol/referred-by/jbowdre)** The best web address you'll ever have
|
||||
- **[Oura](https://ouraring.com/raf/e3b03b82b5)** A stylish ring to track your sleep and recovery
|
||||
- **[Privacy.com](https://app.privacy.com/join/JMMQ7)** Unique merchant-locked cards for every online purchase
|
||||
- **[Vultr](https://www.vultr.com/?ref=9488431)** Cost-effective cloud infrastructure
|
||||
|
||||
type: redirect
|
||||
target: https://blog.jbowdre.lol/save
|
||||
---
|
|
@ -1,77 +1,4 @@
|
|||
---
|
||||
title: "/uses"
|
||||
date: "2024-05-29"
|
||||
lastmod: "2024-06-02"
|
||||
description: "The hardware, software, services, and gear which I use (almost) daily."
|
||||
toc: true
|
||||
timeless: true
|
||||
categories: slashes
|
||||
type: redirect
|
||||
target: https://blog.jbowdre.lol/uses
|
||||
---
|
||||
*Here's some of the stuff I use and how I use it.*
|
||||
|
||||
### Hardware
|
||||
*Not counting my [homelab](/homelab).*
|
||||
- **[Framework Laptop Chromebook Edition](https://frame.work/products/laptop-chromebook-12-gen-intel)** (i5-1240P | 32GB RAM | 1TB NVMe). Yep, it's an overpowered Chromebook, and my primary computing device. I make full use of the [ChromeOS Linux Development Environment](https://www.chromium.org/chromium-os/developer-library/guides/containers/containers-and-vms/), with [Nix](https://nixos.org/) for package management.
|
||||
- **[Pixelbook](https://blog.google/products/pixelbook/introducing-pixelbook/)** running [NixOS](https://nixos.org/) for when I need a "real" Linux computer.
|
||||
- **[BOOX Note Air3 C](https://shop.boox.com/products/noteair3) e-ink tablet** for reading and (hand)writing notes (more on this [here](https://blog.jbowdre.lol/post/boox-note-air-3-c-e-ink-writing-tablet)).
|
||||
- **[Creality Ender 3 Pro 3D Printer](https://www.creality.com/products/ender-3-pro-3d-printer)**, or at least that's how it started. It's got a direct-drive conversion, a "silent" board running Klipper firmware, and more printed part upgrades than I can remember.
|
||||
- **[Weatherflow Tempest Weather Station](https://shop.tempest.earth/products/tempest)** to help me get my Wx nerd on.
|
||||
|
||||
### Everyday Carry
|
||||
*What has it got in its pocketses?*
|
||||
- **[Flipper Zero](https://flipperzero.one/)** running [Momentum Firmware](https://momentum-fw.dev/) in my pocket or bag for on-the-go hacking and exploration.
|
||||
- **[Leatherman FREE K4](https://www.leatherman.com/free-k4-590.html)** knife/multitool in my pocket for cutting and tinkering.
|
||||
- **[Milky lactase tablets](https://shopmilky.com/)** in my wallet so I can enjoy dairy without consequences.
|
||||
- **[Oura Ring](https://ouraring.com/product/rings/heritage)** (3rd generation, Heritage Black) on my middle finger for sleep and readiness/recovery tracking.
|
||||
- **[Pixel 8 Pro](https://store.google.com/product/pixel_8_pro)** in my pocket, running [GrapheneOS](https://grapheneos.org/) as my daily-driver (more on how I use that [here](https://blog.jbowdre.lol/post/daily-driving-grapheneos)).
|
||||
- **[Pixel Buds Pro](https://store.google.com/product/pixel_buds_pro)** in my ears, with noise cancelling so I don't have to acknowledge the world around me.
|
||||
- **[Pixel Watch 2](https://store.google.com/product/pixel_watch_2)** on my wrist, for notifications and fitness tracking.
|
||||
- **[ProxGrind RF Field Detector Card](https://www.redteamtools.com/RFID_LF_HF_Field_Detector_Card)** on my keychain to quickly learn about RFID/NFC readers.
|
||||
- **[Ridge Wallet](https://ridge.com/products/aluminum-gunmetal)** in my pocket for keeping my cards handy.
|
||||
- **[RovyVon Aurora A7 EDC Flashlight](https://www.rovyvon.com/collections/aurora-keychain-flashlights/products/aurora-a7-usb-c-gitd-sky-blue-keychain-flashlight-4th-generation)** in my pocket for keeping the darkness at bay.
|
||||
- **[Ti EDC Backpack](https://bigidesign.com/pages/ti-edc-backpack-landing-page)** for carrying my stuff, and keeping it organized while in transit.
|
||||
- **[Yubico Yubikey 5C NFC](https://www.yubico.com/product/yubikey-5c-nfc/)** on my keychain for hardware token things.
|
||||
|
||||
### Software
|
||||
*Computer and web apps.*
|
||||
- **[Calibre](https://calibre-ebook.com/)** for collecting, converting, and managing my eBooks.
|
||||
- **[Fish shell](https://fishshell.com/)**, a really smart, modern, heavily configurable shell.
|
||||
- **[Home Assistant](https://www.home-assistant.io/)** for controlling my "smart" home.
|
||||
- **[Home Manager](https://github.com/nix-community/home-manager)** for managing packages and configurations across multiple systems ([dotfiles](https://github.com/jbowdre/dotfiles)).
|
||||
- **[Immich](https://immich.app/)**, a self-hosted photo and video management solution.
|
||||
- **[Linkding](https://github.com/sissbruecker/linkding)** as a self-hosted bookmark manager.
|
||||
- **[Miniflux](https://miniflux.app/)**, a self-hosted minimalist feed reader.
|
||||
- **[Obsidian](https://obsidian.md/)** for collecting/organizing notes. You can see some of them [here](https://notes.runtimeterror.dev/).
|
||||
- **[Phanpy](https://phanpy.social/#/)**, a minimal and opinionated Mastodon web client.
|
||||
- **[Tabby](https://tabby.sh/)**, a beautiful cross-platform terminal app.
|
||||
- **[tmux](https://github.com/tmux/tmux)** because *I heard you like terminals so I put a terminal in your terminal so you can terminal while you terminal*.
|
||||
- **[Vim](https://www.vim.org/)** for coding and development without a GUI.
|
||||
- **[VSCode](https://code.visualstudio.com/)** for most coding and development.
|
||||
|
||||
### Android Apps
|
||||
*Skipping the obvious ones for services mentioned elsewhere on this page...*
|
||||
- **[Cheogram](https://play.google.com/store/apps/details?id=com.cheogram.android.playstore)** ([F-Droid](https://f-droid.org/packages/com.cheogram.android/)) XMPP client, with great integration to [jmp.chat](https://jmp.chat/).
|
||||
- **[Element](https://play.google.com/store/apps/details?id=im.vector.app)** ([F-Droid](https://f-droid.org/en/packages/im.vector.app/)) Matrix chat client.
|
||||
- **[Firefox Focus](https://play.google.com/store/apps/details?id=org.mozilla.focus)** Fast and private web browser for throw-away browsing sessions.
|
||||
- **[Firefox](https://play.google.com/store/apps/details?id=org.mozilla.firefox)** for general web browsing.
|
||||
- **[JBV1](https://play.google.com/store/apps/details?id=com.johnboysoftware.jbv1)** gives super powers to my Valentine One radar detector.
|
||||
- **[Lagrange](https://skyjake.github.io/fdroid/repo/)** browser for [Gemini](https://geminiprotocol.net/).
|
||||
- **[RaceBox](https://play.google.com/store/apps/details?id=pro.RaceBox.androidapp)** / **[RaceChrono](https://play.google.com/store/apps/details?id=com.racechrono.app)** for recording GPS/acceleration data during my [autocross runs](https://www.youtube.com/playlist?list=PLwzr4uKY-x-EwCv-rWNGefdikuW6Oy9O_).
|
||||
- **[RadarScope](https://play.google.com/store/apps/details?id=com.basevelocity.radarscope)** weather radar and information.
|
||||
- **[SimpleX Chat](https://play.google.com/store/apps/details?id=chat.simplex.app)** ([F-Droid](https://f-droid.org/en/packages/chat.simplex.app/)) for end-to-end encrypted chats without any user identifiers.
|
||||
- **[Squoosh](https://squoosh.app/)** for compressing and EXIF-stripping photos before sharing.
|
||||
- **[Tasker](https://play.google.com/store/apps/details?id=net.dinglisch.android.taskerm)** for automated profiles on my phone.
|
||||
- **[WiFiman](https://play.google.com/store/apps/details?id=com.ubnt.usurvey)** for scanning a testing wireless networks.
|
||||
- **[Yubico Authenticator](https://play.google.com/store/apps/details?id=com.yubico.yubioath)** for storing TOTP secrets on a hardware token.
|
||||
|
||||
### Services
|
||||
*These may include affiliate links.*
|
||||
- **[Cloaked](https://join.cloaked.app/?utm_source=referral&utm_campaign=Ee83SGN8OR)** for generating unique identies (email addresses + phone numbers) for every web sign-up.
|
||||
- **[Fastmail](https://app.fastmail.com/signup/?STKI=/u29803368)** for fast, private email service with a ton of nice bonus features.
|
||||
- **[Forward Email](https://forwardemail.net/)** for routing email to/from my various project domains.
|
||||
- **[JMP.chat](https://jmp.chat/)** for a phone number backed by XMPP.
|
||||
- **[NextDNS](https://nextdns.io/?from=2jujzdcc)** for privacy-protecting ad-blocking DNS filtering in the cloud.
|
||||
- **[Obico](https://www.obico.io/)** for controlling and monitoring 3D prints.
|
||||
- **[omg.lol](https://home.omg.lol/referred-by/jbowdre)** for some really handy web tools and one of the best communities of interesting people.
|
||||
- **[Privacy.com](https://app.privacy.com/join/JMMQ7)** for creating virtual merchant-locked credit cards to keep me safe when shopping online.
|
||||
- **[Tailscale](https://tailscale.com)** for connecting all my various systems and making them think that they're on the same LAN.
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
"nodes": {
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1708807242,
|
||||
"narHash": "sha256-sRTRkhMD4delO/hPxxi+XwLqPn8BuUq6nnj4JqLwOu0=",
|
||||
"lastModified": 1719254875,
|
||||
"narHash": "sha256-ECni+IkwXjusHsm9Sexdtq8weAq/yUyt1TWIemXt3Ko=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "73de017ef2d18a04ac4bfd0c02650007ccb31c2a",
|
||||
"rev": "2893f56de08021cffd9b6b6dfc70fd9ccd51eb60",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
9
layouts/_default/_markup/render-link.html
Normal file
9
layouts/_default/_markup/render-link.html
Normal file
|
@ -0,0 +1,9 @@
|
|||
{{- $u := urls.Parse .Destination -}}
|
||||
<a href="{{ .Destination | safeURL }}"
|
||||
{{- with .Title }} title="{{ . }}"{{ end -}}
|
||||
{{- if $u.IsAbs }} rel="external"{{ end -}}
|
||||
>
|
||||
{{- with .Text | safeHTML }}{{ . }}{{ end -}}
|
||||
{{- if $u.IsAbs }}↗{{ end -}}
|
||||
</a>
|
||||
{{- /* chomp trailing newline */ -}}
|
|
@ -10,7 +10,7 @@
|
|||
<h1>{{ .Title | markdownify }}</h1>
|
||||
<i>My collection of <a target="_blank" title="what's a slashpage?" href="https://slashpages.net">slash pages</a>.</i><hr>
|
||||
{{ else }}
|
||||
<h1>{{ .Title | markdownify }}{{ if eq .Kind "term" }} <a target="_blank" href="{{ .Permalink }}feed.xml" aria-label="{{ .Title }} RSS" title="{{ .Title }} RSS"><i class="fa-solid fa-square-rss"></i></a> </h1>
|
||||
<h1>{{ .Title | markdownify | lower }}{{ if eq .Kind "term" }} <a target="_blank" href="{{ .Permalink }}feed.xml" aria-label="{{ .Title }} RSS" title="{{ .Title }} RSS"><i class="fa-solid fa-square-rss"></i></a> </h1>
|
||||
{{ with .Description }}<i>{{ . }}</i>{{ end }}
|
||||
{{ end }}
|
||||
<hr>
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
{{ end }}
|
||||
</ul>
|
||||
{{ else }}
|
||||
<h3>More {{ .Params.categories }}</h3>
|
||||
<h3>more {{ lower .Params.categories }}</h3>
|
||||
<ul>
|
||||
{{- range first $relatedLimit $related }}
|
||||
<li>
|
||||
|
@ -42,7 +42,7 @@
|
|||
{{- $featured := default 8 .Site.Params.numberOfFeaturedPosts }}
|
||||
{{- $featuredPosts := first $featured (where $posts "Params.featured" true)}}
|
||||
{{- with $featuredPosts }}
|
||||
<h3>Featured Posts</h3>
|
||||
<h3>features</h3>
|
||||
<ul>
|
||||
{{- range . }}
|
||||
<li>
|
||||
|
@ -54,4 +54,7 @@
|
|||
<hr>
|
||||
<h3>status.lol</h3>
|
||||
<script src="https://status.lol/jbowdre.js?time&link&fluent&pretty"></script>
|
||||
<hr>
|
||||
<h3>recent track</h3>
|
||||
<script src="https://recentfm.rknight.me/now.js?u=pushpianotire&e=🎶"></script>
|
||||
|
||||
|
|
|
@ -26,9 +26,6 @@
|
|||
<!-- ForkAwesome <https://forkaweso.me/> -->
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/fork-awesome@1.2.0/css/fork-awesome.min.css" integrity="sha256-XoaMnoYC5TH6/+ihMEnospgm0J1PM/nioxbOUdnM8HY=" crossorigin="anonymous">
|
||||
|
||||
<!-- Academicons <https://jpswalsh.github.io/academicons/> -->
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/academicons/1.9.1/css/academicons.min.css" integrity="sha512-b1ASx0WHgVFL5ZQhTgiPWX+68KjS38Jk87jg7pe+qC7q9YkEtFq0z7xCglv7qGIs/68d3mAp+StfC8WKC5SSAg==" crossorigin="anonymous" />
|
||||
|
||||
<!-- risotto theme -->
|
||||
<link rel="stylesheet" href="{{ printf "css/palettes/%s.css" (.Site.Params.theme.palette | default "base16-dark") | absURL }}">
|
||||
<link rel="stylesheet" href="{{ "css/risotto.css" | absURL }}">
|
||||
|
|
1
layouts/redirect/single.html
Normal file
1
layouts/redirect/single.html
Normal file
|
@ -0,0 +1 @@
|
|||
{{- template "_internal/alias.html" (dict "Permalink" .Params.target) -}}
|
|
@ -238,6 +238,18 @@ small[style^="opacity: .5"] {
|
|||
opacity: 1 !important;
|
||||
}
|
||||
|
||||
/* recentfm styling */
|
||||
.recent-played {
|
||||
background: var(--off-bg) !important;
|
||||
flex-direction:column;
|
||||
border-radius: 0.5em;
|
||||
padding: 0.5em;
|
||||
}
|
||||
|
||||
.recent-played-track {
|
||||
margin: 0.5em 0;
|
||||
}
|
||||
|
||||
/* code overrides */
|
||||
pre,
|
||||
code,
|
||||
|
|
Loading…
Reference in a new issue