diff --git a/.github/workflows/deploy-preview.yml b/.github/workflows/deploy-preview.yml index 65658db..bceae9b 100644 --- a/.github/workflows/deploy-preview.yml +++ b/.github/workflows/deploy-preview.yml @@ -1,10 +1,11 @@ -name: Deploy Preview to Neocities +name: Build and Deploy Preview # only run on changes to preview on: push: branches: - preview + workflow_dispatch: concurrency: # prevent concurrent deploys doing strange things group: deploy-preview @@ -42,16 +43,20 @@ jobs: chmod 644 ~/.ssh/known_hosts - name: Build with Hugo run: HUGO_REMOTE_FONT_PATH=${{ secrets.REMOTE_FONT_PATH }} hugo --minify --environment preview - - name: Insert 404 page - run: | - cp public/404/index.html public/not_found.html - name: Highlight with Torchlight run: | npm i @torchlight-api/torchlight-cli - npx torchlight - - name: Deploy to Neocities - uses: bcomnes/deploy-to-neocities@v1 + TORCHLIGHT_TOKEN=${{ secrets.TORCHLIGHT_TOKEN }} npx torchlight + - name: Deploy to Bunny + uses: ayeressian/bunnycdn-storage-deploy@v2.2.2 with: - api_token: ${{ secrets.NEOCITIES_PREVIEW_API_TOKEN }} - cleanup: true - dist_dir: public \ No newline at end of file + source: public + destination: / + storageZoneName: "${{ secrets.BUNNY_STORAGE_NAME_PREVIEW }}" + storagePassword: "${{ secrets.BUNNY_STORAGE_PASSWORD_PREVIEW }}" + storageEndpoint: "${{ secrets.BUNNY_STORAGE_ENDPOINT }}" + accessKey: "${{ secrets.BUNNY_API_KEY }}" + pullZoneId: "${{ secrets.BUNNY_ZONE_ID_PREVIEW }}" + upload: "true" + remove: "true" + purgePullZone: "true" \ No newline at end of file diff --git a/.github/workflows/deploy-prod.yml b/.github/workflows/deploy-prod.yml index 341fb88..119ef5a 100644 --- a/.github/workflows/deploy-prod.yml +++ b/.github/workflows/deploy-prod.yml @@ -1,4 +1,4 @@ -name: Deploy to Production +name: Build and Deploy Prod # only run on changes to main on: @@ -45,19 +45,23 @@ jobs: chmod 644 ~/.ssh/known_hosts - name: Build with Hugo run: HUGO_REMOTE_FONT_PATH=${{ secrets.REMOTE_FONT_PATH }} hugo --minify - - name: Insert 404 page - run: | - cp public/404/index.html public/not_found.html - name: Highlight with Torchlight run: | npm i @torchlight-api/torchlight-cli - npx torchlight - - name: Deploy HTML to Neocities - uses: bcomnes/deploy-to-neocities@v1 + TORCHLIGHT_TOKEN=${{ secrets.TORCHLIGHT_TOKEN }} npx torchlight + - name: Deploy to Bunny + uses: ayeressian/bunnycdn-storage-deploy@v2.2.2 with: - api_token: ${{ secrets.NEOCITIES_API_TOKEN }} - cleanup: true - dist_dir: public + source: public + destination: / + storageZoneName: "${{ secrets.BUNNY_STORAGE_NAME }}" + storagePassword: "${{ secrets.BUNNY_STORAGE_PASSWORD }}" + storageEndpoint: "${{ secrets.BUNNY_STORAGE_ENDPOINT }}" + accessKey: "${{ secrets.BUNNY_API_KEY }}" + pullZoneId: "${{ secrets.BUNNY_ZONE_ID }}" + upload: "true" + remove: "true" + purgePullZone: "true" - name: Deploy GMI to Agate run: | rsync -avz --delete --exclude='*.html' --exclude='*.css' --exclude='*.js' -e ssh public/ deploy@${{ secrets.GMI_HOST }}:${{ secrets.GMI_CONTENT_PATH }} diff --git a/config/preview/hugo.toml b/config/preview/hugo.toml index 8936b1b..f9f012b 100644 --- a/config/preview/hugo.toml +++ b/config/preview/hugo.toml @@ -1 +1 @@ -baseURL = "https://preview--runtimeterror.neocities.org/" \ No newline at end of file +baseURL = "https://preview.runtimeterror.dev/" \ No newline at end of file diff --git a/content/changelog.md b/content/changelog.md index bf481de..715a67a 100644 --- a/content/changelog.md +++ b/content/changelog.md @@ -1,7 +1,7 @@ --- title: "/changelog" date: "2024-05-26T21:19:08Z" -lastmod: "2024-05-30" +lastmod: "2024-06-06" description: "Maybe I should keep a log of all my site-related tinkering?" featured: false toc: false @@ -10,6 +10,9 @@ categories: slashes --- *High-level list of config/layout changes to the site.* +**2024-06-06:** +- Migrate hosting from Neocities to Bunny CDN + **2024-05-30:** - Fix broken styling for taxonomy (categories/tags) feeds - Open "notes" header link in new tab since it's an external link diff --git a/content/colophon.md b/content/colophon.md index 15c6c4b..92a5dd4 100644 --- a/content/colophon.md +++ b/content/colophon.md @@ -1,7 +1,7 @@ --- title: "/colophon" date: "2024-05-26T22:30:58Z" -lastmod: "2024-05-28" +lastmod: "2024-06-06" description: "There's a lot that goes into this site. Let me tell you how it works." featured: false toc: true @@ -16,8 +16,8 @@ categories: slashes - 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 [tinylytics](https://tinylytics.app/) for privacy-friendly analytics and cute kudos buttons. -- uses [bunny.net](https://bunny.net) for DNS and CDN services. -- is published to / hosted by [Neocities](https://neocities.org) with a GitHub Actions workflow ([details](/deploy-hugo-neocities-github-actions/)). +- resolves via [Bunny DNS](https://bunny.net/dns/). +- is published to / hosted by [Bunny CND](https://bunny.net/cdn/) with a GitHub Actions workflow. - 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). diff --git a/content/posts/prettify-hugo-rss-feed-xslt/index.md b/content/posts/prettify-hugo-rss-feed-xslt/index.md index 3667692..3bb42b8 100644 --- a/content/posts/prettify-hugo-rss-feed-xslt/index.md +++ b/content/posts/prettify-hugo-rss-feed-xslt/index.md @@ -1,7 +1,7 @@ --- title: "Prettify Hugo RSS Feeds with XSLT" date: 2024-04-30 -lastmod: "2024-05-30" +lastmod: "2024-06-05" description: "Making my Hugo-generated RSS XML look as good to human visitors as it does to feed readers." featured: false thumbnail: pretty-feed.png @@ -180,7 +180,7 @@ That's getting there: ![A darker styled RSS page](getting-there-feed.png) -Including those CSS styles means that the rendered page now uses my color palette and the [font I worked so hard to integrate](/using-custom-font-hugo/). I'm just going to make a few more tweaks to change some of the formatting, put the `New to feeds?` bit on its own line, and point to my [self-hosted instance of the SearXNG metasearch engine](https://scribbles.jbowdre.lol/post/self-hosting-a-search-engine-iyjdlk6y) instead of DDG. +Including those CSS styles means that the rendered page now uses my color palette and the [font I worked so hard to integrate](/using-custom-font-hugo/). I'm just going to make a few more tweaks to change some of the formatting, put the `New to feeds?` bit on its own line, and point to [Mojeek](https://mojeek.com) instead of DDG ([why?](https://scribbles.jbowdre.lol/post/a-comprehensive-evaluation-of-various-search-engines-i-ve-used)). Here's my final (for now) `static/xml/feed.xsl` file: @@ -210,7 +210,7 @@ Here's my final (for now) `static/xml/feed.xsl` file:

