@@ -205,8 +205,8 @@ go-install kustomize sigs.k8s.io/kustomize/kustomize/v4@v4.5.7
205205
206206# for docs site
207207
208- # doc# | hugo | v0.152.2 | https://gohugo.io/ |
209- go-install hugo -tags extended github.com/gohugoio/hugo@v0.152.2
208+ # doc# | hugo | v0.166.0 | https://gohugo.io/ |
209+ go-install hugo -tags extended github.com/gohugoio/hugo@v0.166.0
210210
211211# doc# | htmltest | latest | https://github.com/wjdp/htmltest (but see https://github.com/theunrepentantgeek/htmltest for our custom build )
212212# Restore this to github.com/wjdp/htmltest@v?? once PR#215 is merged with the feature we need
@@ -313,12 +313,87 @@ if should-install "$TOOL_DEST/azwi"; then
313313fi
314314
315315# Ensure tooling for Hugo is available
316+ # doc# | Node.js | v24.21.0 | https://nodejs.org/ |
317+ node_version=v24.21.0
318+ if [[ -x " $TOOL_DEST /node" && -e " $TOOL_DEST /npm" ]]; then
319+ export PATH=" $TOOL_DEST :$PATH "
320+ fi
321+
322+ install_node=false
323+ if [[ " $DEVCONTAINER " == true ]]; then
324+ install_node=true
325+ elif ! command -v node > /dev/null 2>&1 || ! command -v npm > /dev/null 2>&1 ; then
326+ install_node=true
327+ elif [[ $( node --version) =~ ^v([0-9]+)\. ]] && [[ ${BASH_REMATCH[1]} -lt 24 ]]; then
328+ install_node=true
329+ fi
330+
331+ if [[ " $install_node " == true ]]; then
332+ write-info " Installing Node.js"
333+ case " $os -$arch " in
334+ linux-amd64)
335+ node_platform=linux-x64
336+ ;;
337+ linux-arm64)
338+ node_platform=linux-arm64
339+ ;;
340+ darwin-amd64)
341+ node_platform=darwin-x64
342+ ;;
343+ darwin-arm64)
344+ node_platform=darwin-arm64
345+ ;;
346+ * )
347+ write-error " Node.js is not available for $os -$arch "
348+ exit 1
349+ ;;
350+ esac
351+
352+ rm -rf " $TOOL_DEST /nodejs"
353+ mkdir -p " $TOOL_DEST /nodejs"
354+ curl -sL " https://nodejs.org/dist/${node_version} /node-${node_version} -${node_platform} .tar.gz" |
355+ tar xz --strip-components=1 -C " $TOOL_DEST /nodejs"
356+ ln -sf " $TOOL_DEST /nodejs/bin/node" " $TOOL_DEST /node"
357+ ln -sf " $TOOL_DEST /nodejs/bin/npm" " $TOOL_DEST /npm"
358+ ln -sf " $TOOL_DEST /nodejs/bin/npx" " $TOOL_DEST /npx"
359+ export PATH=" $TOOL_DEST :$PATH "
360+ fi
361+
362+ # doc# | Dart Sass | v1.102.0 | https://sass-lang.com/dart-sass/ |
363+ write-verbose " Checking for $TOOL_DEST /sass"
364+ if should-install " $TOOL_DEST /sass" ; then
365+ write-info " Installing Dart Sass"
366+ case " $os -$arch " in
367+ linux-amd64)
368+ sass_platform=linux-x64
369+ ;;
370+ linux-arm64)
371+ sass_platform=linux-arm64
372+ ;;
373+ darwin-amd64)
374+ sass_platform=macos-x64
375+ ;;
376+ darwin-arm64)
377+ sass_platform=macos-arm64
378+ ;;
379+ * )
380+ write-error " Dart Sass is not available for $os -$arch "
381+ exit 1
382+ ;;
383+ esac
384+
385+ rm -rf " $TOOL_DEST /dart-sass"
386+ curl -sL " https://github.com/sass/dart-sass/releases/download/1.102.0/dart-sass-1.102.0-${sass_platform} .tar.gz" | tar xz -C " $TOOL_DEST "
387+ ln -sf " $TOOL_DEST /dart-sass/sass" " $TOOL_DEST /sass"
388+ fi
389+
316390# doc# | PostCSS | latest | https://postcss.org/ |
317391write-verbose " Checking for /usr/bin/postcss"
318392if ! which postcss > /dev/null 2>&1 ; then
319393 write-info " Installing postcss"
320394 npm config set fund false --location=global
321395 npm install --global postcss postcss-cli autoprefixer
396+ ln -sf " $( npm prefix --global) /bin/postcss" " $TOOL_DEST /postcss"
322397fi
323398
324399if [ " $VERBOSE " == true ]; then
0 commit comments