分類子 | 説明 |
---|---|
ビルド | |
パッケージ | |
メタ |
Hugo 静的サイト ジェネレーターのextended
+ withdeploy
エディションのバイナリpip
経由でインストール可能)
このプロジェクトは、macOS、Linux、および Windows 上のpip
で使用できるように、Hugo 用のホイールを提供します。 Python 3.9 以降の場合。
注記
最新の安定した EOL 予定の Python バージョンのみが定期的にテストされます。特定の Python バージョンのパッケージで問題が発生した場合は、お気軽に問題を報告してください。
Hugo は Go で書かれた静的サイト ジェネレーターです。高速かつ柔軟になるように設計されており、多くの人々や組織が Web サイト、ドキュメント、個人のブログに使用しています。
注記
このHugo
のディストリビューションは現在、公式のHugo
プロジェクトと提携していません。 Hugo の詳細については、Hugo のドキュメントを参照してください。
hugo
のどのバージョンをインストールすればよいですか?このプロジェクト、 hugo
Hugo リリースと並行してバージョン管理され、 SemVer
使用する Hugo 自体のバージョン管理と一致していますが、バージョン管理履歴に基づくと、0ver ソフトウェア標準に従ってバージョン管理されている可能性があります。
これらのホイールを介したhugo
のバイナリは、Hugo バージョン0.121.2以降で、PyPI または GitHub のリリースを通じて利用できます。このパッケージでは入手できない古いバージョンのhugo
必要な場合は、公式 Hugo バイナリの使用を検討してください。
サポートされているプラットフォームとアーキテクチャで利用可能なホイールのリストについては、「サポートされているプラットフォーム」のセクションを参照してください。その場合は、「クイックスタート」セクションに移動して開始してください。
警告
hugo
の PyPI で利用できる全体的なサイズ設定の制限により、 pip
を通じてダウンロードできるのは Hugo の最新バージョンのみです。これらのホイールの古いバージョンは、新しいリリースのためのスペースを確保するために削除されます。 Hugo の古いバージョンが必要な場合は、GitHub リリース ページにアップロードされているホイールまたは公式 Hugo バイナリの使用を検討してください。前者は、 .whl
ファイルをダウンロードしてpip
経由で実行するか、URL を直接使用してpipx
経由で実行できます (推奨)。たとえば、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"
を実行できます。 pipx install "https://github.com/agriyakhetarpal/hugo-python-distributions/releases/download/v0.122.0/hugo-0.122.0-cp311-cp311-win_amd64.whl"
使用して、Hugo 0.122.0 のホイールをダウンロードしてインストールします。 Windows では Python 3.11 を使用します。
仮想環境を作成し、パッケージをインストールします (またはシステムにグローバルにインストールします)。
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 をシステムにグローバルにインストールすることなくコマンドライン ツールとして実行できるようになります。つまり、
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-python-distributions
を介してhugo
用のこれらのホイールによってサポートされます。計画では、Python ホイールとプラットフォーム タグを使用して、できるだけ多くのプラットフォームをサポートする予定です。サポートされているプラットフォームとアーキテクチャのリストについては、次の表を参照してください。
プラットフォーム | 建築 | サポート |
---|---|---|
macOS | x86_64 (インテル) | ✅ macOS 10.13 (High Sierra) 以降 |
macOS | arm64(シリコン) | ✅ macOS 11.0 (Big Sur) 以降 |
Linux | amd64 | ✅ glibc 2.24 以降 |
Linux | 腕64 | ✅ glibc 2.24 以降 |
Linux | s390x | ✅ glibc 2.17 以降 |
Linux | ppc64le | ✅ glibc 2.17 以降 |
窓 | x86_64 | ✅ |
窓 | 腕64 | ✅ 実験サポート1 |
窓 | x86 | ✅ 実験サポート1 |
ドラゴンフライBSD | amd64 | サポートが受けられない2 |
FreeBSD | amd64 | サポートが受けられない2 |
OpenBSD | amd64 | サポートを受けられない2 |
NetBSD | amd64 | サポートが受けられない2 |
ソラリス | amd64 | サポートが受けられない2 |
Hugo の拡張 + withdeploy エディションをソースからビルドするには、次の依存関係が必要です。
Windows ユーザーは、MinGW コンパイラを使用するために Chocolatey パッケージ マネージャーを使用できます。 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 .
これにより、Apple Silicon ベース ( arm64
) macOS マシンで使用できる Hugo の macOS arm64
バイナリ ディストリビューションが構築されます。ホストの 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 .
は、ターゲットの arm64 Linux マシンで使用できる Hugo の Linux arm64 バイナリ ディストリビューションをクロスコンパイルします。ホスト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 "
現時点では MUSL に対するリンクは CI でテストされていませんが、理論上は機能するはずです。公式 Hugo バイナリは、バイナリのサイズ、GLIBC C 標準ライブラリとその規約の人気など (ただしこれらに限定されない) さまざまな理由により、MUSL に対してリンクしていません。
まず、Windows マシンに Zig をインストールし、パッケージをインストールする前に次の環境変数を設定します。
たとえば、 amd64
Windows マシンでは次のようになります。
set USE_ZIG= " 1 "
set GOOS= " windows "
set GOARCH= " arm64 "
pip install . # or pip install -e .
これは、ターゲットのarm64
Windows マシンで使用できる Hugo の Windows arm64
バイナリ ディストリビューションをクロスコンパイルします (Windows では、 export
の代わりにset
を使用することに注意してください) 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 環境変数を更新する必要があります。
このプロジェクトは、macOS、Linux、および Windows 上のpip
で使用される Hugo 用のホイールを提供します。これにより、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) に感謝の意を表したいと思います。このようにすると、ユーザーは公式の Hugo プロジェクトと同じ名前を使用してパッケージをインストールできるようになり、以前のパッケージ名と比較して、このパッケージのユーザー エクスペリエンスと利便性が間違いなく向上します。 python-hugo
。 Windows での 32 ビット (i686) および arm64 アーキテクチャのサポートは、LLVM エコシステムを使用する Zig コンパイラ ツールチェーンの使用によって可能になります。これらのホイールはクロスコンパイルを使用しているため実験的なものであり、すべてのユースケースで安定または信頼できるわけではない可能性があり、現時点では Hugo プロジェクトによって正式にサポートされていません。したがって、これらは一般提供のために PyPI に公開されていますが、実験的なものとみなされます。これらのプラットフォームおよびアーキテクチャ用の Hugo をローカルでビルドする方法の詳細については、「ソースからのビルド」セクションを参照してください。これらのプラットフォームの公式サポートが必要な場合、またはバグに直面した場合は、[https://github.com/gohugoio/hugo/issues/new](問題を開く) によって Hugo 作者に連絡することを検討してください。 ↩ ↩ 2
これらのプラットフォームのサポートを含めることはできません。テストと構築を行うためのリソースが不足していること、および ii. Python のパッケージ化標準およびツールでは、これらのプラットフォーム仕様がサポートされていないためです。これらのプラットフォームのサポートが必要な場合は、拡張されていないエディションの公式 Hugo バイナリをダウンロードすることを検討してください。 ↩ ↩ 2 ↩ 3 ↩ 4 ↩ 5