(RSS)

This is an RSS feed. To subscribe to it, copy its address and paste it when your feed reader asks for it. It will be updated periodically in your reader.

-

New to feeds? Learn more.

+

New to feeds? Learn more.

urladdressfalse diff --git a/content/uses.md b/content/uses.md index 5286f9d..f277bd0 100644 --- a/content/uses.md +++ b/content/uses.md @@ -1,7 +1,7 @@ --- title: "/uses" date: "2024-05-29" -# lastmod: {{ .Date | time.Format "2006-01-02" }} +lastmod: "2024-06-02" description: "The hardware, software, services, and gear which I use (almost) daily." toc: true timeless: true @@ -18,7 +18,7 @@ categories: slashes - **[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 pockets/backpack?* +*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. @@ -28,7 +28,8 @@ categories: slashes - **[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. -- **[Ti EDC Backpack](https://bigidesign.com/pages/ti-edc-backpack-landing-page)** for carrying my stuff. +- **[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 diff --git a/static/xml/feed.xsl b/static/xml/feed.xsl index d51a25c..03a86f1 100644 --- a/static/xml/feed.xsl +++ b/static/xml/feed.xsl @@ -22,7 +22,7 @@

(RSS)

This is an RSS feed. To subscribe to it, copy its address and paste it when your feed reader asks for it. It will be updated periodically in your reader.

-

New to feeds? Learn more.

+

New to feeds? Learn more.

urladdressfalse