Hugo is written in Go with support for multiple platforms.
The latest release can be found at Hugo Releases. We currently provide pre-built binaries for Windows, Linux, FreeBSD and OS X (Darwin) for x64, i386 and ARM architectures.
Hugo may also be compiled from source wherever the Go compiler tool chain can run, e.g. for other operating systems including DragonFly BSD, OpenBSD, Plan 9 and Solaris. See http://golang.org/doc/install/source for the full set of supported combinations of target operating systems and compilation architectures.
Installing Hugo (binary)
Installation is very easy. Simply download the appropriate version for your platform from Hugo Releases. Once downloaded it can be run from anywhere. You don’t need to install it into a global location. This works well for shared hosts and other systems where you don’t have a privileged account.
Ideally, you should install it somewhere in your PATH
for easy use.
/usr/local/bin
is the most probable location.
On OS X, if you have Homebrew, installation is even
easier: just run brew update && brew install hugo
.
For a more detailed explanation follow the corresponding installation guides:
Installing Pygments (optional)
The Hugo executable has one optional external dependency for source code highlighting (Pygments).
If you want to have source code highlighting using the highlight shortcode, you need to install the Python-based Pygments program. The procedure is outlined on the Pygments home page.
Upgrading Hugo
Upgrading Hugo is as easy as downloading and replacing the executable you’ve
placed in your PATH
.
Installing from snap
In any of the Linux distributions that support snaps:
$ snap install hugo
Installing from source
Prerequisite tools for downloading and building source code
Get directly from GitHub
$ export GOPATH=$HOME/go
$ go get -v github.com/spf13/hugo
go get
will then fetch Hugo and all its dependent libraries to your
$GOPATH/src
directory, and compile everything into the final hugo
(or hugo.exe
) executable, which you will find sitting in the
$GOPATH/bin/
directory, all ready to go!
You may run go get
with the -u
option to update Hugo’s dependencies:
$ go get -u -v github.com/spf13/hugo
Contributing
Please see the contributing guide.