2016-04-09 07:16:56 -04:00
2013-07-06 19:36:30 -04:00
---
2014-05-29 18:42:05 -04:00
aliases:
- /doc/installing/
2016-01-06 17:45:19 -05:00
lastmod: 2016-01-04
2014-05-29 18:42:05 -04:00
date: 2013-07-01
2014-04-23 03:00:11 -04:00
menu:
main:
2014-05-29 18:42:05 -04:00
parent: getting started
next: /overview/usage
prev: /overview/quickstart
title: Installing Hugo
weight: 20
2013-07-08 17:57:01 -04:00
---
2013-07-06 19:36:30 -04:00
2015-02-21 15:42:15 -05:00
Hugo is written in [Go][] with support for multiple platforms.
2013-07-04 11:32:55 -04:00
2014-08-31 07:08:36 -04:00
The latest release can be found at [Hugo Releases ](https://github.com/spf13/hugo/releases ).
2015-02-21 15:42:15 -05:00
We currently provide pre-built binaries for
< i class = "fa fa-windows" > < / i > Windows,
2015-01-19 03:49:12 -05:00
< i class = "fa fa-linux" > < / i > Linux,
< i class = "fa freebsd-19px" > < / i > FreeBSD
2015-02-22 01:26:34 -05:00
and < i class = "fa fa-apple" > < / i > OS X (Darwin)
for x64, i386 and ARM architectures.
2013-07-04 11:32:55 -04:00
2015-02-22 01:26:34 -05:00
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.
2015-02-21 15:42:15 -05:00
2013-07-24 11:43:23 -04:00
## Installing Hugo (binary)
2013-07-05 00:35:11 -04:00
Installation is very easy. Simply download the appropriate version for your
2014-08-31 07:08:36 -04:00
platform from [Hugo Releases ](https://github.com/spf13/hugo/releases ).
2013-07-24 11:43:23 -04:00
Once downloaded it can be run from anywhere. You don't need to install
2013-07-05 00:35:11 -04:00
it into a global location. This works well for shared hosts and other systems
where you don't have a privileged account.
2013-07-04 11:32:55 -04:00
2015-01-09 13:51:15 -05:00
Ideally, you should install it somewhere in your `PATH` for easy use.
`/usr/local/bin` is the most probable location.
2013-07-04 11:32:55 -04:00
2015-01-27 21:17:09 -05:00
On OS X, if you have [Homebrew ](http://brew.sh/ ), installation is even
2016-01-05 01:36:57 -05:00
easier: just run `brew update && brew install hugo` .
2014-09-22 19:58:30 -04:00
2015-12-24 16:52:52 -05:00
For a more detailed explanation follow the corresponding installation guides:
- [Installation on OS X ]({{< relref "tutorials/installing-on-mac.md" >}} )
- [Installation on Windows ]({{< relref "tutorials/installing-on-windows.md" >}} )
2014-08-31 07:08:36 -04:00
### Installing Pygments (optional)
2014-04-08 11:15:56 -04:00
2014-08-31 07:08:36 -04:00
The Hugo executable has one *optional* external dependency for source code highlighting (Pygments).
2014-04-08 11:15:56 -04:00
2015-01-27 21:17:09 -05:00
If you want to have source code highlighting using the [highlight shortcode ](/extras/highlighting/ ),
you need to install the Python-based Pygments program. The procedure is outlined on the [Pygments home page ](http://pygments.org/ ).
2013-07-04 13:03:16 -04:00
2014-05-27 18:32:57 -04:00
## Upgrading Hugo
2014-08-31 07:08:36 -04:00
Upgrading Hugo is as easy as downloading and replacing the executable you’ ve
2015-01-09 13:51:15 -05:00
placed in your `PATH` .
2014-05-27 18:32:57 -04:00
2017-01-06 12:48:26 -05:00
## Installing from snap
In any of the [Linux distributions that support snaps ](http://snapcraft.io/docs/core/install ):
$ snap install hugo
2014-05-27 18:32:57 -04:00
2013-07-04 13:03:16 -04:00
## Installing from source
2015-02-21 15:42:15 -05:00
### Prerequisite tools for downloading and building source code
2013-07-19 01:27:21 -04:00
2015-02-21 15:42:15 -05:00
* [Git ](http://git-scm.com/ )
2016-04-09 07:16:56 -04:00
* [Go][] 1.5+
2013-07-04 13:03:16 -04:00
2015-01-13 22:48:44 -05:00
### Get directly from GitHub
2013-07-24 11:43:23 -04:00
2015-01-13 22:48:44 -05:00
$ export GOPATH=$HOME/go
2015-01-09 13:51:15 -05:00
$ go get -v github.com/spf13/hugo
2013-07-04 13:03:16 -04:00
2015-01-13 22:48:44 -05:00
`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
2015-01-27 21:17:09 -05:00
`$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
2013-07-24 11:43:23 -04:00
## Contributing
2015-01-27 21:17:09 -05:00
Please see the [contributing guide ](/doc/contributing/ ).
2015-02-21 15:42:15 -05:00
[Go]: http://golang.org/