HUGO

Hugo 0.80.0 Released

17 Likes

Hugo 0.80.0 packages

Brew - Hugo Brew package for macOS and Linux - updated :white_check_mark:
Snap Package - Hugo Snap (Snapcraft) package for Linux

  • traditional release - updated :white_check_mark:
  • extended release - updated :white_check_mark:

Docker/CI Image - Hugo Docker image for Continuous Integration - updated :white_check_mark:
Docker Image - klakegg/hugo - Other Hugo Docker image - updated :white_check_mark:
Debian (sid) - updated :white_check_mark: (Track link)
Ubuntu (hirsute) - updated :white_check_mark: (Track link)
Fedora Copr - Hugo RPM package for Fedora and CentOS - not yet updated :x:
Chocolatey Package - Hugo Chocolatey package for Windows

6 Likes

Thank you so much for this release!

Have a great New Year’s Eve! All the best for 2021! :firecracker: :tada: :confetti_ball:

8 Likes

Docker image - klakegg/hugo - Updated :white_check_mark:

2 Likes

A great way to end the year! Thanks for pushing out Dart Sass! Can’t wait to try it out. Here’s to another great year🎉

3 Likes

@klakegg Do you have a plan to include dart-sass to the Docker images? Currently, installing dartsass to an alpine image may be impossible.

dart-sass-embedded does not work on the alpine image. (I tried but failed, does anybody have any ideas?)

@peaceiris I did not play around with it yet, but the npm sass package is a dart-sass implementation:

Thanks @davidsneighbour,

Hugo extended 0.80.0 depends on dart-sass-embedded. If we miss it, Hugo returns an error as follows:

You need dart-sass-embedded in your system $PATH.

I tried to install the dart-sass-embedded to an alpine image, it seems to require something to work.

If Hugo can use sass command directly, we can apply the approach npm i -g sass on an alpine image since it is built with dart2js, I think.

1 Like

Thank you for pointing this out. I’ll look into it. :smile:

2 Likes

I somehow hoped it would be as easy as a symlink. :frowning: I will wait one or two weeks before looking into that. Dart-SASS is not THAT urgent. Until October all “old” versions will be 100% supported and then after that for one year be in “end of life” support. So my “panic threshold” is after the next northern winter solstice :wink:

2 Likes

You need that particular application. The “dart sass implementation” @davidsneighbour points to is something completely different (dart sass compiled to JavaScript).

2 Likes

And added note:

  • You may watch out for this package when it gets published to NPM: https://github.com/sass/embedded-host-node – I assume they’re going to pack the binary
  • If you commit the generated files in resources/_gen then you can build on Netlify etc. without this binary
3 Likes

The introduction of dart-sass-embedded seem to introduce some problems when using alpine (musl libc) container images as dart currently does not support musl libc.

One way around this could be to compile dart-sass-embedded to JavaScript and run it using node, however the library “dart:cli” required by dart-sass-embedded is supported only on the Dart VM. This is basically a no-go.

This means using dart-sass-embedded in a Hugo project will require using a non-musl image. If Hugo moves to support dart-sass-embedded exclusively, providing images based upon Alpine for the extended edition may not provide enought value compared to simply using Ubuntu/Debian/etc.

Any thoughts? @bep @peaceiris

1 Like

I see. Thanks @klakegg
I hope that Dart supports the alpine image before the libsass will be deprecated.

  • The links you provide is for running the Dart runtime on Docker.
  • I’m not saying I have tested it, but the self contained Dart Sass Embedded binary is certainly not the same; that is analogous to not having to have Go installed ro run Hugo.
  • Have you tested running this in in Alpine?

The self contained dart-sass-embedded distributed by the project contains four files (Linux x64 edition):

  • sass_embedded/dart-sass-embedded - Shell script triggering Dart VM with the prepared code
  • sass_embedded/src/LICENSE - License information
  • sass_embedded/src/dart - Dart VM
  • sass_embedded/src/dart-sass-embedded.snapshot - Prepared code

As the library “dart:cli” is not available when compiling to JavaScript is JavaScript not an option, and it looks to me like those “.snapshot” files are what you get when compiling Dart code. So running Dart software seem to be analogous to having Go installed to run Hugo.

Yes. :slight_smile:

Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /usr/local/lib/sass_embedded/src/dart)
Error relocating /usr/local/lib/sass_embedded/src/dart: __sbrk: symbol not found
Error relocating /usr/local/lib/sass_embedded/src/dart: __isinf: symbol not found

Basically stumbling right into the glib vs. musl libc. :upside_down_face:


I’ve made available “dart-sass-embedded” in those ext images based upon Debian and Ubuntu tagged edge for those wanting to test it. The image names to use are klakegg/hugo:edge-ext-debian: and klakegg/hugo:edge-ext-ubuntu.

1 Like