INSTALLATION

Linux

版本

Hugo 有三種版本:標準版、擴充版和擴充/部署版。雖然標準版提供核心功能,但擴充版和擴充/部署版提供進階功能。

功能 擴展版 (extended edition) 擴展/部署版 (extended/deploy edition)
處理影像 時編碼為 WebP 格式。任何版本都能解碼 WebP 圖片。
使用內建的 LibSass 編譯器將 Sass 編譯為 CSS。任何版本都可以使用 Dart Sass 編譯器。
將網站直接部署到 Google Cloud Storage 存儲桶、AWS S3 存儲桶或 Azure Storage 容器。詳情請參見 細節

除非您的部署需求特別需要擴展/部署版本,我們建議使用擴展版本。

先決條件

雖然在某些情況下不是必需的,但以下工具在使用 Hugo 時經常使用: GitGoDart Sass

Git 常用于:

Go 常用于:

  • 從源代碼構建 Hugo
  • 使用 Hugo 模組功能

當使用 Sass 語言的最新功能時,需要 Dart Sass 將 Sass 轉譯成 CSS。

有關安裝指南,請參閱相關文檔:

  • [Git][git 安裝指南]
  • [Go][Go 安裝指南]
  • [Dart Sass][Dart Sass 安裝指南]

預建二進位檔

預建二進位檔適用於各種作業系統和架構。請訪問 最新版本 頁面,向下滾動到「資產」部分。

  1. 下載所需版本、作業系統和架構的檔案
  2. 解壓縮檔案
  3. 將可執行檔移動到所需目錄
  4. 將此目錄新增到 PATH 環境變數中
  5. 驗證您對該檔案具有「執行」權限

如果您需要設定檔案權限或修改 PATH 環境變數的協助,請參閱您的作業系統文件。

如果您沒有看到所需版本、作業系統和架構的預建二進位檔,請使用以下方法之一安裝 Hugo。

套件管理工具

Snap

Snap 是一款用於 Linux 的免費開源套件管理工具,適用於 大多數發行版。Snap 套件安裝簡單且自動更新。

Hugo 的 Snap 套件是 嚴格限制 的。這類套件完全隔離執行,僅允許最小且安全的存取範圍。您建立和建置的網站必須位於您的 home 目錄內,或可移動媒體上。

要安裝 Hugo 擴展版本:

sudo snap install hugo

若要啟用或撤銷對可移動媒體的存取權限:

sudo snap connect hugo:removable-media
sudo snap disconnect hugo:removable-media

若要啟用或撤銷對 SSH 密鑰的存取權限:

sudo snap connect hugo:ssh-keys
sudo snap disconnect hugo:ssh-keys

Homebrew

[Homebrew] 是 macOS 和 Linux 的免費開源套件管理器。要安裝 Hugo 的擴充版:

brew install hugo

軟體庫套件

大多數 Linux 發行版都維護一個常用應用程式的軟體庫。

Alpine Linux

Alpine Linux 上安裝 Hugo 擴展版本:

doas apk add --no-cache --repository=https://dl-cdn.alpinelinux.org/alpine/edge/community hugo

Arch Linux

Arch Linux 及其衍生版本(如 EndeavourOSGaruda LinuxManjaro)提供 Hugo 擴展版本:

sudo pacman -S hugo

Debian

Debian 及其衍生版本(如 elementary OSKDE neonLinux LiteLinux MintMX LinuxPop!_OSUbuntuZorin OS)提供 Hugo 擴展版本:

sudo apt install hugo

也可以從 [最新發行版本] 頁面下載 Debian 套件。

Exherbo

在 [Exherbo] 系統上安裝 Hugo 擴展版:

  1. /etc/paludis/options.conf 文件中新增以下內容:

    www-apps/hugo extended
    
  2. 使用 Paludis 套件管理器安裝:

    cave resolve -x repository/heirecka
    cave resolve -x hugo
    

Fedora

Fedora 發行版的衍生版本包括 CentOSRed Hat Enterprise Linux 等。要安裝 Hugo 擴展版:

sudo dnf install hugo

Gentoo

Gentoo 發行版的衍生版本包括 Calculate LinuxFuntoo 等。要安裝 Hugo 擴展版:

  1. /etc/portage/package.use/hugo 中指定 extended USE 標誌:

    www-apps/hugo extended
    
  2. 使用 Portage 套件管理器進行編譯安裝:

    sudo emerge www-apps/hugo
    

NixOS

NixOS 的套件庫中包含 Hugo。安裝 Hugo 擴展版的指令如下:

nix-env -iA nixos.hugo

openSUSE

openSUSE 發行版的衍生版本包括 GeckoLinuxLinux Karmada 等。安裝 Hugo 擴展版的指令如下:

sudo zypper install hugo

Solus

Solus 發行版的套件庫中已包含 Hugo。要安裝 Hugo 擴展版,執行以下命令:

sudo eopkg install hugo

Void Linux

Void Linux 系統上安裝 Hugo 擴展版的命令如下:

sudo xbps-install -S hugo

從源代碼建置

要從源代碼建置擴充版或擴充/部署版,您需要:

  1. 安裝 Git
  2. 安裝 Go 1.20 或更高版本
  3. 安裝 C 編譯器,例如 GCC 或 Clang]
  4. 按照 [Go 文件] 中的說明更新您的 PATH 環境變數

安裝目錄由 GOPATHGOBIN 環境變數控制。如果設置了 GOBIN,則二進位檔將安裝到該目錄。如果設置了 GOPATH,則二進位檔將安裝到 GOPATH 列表中第一個目錄的 bin 子目錄中。否則,二進位檔將安裝到默認 GOPATH ($HOME/go%USERPROFILE%\go) 的 bin 子目錄中。

要建置標準版:

go install github.com/gohugoio/hugo@latest

要建置擴充版:

CGO_ENABLED=1 go install -tags extended github.com/gohugoio/hugo@latest

要建置擴充/部署版:

CGO_ENABLED=1 go install -tags extended,withdeploy github.com/gohugoio/hugo@latest

比較

預建二進位檔 套件管理工具 軟體庫套件 從原始碼建置
是否容易安裝?
是否容易升級? 視發行版而定
是否容易降級? 1 視發行版而定
是否支援自動更新? 視情況而定 2
是否提供最新版本? 視發行版而定

  1. 若先前版本仍安裝則較容易降級。 ↩︎

  2. Snap 套件會自動更新;Homebrew 需要進階設定。 ↩︎