6 Commits
Author SHA1 Message Date
valknarandClaude Sonnet 5 71828c2379 fix: build CSS with Hugo's native TailwindCSS instead of PostCSS
hugo server/build was failing with "binary postcss is not a Node.js
script" — pnpm's default node_modules/.bin shims are shell wrappers, not
plain Node scripts, which Hugo's exec-security check rejects. Switches
head.html from css.PostCSS to css.TailwindCSS, drops the now-unused
PostCSS toolchain, and adds pnpm-workspace.yaml's
preferSymlinkedExecutables so pnpm emits real symlinks Hugo can exec
(same fix already in use on roux).

Also updates the Dockerfile's build stage to hugomods/hugo:debian-node,
which bundles the matching Hugo Extended + Node versions, keeping ffmpeg
for the video-compression step.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012E2mmywuZyXmPBgSDtNdTL
2026-09-13 17:50:28 +02:00
valknar f0641c0425 fix: docker no .git 2026-04-16 13:42:56 +02:00
valknar e8190f197f fix: docker copy .git 2026-04-16 13:30:01 +02:00
valknar 5f4e03164d fix: git for docker build 2026-04-16 13:15:00 +02:00
valknarandClaude Sonnet 4.6 1f24ee8276 feat: compress MP4 videos at Docker build time via FFmpeg
Hugo has no video processing, so FFmpeg runs in the builder stage
before hugo builds, compressing every content/**/*.mp4 in-place.

scripts/compress-videos.sh:
  - H.264 CRF 28 + preset slow (good web compression)
  - faststart for progressive streaming
  - AAC 64k audio
  - Only replaces source if output is actually smaller, so
    already-lean videos are skipped

Dockerfile:
  - apk adds ffmpeg alongside hugo in the builder stage
  - RUN compress-videos.sh runs after COPY . . before pnpm build
    (compressed files land in public/ via Hugo's copy of page bundles)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-11 18:42:57 +02:00
valknar cd1ff989d0 Initial commit 2026-04-08 19:49:15 +02:00