分類器 | 描述 |
---|---|
建構 | |
包裹 | |
元 |
Hugo 靜態網站產生器的extended
+ withdeploy
版本的二進位文件,可透過pip
安裝
該專案為 Hugo 提供了輪子,以便它可以在 macOS、Linux 和 Windows 上與pip
一起使用;適用於 Python 3.9 及更高版本。
筆記
僅定期測試最新的、穩定的和即將 EOL 的 Python 版本。如果您在特定 Python 版本上遇到該套件的任何問題,請隨時提出問題。
Hugo 是一個用 Go 寫的靜態網站產生器。它被設計為快速且靈活,並且被許多人和組織用於他們的網站、文件和個人部落格。
筆記
Hugo
的這個發行版目前不隸屬於官方Hugo
計畫。有關 Hugo 的更多信息,請參閱 Hugo 文檔。
hugo
?這個項目, hugo
與 Hugo 版本一起進行版本控制,並與 Hugo 本身的版本控制保持一致,後者使用SemVer
- 但可能根據基於其版本控制歷史的 0ver 軟體標準進行版本控制。
Hugo 版本0.121.2及更高版本可透過 PyPI 或透過 GitHub 上的版本取得透過這些輪子實現的hugo
位。如果您需要無法透過此軟體包取得的較舊版本的hugo
,請考慮使用官方Hugo 二進位。
請參閱支援的平台部分,以了解適用於支援的平台和架構的輪子清單。如果是這樣,請跳至快速入門部分開始。
警告
由於hugo
的 PyPI 上的總體大小限制,只有最新版本的 Hugo 可以透過pip
下載,並且這些輪子的舊版本將被刪除,以便為新版本騰出空間。如果您需要舊版本的 Hugo,請考慮使用已上傳至 GitHub 發布頁面或官方 Hugo 二進位檔案的輪子。前者可以透過pip
下載.whl
檔案來完成,也可以透過pipx
直接使用 URL 來完成(建議)。例如,如果您需要 Hugo 0.122.0,則可以執行pipx install "https://github.com/agriyakhetarpal/hugo-python-distributions/releases/download/v0.122.0/hugo-0.122.0-cp311-cp311-win_amd64.whl"
在 Windows 上下載並安裝適用於 Python 3.11 的 Hugo 0.122.0 的輪子。
建立虛擬環境並安裝軟體包(或在系統上全域安裝):
python -m virtualenv venv # (or your preferred method of creating virtual environments)
pip install hugo
這將在虛擬環境中放置一個帶有可執行檔hugo
安裝,並在虛擬環境的bin
目錄中新增一個入口點。您可以像平常一樣使用hugo
指令:
hugo version
hugo env --logLevel info
或者,您可以在系統上全域安裝該軟體包:
python3.X -m pip install hugo # Unix
py -m pip install hugo # Windows
提示
使用pipx
在隔離位置安裝或使用 Hugo 是一個好主意,而無需建立虛擬環境,這將允許您將 Hugo 作為命令列工具運行,而無需在系統上全域安裝它。 IE,
pipx install hugo # install and run Hugo through pipx
或者
pipx run hugo==0.121.2 # run a specific version of Hugo through pipx, even if a different version is installed in whatever environment you are in
請參閱pipx
文件以獲取更多資訊。
然後,您可以像平常一樣使用hugo
指令:
hugo version
hugo env --logLevel info
和
hugo new site mysite
hugo --printI18nWarnings server
# and so on
...
標準虛擬環境可以允許並行安裝和使用多個版本的 Hugo。若要使用特定版本的 Hugo,您可以在安裝套件時指定版本(請參閱我要安裝什麼版本的hugo
?以取得更多資訊):
pip install " hugo==0.X.Y "
有關使用 Hugo 及其命令列介面的更多信息,請參閱 Hugo 文件和 Hugo CLI 文件。
Hugo 本身支援的平台子集由這些hugo
輪子透過hugo-python-distributions
支援。該計劃是透過 Python 輪子和平台標籤支援盡可能多的平台。請參閱下表以了解支援的平台和架構清單:
平台 | 建築學 | 支援 |
---|---|---|
macOS | x86_64(英特爾) | ✅ macOS 10.13 (High Sierra) 及更高版本 |
macOS | arm64(矽) | ✅ macOS 11.0 (Big Sur) 及更高版本 |
Linux | AMD64 | ✅ glibc 2.24 及更高版本 |
Linux | ARM64 | ✅ glibc 2.24 及更高版本 |
Linux | s390x | ✅ glibc 2.17 及更高版本 |
Linux | ppc64le | ✅ glibc 2.17 及更高版本 |
視窗 | x86_64 | ✅ |
視窗 | ARM64 | ✅ 實驗支持1 |
視窗 | x86 | ✅ 實驗支持1 |
蜻蜓BSD | AMD64 | 不會獲得支援2 |
自由BSD | AMD64 | 不會獲得支援2 |
開放BSD | AMD64 | 不會獲得支援2 |
網路BSD | AMD64 | 不會獲得支援2 |
索拉里斯 | AMD64 | 不會獲得支援2 |
從原始碼建置 Hugo 的擴充 + withdeploy 版本需要以下相依性:
Windows 使用者可以使用 Chocolatey 套件管理器來使用 MinGW 編譯器。安裝 Chocolatey 後,在提升的終端機提示字元下執行以下命令:
choco install mingw
然後,克隆存儲庫並運行建置腳本:
git clone https://github.com/agriyakhetarpal/hugo-python-distributions@main
python -m venv venv
source venv/bin/activate # on Unix-based systems
venv S cripts a ctivate.bat # on Windows
pip install -e . # editable installation
pip install . # regular installation
筆記
交叉編譯是實驗性的,可能不適用於所有用例。如果您遇到交叉編譯的任何問題,請隨時提出問題。
該專案能夠為各種平台和架構交叉編譯 Hugo 二進位文件,並且可以如下使用。為以下平台提供交叉編譯:
arm64
和amd64
架構,透過Xcode工具鏈,arm64
、 amd64
、 s390x
和ppc64le
架構,以及amd64
、 arm64
和x86
架構。有關如何針對不同架構交叉編譯 Hugo 的更多信息,請參閱以下範例:
假設在基於 Intel 的 (x86_64) macOS 計算機上:
export GOARCH= " arm64 "
pip install . # or pip install -e .
這將建構 Hugo 的 macOS arm64
二進位發行版,可在基於 Apple Silicon ( arm64
) 的 macOS 機器上使用。若要在基於 Apple Silicon ( arm64
) 的主機macOS 電腦上為基於 Intel ( x86_64
) 的目標macOS 平台建立二進位發行版,您可以使用下列命令:
export GOARCH= " amd64 "
pip install . # or pip install -e .
首先,在 Linux 電腦上安裝 Zig,並在安裝套件之前設定USE_ZIG
、 GOOS
和GOARCH
環境變數:
比如說,在amd64
Linux 機器上:
export USE_ZIG= " 1 "
export GOOS= " linux "
export GOARCH= " arm64 "
pip install . # or pip install -e .
將交叉編譯 Hugo 的 Linux arm64 二進位發行版,可在目標 arm64 Linux 機器上使用。若要在arm64
Linux主機上為目標amd64
Linux平台建置二進位發行版,請以不同的方式設定目標:
export USE_ZIG= " 1 "
export GOOS= " linux "
export GOARCH= " amd64 "
pip install . # or pip install -e .
這會為建置的 Hugo 二進位檔案與系統提供的 GLIBC 建立動態連結。如果您希望將二進位與 MUSL 靜態鏈接,請按如下所示更改CC
和CXX
環境變數:
export CC= " zig cc -target x86_64-linux-musl "
export CXX= " zig c++ -target x86_64-linux-musl "
目前尚未在 CI 中測試針對 MUSL 的鏈接,但理論上它應該有效。由於多種原因,官方 Hugo 二進位檔案不連結到 MUSL,包括但不限於二進位檔案的大小以及 GLIBC C 標準庫及其約定的流行度。
首先,在 Windows 電腦上安裝 Zig,並在安裝軟體包之前設定這些環境變數:
比如說,在amd64
Windows 機器上:
set USE_ZIG= " 1 "
set GOOS= " windows "
set GOARCH= " arm64 "
pip install . # or pip install -e .
將交叉編譯 Hugo 的 Windows arm64
二進位發行版,該發行版可在目標arm64
Windows 機器上使用(注意在 Windows 上使用set
而不是export
),對於x86
架構依此類推:
set USE_ZIG= " 1 "
set GOOS= " windows "
set GOARCH= " 386 "
pip install . # or pip install -e .
有關 Go 支援的發行版的列表,請在您的系統上執行go tool dist list
命令。有關 Zig 支援的目標列表,請參閱 Zig 文件以獲取更多資訊或在您的系統上執行zig targets
命令。
提示
來自不同主機平台和架構的目標平台和架構的交叉編譯也是可能的,但目前在很大程度上尚未經過測試。目前,Zig 編譯器工具鏈可用於跨平台、跨架構編譯。
Hugo 靜態網站產生器的二進位檔案可從 Hugo 發佈頁面下載。必須手動下載這些二進位檔案並將其放置在系統上的適當位置,並且必須更新 PATH 環境變數以包含所述位置。
該專案為 Hugo 提供了輪子,可在 macOS、Linux 和 Windows 上與pip
一起使用。這使得Hugo可以在虛擬環境中安裝和使用,這使得Hugo的多個版本可以在不同的虛擬環境中並行安裝和使用,其中Hugo可以用作命令列工具(Python API是鑑於缺乏這樣的需求,目前未提供)。
此專案設計用於以下場景:
pip install --upgrade hugo
命令輕鬆更新到最新版本的 Hugo,如果您使用 Poetry 或 PDM 等套件管理器來管理 Python 依賴項或使用 pipx 等工具來管理,也可以自動更新您的命令列工具此專案根據 Apache 2.0 授權條款獲得許可。 Hugo 也可在 Apache 2.0 下使用(請參閱 Hugo 許可證)。
請參閱該項目的安全政策以獲取更多資訊。
該存儲庫旨在遵循 Hugo 項目,努力為所有貢獻者提供一個歡迎和包容的環境,無論他們的背景和身份如何。請參閱行為準則,以了解適用於該儲存庫及其相關空間中所有互動的更多資訊。它的指導方針依賴貢獻者契約並符合 2.1 版。
如需請求協助、報告錯誤或要求特定於 Hugo 功能的功能,請參閱 Hugo Discourse 論壇。如需要求hugo-python-distributions
協助,請隨時在此儲存庫中提出問題。
Hugo
包的所有者 (@nariman) 表示感謝,感謝他們根據 PEP 541 的基本規定授予訪問權限以接管包名稱這樣,它允許用戶使用與官方Hugo 專案相同的名稱來安裝該包,這無疑為該包的用戶提供了比之前的包名稱python-hugo
更好的用戶體驗和便利。 透過使用使用 LLVM 生態系統的 Zig 編譯器工具鏈,可以在 Windows 上支援 32 位元 (i686) 和 arm64 架構。由於使用交叉編譯,這些輪子是實驗性的,可能不適用於所有用例,目前尚未得到 Hugo 專案的正式支援。因此,雖然這些已發佈到 PyPI 以供普遍使用,但它們被認為是實驗性的。請參閱從原始碼建置部分,以了解有關如何在本地為這些平台和架構建立 Hugo 的更多資訊。如果您需要這些平台的官方支援或遇到任何錯誤,請考慮透過 [https://github.com/gohugoio/hugo/issues/new](開啟問題)聯絡 Hugo 作者。 ↩ ↩ 2
由於 i,不可能包括對這些平台的支援。缺乏為他們測試和建構的資源; ii. Python 打包標準和工具缺乏對這些平台規範的支援。如果您需要這些平台的支持,請考慮下載其非擴展版本的官方 Hugo 二進位。 ↩ ↩ 2 ↩ 3 ↩ 4 ↩ 5