Hugo has fairly frequent releases. It’s one of the many things I like about it. Once in awhile though you may want to test out the in-development version of Hugo. Maybe there’s a new feature or bug fix that’s merged that you just can’t wait to use, or maybe there’s a larger change coming that the development team needs help testing. Maybe you just like living wildly. Regardless of your reason, here’s three ways to run the development version of Hugo.
This is specifically showing you how to use unreleased, probably buggy software. Keep that in mind.
If you’re already using the Hugo snap (which if you’re using Linux, is an easy & quick install) then trying out the development build of Hugo is very simple. Simply tell SnapD to switch to the edge channel.
sudo snap refresh hugo --channel=extended/edge
Switching back is just as simple:
sudo snap refresh hugo --channel=extended/stable
I maintain a Docker image for Hugo that is designed to run well for CI environments like CircleCI but can be used in other places as well.
To use Hugo v0.54.0 for example, you’d use the Docker image tag of
As of yesterday I added a new tag that will always contain a development version of Hugo that’s built at least once every 24 hours.
You can use it by using the Docker image tag
Lastly, you can always compile Hugo’s
master branch yourself to get a development build.
For this to work, you need to have a recent version of Go installed and the Go bin directory added to your PATH.
Instructions on this can be found here.
Git will also need to be installed.
Hugo uses Mage as its local build tool. This will need to be installed first.
git clone https://github.com/magefile/mage cd mage go run bootstrap.go
git clone https://github.com/gohugoio/hugo.git cd hugo HUGO_BUILD_TAGS=extended mage install
This will install a development version of Hugo Extended (CGO support).
You can install Hugo non-extended by just running
mage install instead.
To switch back to the normal version of Hugo you had installed, you’ll need to delete the new binary you created.
It’ll be located in the
bin directory of your
If you’re unsure, you can run
which hugo and that will show you where the binary is located.
sudo rm to delete it.
For example for me, this is what I would need to run:
sudo rm /home/felicianotech/go/bin/hugo
I didn’t need to use
sudo here but depending on where your binary is installed you might.
Now that you know how to do this, guess what? Bep, the lead maintainer of Hugo, is calling for people to help test the upcoming v0.55 release. Help test and view his post here.