Pengklasifikasi | Keterangan |
---|---|
Membangun | |
Kemasan | |
Meta |
Biner untuk generator situs statis Hugo edisi extended
+ withdeploy
, dapat diinstal melalui pip
Proyek ini menyediakan roda untuk Hugo sehingga dapat digunakan dengan pip
di macOS, Linux, dan Windows; untuk Python 3.9 dan yang lebih baru.
Catatan
Hanya versi EOL Python terbaru, stabil, dan yang akan datang yang diuji secara berkala. Jika Anda mengalami masalah apa pun dengan paket pada versi Python tertentu, jangan ragu untuk membuka masalah tersebut.
Hugo adalah generator situs statis yang ditulis dalam Go. Ini dirancang agar cepat dan fleksibel, dan digunakan oleh banyak orang dan organisasi untuk situs web, dokumentasi, dan blog pribadi mereka.
Catatan
Distribusi Hugo
ini saat ini tidak berafiliasi dengan proyek resmi Hugo
. Silakan merujuk ke dokumentasi Hugo untuk informasi lebih lanjut tentang Hugo.
hugo
apa yang saya instal? Proyek ini, hugo
dibuat versinya bersamaan dengan rilis Hugo dan selaras dengan versi Hugo itu sendiri, yang menggunakan SemVer
– namun kemungkinan dibuat berdasarkan standar perangkat lunak 0ver berdasarkan riwayat versinya.
Biner untuk hugo
melalui roda ini tersedia untuk Hugo versi 0.121.2 dan lebih tinggi, melalui PyPI atau melalui rilis di GitHub. Jika Anda memerlukan hugo
versi lama yang tidak tersedia melalui paket ini, harap pertimbangkan untuk menggunakan binari resmi Hugo.
Silakan lihat bagian Platform yang didukung untuk mengetahui daftar roda yang tersedia untuk platform dan arsitektur yang didukung. Jika ya, lompat ke bagian Mulai Cepat untuk memulai.
Peringatan
Karena keterbatasan ukuran keseluruhan yang tersedia di PyPI untuk hugo
, hanya Hugo versi terbaru yang tersedia untuk diunduh melalui pip
, dan versi lama dari roda ini akan dihapus untuk memberi ruang bagi rilis yang lebih baru. Jika Anda memerlukan Hugo versi lama, harap pertimbangkan untuk menggunakan roda yang telah diunggah ke halaman rilis GitHub atau biner resmi Hugo. Yang pertama dapat dilakukan melalui pip
dengan mendownload file .whl
, atau melalui pipx
menggunakan URL secara langsung (disarankan). Misalnya, jika Anda membutuhkan Hugo 0.122.0, Anda dapat menjalankan pipx install "https://github.com/agriyakhetarpal/hugo-python-distributions/releases/download/v0.122.0/hugo-0.122.0-cp311-cp311-win_amd64.whl"
untuk mengunduh dan menginstal roda untuk Hugo 0.122.0 di Windows untuk Python 3.11.
Buat lingkungan virtual dan instal paket (atau instal secara global di sistem Anda):
python -m virtualenv venv # (or your preferred method of creating virtual environments)
pip install hugo
Ini menempatkan instalasi hugo
dengan file yang dapat dieksekusi di lingkungan virtual Anda dan menambahkan titik masuk ke dalamnya di direktori bin
lingkungan virtual Anda. Anda dapat menggunakan hugo
seperti biasa:
hugo version
hugo env --logLevel info
Alternatifnya, Anda dapat menginstal paket secara global di sistem Anda:
python3.X -m pip install hugo # Unix
py -m pip install hugo # Windows
Tip
Merupakan ide bagus untuk menggunakan pipx
untuk menginstal atau menggunakan Hugo di lokasi yang terisolasi tanpa harus membuat lingkungan virtual, yang memungkinkan Anda menjalankan Hugo sebagai alat baris perintah tanpa harus menginstalnya secara global di sistem Anda. yaitu,
pipx install hugo # install and run Hugo through pipx
atau
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
Silakan merujuk ke dokumentasi pipx
untuk informasi lebih lanjut.
Kemudian, Anda dapat menggunakan hugo
seperti biasa:
hugo version
hugo env --logLevel info
Dan
hugo new site mysite
hugo --printI18nWarnings server
# and so on
...
Lingkungan virtual standar memungkinkan beberapa versi Hugo diinstal dan digunakan secara berdampingan. Untuk menggunakan versi Hugo tertentu, Anda dapat menentukan versinya saat menginstal paket (lihat bagian Versi hugo
apa yang saya instal? untuk informasi lebih lanjut):
pip install " hugo==0.X.Y "
Untuk informasi lebih lanjut tentang penggunaan Hugo dan antarmuka baris perintahnya, silakan merujuk ke dokumentasi Hugo dan dokumentasi Hugo CLI.
Sebagian dari platform yang didukung oleh Hugo sendiri didukung oleh roda ini untuk hugo
melalui hugo-python-distributions
. Rencananya adalah untuk mendukung sebanyak mungkin platform dengan roda Python dan tag platform. Silakan lihat tabel berikut untuk daftar platform dan arsitektur yang didukung:
Platform | Arsitektur | Mendukung |
---|---|---|
macOS | x86_64 (Intel) | ✅ macOS 10.13 (Sierra Tinggi) dan lebih baru |
macOS | arm64 (Silikon) | ✅ macOS 11.0 (Big Sur) dan lebih baru |
Linux | amd64 | ✅ glibc 2.24 dan lebih baru |
Linux | lengan64 | ✅ glibc 2.24 dan lebih baru |
Linux | s390x | ✅ glibc 2.17 dan lebih baru |
Linux | ppc64le | ✅ glibc 2.17 dan lebih baru |
jendela | x86_64 | ✅ |
jendela | lengan64 | ✅ Dukungan eksperimental 1 |
jendela | x86 | ✅ Dukungan eksperimental 1 |
DragonFlyBSD | amd64 | Tidak akan menerima dukungan 2 |
FreeBSD | amd64 | Tidak akan menerima dukungan 2 |
OpenBSD | amd64 | Tidak akan menerima dukungan 2 |
NetBSD | amd64 | Tidak akan menerima dukungan 2 |
Solaris | amd64 | Tidak akan menerima dukungan 2 |
Membangun Hugo edisi extended + withdeploy dari sumber memerlukan dependensi berikut:
Pengguna Windows dapat menggunakan manajer paket Chocolatey untuk menggunakan kompiler MinGW. Setelah menginstal Chocolatey, jalankan perintah berikut di terminal prompt yang ditinggikan:
choco install mingw
Kemudian, kloning repositori dan jalankan skrip build:
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
Catatan
Kompilasi silang bersifat eksperimental dan mungkin tidak stabil atau dapat diandalkan untuk semua kasus penggunaan. Jika Anda mengalami masalah apa pun dengan kompilasi silang, jangan ragu untuk membuka masalah tersebut.
Proyek ini mampu mengkompilasi silang binari Hugo untuk berbagai platform dan arsitektur dan dapat digunakan sebagai berikut. Kompilasi silang disediakan untuk platform berikut:
arm64
dan amd64
melalui toolchain Xcode,arm64
, amd64
, s390x
, dan ppc64le
melalui rantai alat Zig, danamd64
, arm64
, dan x86
melalui rantai alat Zig.Silakan merujuk ke contoh di bawah untuk informasi lebih lanjut tentang cara mengkompilasi silang Hugo untuk arsitektur yang berbeda:
Misalnya, pada mesin macOS berbasis Intel (x86_64):
export GOARCH= " arm64 "
pip install . # or pip install -e .
Ini akan membangun distribusi biner macOS arm64
dari Hugo yang dapat digunakan pada mesin macOS berbasis Apple Silicon ( arm64
). Untuk membangun distribusi biner untuk platform macOS target berbasis Intel ( x86_64
) di mesin macOS host berbasis Apple Silicon ( arm64
), Anda dapat menggunakan perintah berikut:
export GOARCH= " amd64 "
pip install . # or pip install -e .
Pertama, instal Zig di mesin Linux Anda, dan atur variabel lingkungan USE_ZIG
, GOOS
, dan GOARCH
sebelum menginstal paket:
Katakanlah, pada mesin Linux amd64
:
export USE_ZIG= " 1 "
export GOOS= " linux "
export GOARCH= " arm64 "
pip install . # or pip install -e .
akan mengkompilasi silang distribusi biner Linux arm64 dari Hugo yang dapat digunakan pada mesin Linux arm64 yang ditargetkan. Untuk membangun distribusi biner untuk platform Linux amd64
target pada mesin Linux host arm64
, tetapkan target secara berbeda:
export USE_ZIG= " 1 "
export GOOS= " linux "
export GOARCH= " amd64 "
pip install . # or pip install -e .
Hal ini menciptakan hubungan dinamis untuk biner Hugo yang dibangun dengan GLIBC yang disediakan sistem. Jika Anda ingin menghubungkan biner secara statis dengan MUSL, ubah variabel lingkungan CC
dan CXX
sebagai berikut:
export CC= " zig cc -target x86_64-linux-musl "
export CXX= " zig c++ -target x86_64-linux-musl "
Kaitannya dengan MUSL belum diuji di CI saat ini, namun secara teori seharusnya bisa diterapkan. Biner resmi Hugo tidak terhubung dengan MUSL karena berbagai alasan termasuk namun tidak terbatas pada ukuran biner dan popularitas perpustakaan standar GLIBC C dan konvensinya.
Pertama, instal Zig di mesin Windows Anda, dan atur variabel lingkungan berikut sebelum menginstal paket:
Katakanlah, pada mesin Windows amd64
:
set USE_ZIG= " 1 "
set GOOS= " windows "
set GOARCH= " arm64 "
pip install . # or pip install -e .
akan mengkompilasi silang distribusi biner Windows arm64
dari Hugo yang dapat digunakan pada mesin Windows arm64
yang ditargetkan (perhatikan penggunaan set
alih-alih export
pada Windows), dan seterusnya untuk arsitektur x86
:
set USE_ZIG= " 1 "
set GOOS= " windows "
set GOARCH= " 386 "
pip install . # or pip install -e .
Untuk daftar distribusi yang didukung untuk Go, silakan jalankan perintah go tool dist list
di sistem Anda. Untuk daftar target yang didukung untuk Zig, silakan merujuk ke dokumentasi Zig untuk informasi lebih lanjut atau jalankan perintah zig targets
di sistem Anda.
Tip
Kompilasi silang untuk platform dan arsitektur target dari platform dan arsitektur host yang berbeda juga dimungkinkan, namun sebagian besar masih belum teruji saat ini. Saat ini, rantai alat kompiler Zig diketahui berfungsi untuk kompilasi lintas platform dan lintas arsitektur.
Biner untuk generator situs statis Hugo tersedia untuk diunduh dari halaman rilis Hugo. Biner ini harus diunduh dan ditempatkan di lokasi yang sesuai pada sistem secara manual dan variabel lingkungan PATH harus diperbarui untuk menyertakan lokasi tersebut.
Proyek ini menyediakan roda bagi Hugo untuk digunakan dengan pip
di macOS, Linux, dan Windows. Hal ini memungkinkan Hugo untuk diinstal dan digunakan dalam lingkungan virtual, yang memungkinkan beberapa versi Hugo untuk diinstal dan digunakan secara berdampingan di lingkungan virtual yang berbeda, di mana Hugo dapat digunakan sebagai alat baris perintah (API Python adalah tidak disediakan pada saat ini mengingat kurangnya permintaan akan hal tersebut).
Proyek ini dirancang untuk digunakan dalam skenario berikut:
pip install --upgrade hugo
, dan pembaruan otomatis juga dapat dilakukan jika Anda menggunakan manajer paket seperti Puisi atau PDM untuk mengelola dependensi Python Anda atau alat seperti pipx untuk mengelola alat baris perintah AndaProyek ini dilisensikan berdasarkan ketentuan lisensi Apache 2.0. Hugo juga tersedia di bawah Apache 2.0 (lihat lisensi Hugo).
Silakan lihat kebijakan Keamanan untuk proyek ini untuk informasi lebih lanjut.
Repositori ini bertujuan untuk mengikuti proyek Hugo dalam upaya menyediakan lingkungan yang ramah dan inklusif bagi semua kontributor, terlepas dari latar belakang dan identitas mereka. Silakan merujuk ke Kode Etik untuk informasi lebih lanjut yang berlaku untuk semua interaksi dalam repositori ini dan ruang terkaitnya. Hal ini bergantung pada Perjanjian Kontributor sebagai pedomannya dan sesuai dengan versi 2.1.
Untuk meminta bantuan, melaporkan bug, atau meminta fitur khusus untuk fungsi Hugo, silakan merujuk ke forum Hugo Discourse. Untuk meminta bantuan untuk hugo-python-distributions
, silakan membuka masalah di repositori ini.
Hugo
di PyPI (@nariman) atas kebaikannya dalam memberikan akses untuk mengambil alih nama paket dengan ketentuan yang mendasari PEP 541 Dengan cara ini, pengguna dapat menginstal paket menggunakan nama yang sama dengan proyek resmi Hugo, yang tentunya memberikan pengalaman pengguna dan kenyamanan yang lebih baik bagi pengguna paket ini jika dibandingkan dengan nama paket sebelumnya, python-hugo
. Dukungan untuk arsitektur 32-bit (i686) dan arm64 di Windows dimungkinkan melalui penggunaan rantai alat kompiler Zig yang menggunakan ekosistem LLVM. Roda ini bersifat eksperimental karena penggunaan kompilasi silang dan mungkin tidak stabil atau dapat diandalkan untuk semua kasus penggunaan, dan saat ini tidak didukung secara resmi oleh proyek Hugo. Oleh karena itu, meskipun dipublikasikan ke PyPI untuk ketersediaan umum, namun dianggap eksperimental. Silakan merujuk ke bagian Membangun dari sumber untuk informasi lebih lanjut tentang cara membangun Hugo untuk platform dan arsitektur ini secara lokal. Jika Anda memerlukan dukungan resmi untuk platform ini atau menghadapi bug apa pun, harap pertimbangkan untuk menghubungi penulis Hugo melalui [https://github.com/gohugoio/hugo/issues/new](membuka terbitan). ↩ ↩ 2
Dukungan untuk platform ini tidak dapat disertakan karena i. kurangnya sumber daya untuk menguji dan membangunnya dan ii. kurangnya dukungan untuk spesifikasi platform ini dalam standar dan peralatan pengemasan Python. Jika Anda memerlukan dukungan untuk platform ini, harap pertimbangkan untuk mengunduh binari resmi Hugo untuk edisi non-perpanjangannya. ↩ ↩ 2 ↩ 3 ↩ 4 ↩ 5