macOS
エディション
Hugo には標準エディションと拡張エディションという2つのエディションがあります。 拡張エディションでは以下のことができます。
- イメージ処理 の際に WebP フォーマットが利用できます。 WebP イメージのデコードは、いずれのエディションでもできます。
- 埋め込み LibSass トランスパイラー を使って sass から css への変換 ができます。 拡張エディションでは Dart Sass トランスパイラーを用いる必要がありません。
インストールは拡張エディションをお勧めします。
前提条件
常に必要というわけではありませんが、Hugo での作業を進めるにあたっては Git, Go, Dart Sass がよく用いられます。
Git は以下のために必要です。
- Hugo をソースからビルドする。
- Hugo モジュール 機能を利用する。
- Git サブモジュールとしてテーマをインストールする。
- ローカルの Git リポジトリから コミット情報 を取得する。
- CloudCannon, Cloudflare Pages, GitHub Pages, GitLab Pages, Netlify といったサービスを利用して、サイトをホスティングする。
Go は以下のために必要です。
- Hugo をソースからビルドする。
- Hugo モジュール機能を利用する。
Dart Sass は、Sass 言語の最新機能を使って Sass から CSS へのトランスパイル (transpile) を行うために必要です。
インストール手順については、それぞれのドキュメントを参照してください。
ビルド済みバイナリー
数多くのオペレーティングシステムやアーキテクチャー向けに、ビルド済みバイナリーが利用できます。 最新リリース ページから Assets セクションまでスクロールして以下を行ってください。
- 必要とするエディション、オペレーティングシステム、アーキテクチャー用のアーカイブをダウンロードします。
- アーカイブを展開します。
- 実行ファイルを適当なディレクトリに移動させます。
- そのディレクトリを環境変数 PATH に追加します。
- そのファイルに対して実行権限があることを確認します。
ファイルへの権限追加や環境変数 PATH の変更方法について不明なときは、各オペレーティングシステムのドキュメントを参照してください。
必要とするエディション、オペレーティングシステム、アーキテクチャー用のアーカイブが見つからなかった場合は、これ以降に示す方法によって Hugo をインストールしてください。
パッケージマネージャー
Homebrew
Homebrew は macOS および Linux 上のフリーかつオープンソースのパッケージマネージャーです。 Hugo 拡張エディションをインストールするには以下を実行します。
brew install hugo
MacPorts
MacPorts は macOS 上のフリーかつオープンソースのパッケージマネージャーです。 Hugo 拡張エディションをインストールするには以下を実行します。
sudo port install hugo
ソースからのビルド
Hugo の拡張エディションをソースからビルドするには、以下を行う必要があります。
- Git のインストール。
- Go バージョン 1.20 またはそれ以降のインストール。
- C コンパイラーとして GCC または Clang のインストール。
- Go ドキュメント に説明されているような環境変数
PATH
の設定。
インストールディレクトリは、環境変数
GOPATH
とGOBIN
によって制御されます。GOBIN
が設定されている場合、バイナリーはそのディレクトリにインストールされます。GOPATH
が設定されている場合、バイナリはGOPATH
パスリスト内の最初のディレクトリ配下のサブディレクトリ bin にインストールされます。設定されていない場合は、GOPATH
のデフォルトディレクトリ ($HOME/go
または%USERPROFILE%\go
) 配下のサブディレクトリ bin にインストールされます。
そしてビルドとテストを以下のようにして行います。
CGO_ENABLED=1 go install -tags extended github.com/gohugoio/hugo@latest
hugo version
比較対照
ビルド済みバイナリー | パッケージマネージャー | ソースからのビルド | |
---|---|---|---|
インストールしやすいか? | ✔️ | ✔️ | ✔️ |
アップグレードしやすいか? | ✔️ | ✔️ | ✔️ |
ダウングレードしやすいか? | ✔️ | ✔️ 1 | ✔️ |
自動更新するか? | ❌ | ❌ 2 | ❌ |
最新版を入手できるか? | ✔️ | ✔️ | ✔️ |