diff --git a/.github/workflows/update-external-posts.yml b/.github/workflows/update-external-posts.yml new file mode 100644 index 0000000..8557895 --- /dev/null +++ b/.github/workflows/update-external-posts.yml @@ -0,0 +1,63 @@ +name: 'Update External Blog Posts' + +on: + schedule: + # Run daily at 6 AM UTC + - cron: '0 6 * * *' + workflow_dispatch: + # Allow manual triggering + +jobs: + update-external-posts: + runs-on: ubuntu-latest + permissions: + contents: write + pull-requests: write + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + token: ${{ secrets.GITHUB_TOKEN }} + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '18' + + - name: Install dependencies + run: npm install + + - name: Run external blog aggregation + run: ./scripts/aggregate-external-posts.sh + + - name: Check for changes + id: git-check + run: | + git diff --exit-code data/external_posts.yaml || echo "changes=true" >> $GITHUB_OUTPUT + + - name: Commit and push changes + if: steps.git-check.outputs.changes == 'true' + run: | + git config --local user.email "action@github.com" + git config --local user.name "GitHub Action" + git add data/external_posts.yaml + git commit -m "🤖 Update external blog posts [automated]" + git push + + - name: Create summary + if: steps.git-check.outputs.changes == 'true' + run: | + echo "## 🌐 External Blog Posts Updated" >> $GITHUB_STEP_SUMMARY + echo "Successfully aggregated posts from external blogs:" >> $GITHUB_STEP_SUMMARY + echo "- DevJev (https://www.devjev.nl/)" >> $GITHUB_STEP_SUMMARY + echo "- Bearman (https://bearman.nl/)" >> $GITHUB_STEP_SUMMARY + echo "- Wesley Camargo (https://wesleycamargo.github.io/)" >> $GITHUB_STEP_SUMMARY + echo "" >> $GITHUB_STEP_SUMMARY + echo "Changes committed and site will be rebuilt automatically." >> $GITHUB_STEP_SUMMARY + + - name: No changes summary + if: steps.git-check.outputs.changes != 'true' + run: | + echo "## ✅ External Blog Posts Up to Date" >> $GITHUB_STEP_SUMMARY + echo "No new external blog posts found." >> $GITHUB_STEP_SUMMARY \ No newline at end of file diff --git a/README.md b/README.md index e0b3f15..b9ad14d 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,7 @@ A fast and flexible static site generator built with love by [bep], [spf13], and [](https://github.com/gohugoio/hugo/actions?query=workflow%3ATest) [](https://goreportcard.com/report/github.com/gohugoio/hugo) -[Website] | [Installation] | [Documentation] | [Support] | [Contributing] | Mastodon +[Website] | [Installation] | [Documentation] | [Support] | [Contributing] | Mastodon | X ## Overview @@ -67,26 +67,9 @@ See the [features] section of the documentation for a comprehensive summary of H
-## Editions - -Hugo is available in three editions: standard, extended, and extended/deploy. While the standard edition provides core functionality, the extended and extended/deploy editions offer advanced features. - -Feature|extended edition|extended/deploy edition -:--|:-:|:-: -Encode to the WebP format when [processing images]. You can decode WebP images with any edition.|:heavy_check_mark:|:heavy_check_mark: -[Transpile Sass to CSS] using the embedded LibSass transpiler. You can use the [Dart Sass] transpiler with any edition.|:heavy_check_mark:|:heavy_check_mark: -Deploy your site directly to a Google Cloud Storage bucket, an AWS S3 bucket, or an Azure Storage container. See [details].|:x:|:heavy_check_mark: - -[dart sass]: https://gohugo.io/functions/css/sass/#dart-sass -[processing images]: https://gohugo.io/content-management/image-processing/ -[transpile sass to css]: https://gohugo.io/functions/css/sass/ -[details]: https://gohugo.io/hosting-and-deployment/hugo-deploy/ - -Unless your specific deployment needs require the extended/deploy edition, we recommend the extended edition. - ## Installation Install Hugo from a [prebuilt binary], package manager, or package repository. Please see the installation instructions for your operating system: @@ -98,11 +81,15 @@ Install Hugo from a [prebuilt binary], package manager, or package repository. P ## Build from source +Hugo is available in two editions: standard and extended. With the extended edition you can: + +- Encode to the WebP format when processing images. You can decode WebP images with either edition. +- Transpile Sass to CSS using the embedded LibSass transpiler. The extended edition is not required to use the Dart Sass transpiler. + Prerequisites to build Hugo from source: -- Standard edition: Go 1.23.0 or later -- Extended edition: Go 1.23.0 or later, and GCC -- Extended/deploy edition: Go 1.23.0 or later, and GCC +- Standard edition: Go 1.20 or later +- Extended edition: Go 1.20 or later, and GCC Build the standard edition: @@ -115,13 +102,6 @@ Build the extended edition: ```text CGO_ENABLED=1 go install -tags extended github.com/gohugoio/hugo@latest ``` - -Build the extended/deploy edition: - -```text -CGO_ENABLED=1 go install -tags extended,withdeploy github.com/gohugoio/hugo@latest -``` - ## Star History [](https://star-history.com/#gohugoio/hugo&Timeline) @@ -168,113 +148,153 @@ Hugo stands on the shoulders of great open source libraries. Run `hugo env --log
+ {{ end }}
+
+ {{ .summary | plainify }}
+ + {{ if and site.Params.features.tags.enable site.Params.features.tags.on_card }} + {{ if .tags }} + + {{ end }} + {{ end }} +