From 3437d6ba92812d16ffbabd478892a381c3822440 Mon Sep 17 00:00:00 2001 From: yqtian Date: Sat, 2 May 2026 12:13:40 +1000 Subject: [PATCH 1/2] Install Dart Sass from upstream tarball instead of snap The dart-sass-embedded snap is deprecated and snap store outages were causing transient failures ("unable to contact snap store"). Pulling the prebuilt binary from the sass/dart-sass GitHub release is what Hugo's official docs now recommend. --- .github/workflows/pr-preview.yml | 10 ++++++++-- .github/workflows/production-deploy.yml | 10 ++++++++-- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/.github/workflows/pr-preview.yml b/.github/workflows/pr-preview.yml index d26c651..f360cbc 100644 --- a/.github/workflows/pr-preview.yml +++ b/.github/workflows/pr-preview.yml @@ -36,8 +36,14 @@ jobs: run: | wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb \ && sudo dpkg -i ${{ runner.temp }}/hugo.deb - - name: Install Dart Sass Embedded - run: sudo snap install dart-sass-embedded + - name: Install Dart Sass + env: + DART_SASS_VERSION: 1.83.4 + run: | + wget -O /tmp/dart-sass.tar.gz \ + "https://github.com/sass/dart-sass/releases/download/${DART_SASS_VERSION}/dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz" + tar -xf /tmp/dart-sass.tar.gz -C /tmp + echo "/tmp/dart-sass" >> $GITHUB_PATH - name: Setup Pages id: pages uses: actions/configure-pages@v5 diff --git a/.github/workflows/production-deploy.yml b/.github/workflows/production-deploy.yml index 6aa0cb1..89702c0 100644 --- a/.github/workflows/production-deploy.yml +++ b/.github/workflows/production-deploy.yml @@ -36,8 +36,14 @@ jobs: run: | wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb \ && sudo dpkg -i ${{ runner.temp }}/hugo.deb - - name: Install Dart Sass Embedded - run: sudo snap install dart-sass-embedded + - name: Install Dart Sass + env: + DART_SASS_VERSION: 1.83.4 + run: | + wget -O /tmp/dart-sass.tar.gz \ + "https://github.com/sass/dart-sass/releases/download/${DART_SASS_VERSION}/dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz" + tar -xf /tmp/dart-sass.tar.gz -C /tmp + echo "/tmp/dart-sass" >> $GITHUB_PATH - name: Checkout uses: actions/checkout@v4 with: From ad217ea82d789b08b2b9bcdcc84a4c79a2c07421 Mon Sep 17 00:00:00 2001 From: yqtian Date: Sat, 2 May 2026 12:10:01 +1000 Subject: [PATCH 2/2] Document submodule init step for Docker workflow Without initializing the hugo-universal-theme submodule, the Docker build only produces a handful of pages and most URLs return 404. --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index fd1df50..ac39e2c 100644 --- a/README.md +++ b/README.md @@ -53,6 +53,10 @@ hugo server If you prefer not to install Hugo locally, you can also run the site with Docker using the same Hugo version as CI: ```bash +# Make sure the theme submodule is checked out (otherwise only a few +# pages will be rendered and most URLs will 404). +git submodule update --init --recursive + # Start a local preview at http://127.0.0.1:1313 docker compose up