Clasificadores | Descripción |
---|---|
construye | |
Paquete | |
Meta |
Binarios para la edición extended
+ withdeploy
del generador de sitios estáticos Hugo, instalables mediante pip
Este proyecto proporciona ruedas para Hugo para que pueda usarse con pip
en macOS, Linux y Windows; para Python 3.9 y posteriores.
Nota
Sólo se prueban periódicamente las versiones más recientes, estables y futuras de EOL Python. Si encuentra algún problema con el paquete en una versión específica de Python, no dude en abrir un problema.
Hugo es un generador de sitios estáticos escrito en Go. Está diseñado para ser rápido y flexible, y muchas personas y organizaciones lo utilizan para sus sitios web, documentación y blogs personales.
Nota
Esta distribución de Hugo
actualmente no está afiliada al proyecto oficial Hugo
. Consulte la documentación de Hugo para obtener más información sobre Hugo.
hugo
instalo? Este proyecto, hugo
tiene versiones junto con las versiones de Hugo y está alineado con el control de versiones del propio Hugo, que utiliza SemVer
, pero probablemente esté versionado de acuerdo con otros estándares de software según su historial de versiones.
Los binarios para hugo
a través de estas ruedas están disponibles para las versiones de Hugo 0.121.2 y superiores, a través de PyPI o mediante versiones en GitHub. Si necesita una versión anterior de hugo
que no está disponible a través de este paquete, considere usar los binarios oficiales de Hugo.
Consulte la sección sobre Plataformas compatibles para obtener una lista de ruedas disponibles para plataformas y arquitecturas compatibles. Si es así, vaya a la sección Inicio rápido para comenzar.
Advertencia
Debido a las limitaciones del tamaño general disponible en PyPI para hugo
, solo las versiones más recientes de Hugo están disponibles para descargar a través de pip
, y las versiones anteriores de estas ruedas se eliminarán para dejar espacio para versiones más recientes. Si necesita una versión anterior de Hugo, considere usar las ruedas que se han subido a la página de lanzamientos de GitHub o los binarios oficiales de Hugo. Lo primero se puede hacer mediante pip
descargando el archivo .whl
, o mediante pipx
usando la URL directamente (recomendado). Por ejemplo, si necesita Hugo 0.122.0, puede ejecutar pipx install "https://github.com/agriyakhetarpal/hugo-python-distributions/releases/download/v0.122.0/hugo-0.122.0-cp311-cp311-win_amd64.whl"
para descargar e instalar la rueda de Hugo 0.122.0 en Windows para Python 3.11.
Cree un entorno virtual e instale el paquete (o instálelo globalmente en su sistema):
python -m virtualenv venv # (or your preferred method of creating virtual environments)
pip install hugo
Esto coloca una instalación hugo
con un ejecutable en su entorno virtual y le agrega un punto de entrada en el directorio bin
de su entorno virtual. Puedes usar el comando hugo
como lo harías normalmente:
hugo version
hugo env --logLevel info
Alternativamente, puede instalar el paquete globalmente en su sistema:
python3.X -m pip install hugo # Unix
py -m pip install hugo # Windows
Consejo
Es una gran idea usar pipx
para instalar o usar Hugo en una ubicación aislada sin tener que crear un entorno virtual, lo que le permitirá ejecutar Hugo como una herramienta de línea de comandos sin tener que instalarlo globalmente en su sistema. es decir,
pipx install hugo # install and run Hugo through pipx
o
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
Consulte la documentación pipx
para obtener más información.
Luego, puedes usar los comandos hugo
como lo harías normalmente:
hugo version
hugo env --logLevel info
y
hugo new site mysite
hugo --printI18nWarnings server
# and so on
...
Los entornos virtuales estándar pueden permitir la instalación y el uso de varias versiones de Hugo en paralelo. Para utilizar una versión específica de Hugo, puede especificar la versión al instalar el paquete (consulte la sección ¿Qué versión de hugo
debo instalar? para obtener más información):
pip install " hugo==0.X.Y "
Para obtener más información sobre el uso de Hugo y su interfaz de línea de comandos, consulte la documentación de Hugo y la documentación de la CLI de Hugo.
Un subconjunto de las plataformas respaldadas por el propio Hugo están respaldadas por estas ruedas para hugo
a través de hugo-python-distributions
. El plan es admitir tantas plataformas como sea posible con ruedas y etiquetas de plataforma de Python. Consulte la siguiente tabla para obtener una lista de plataformas y arquitecturas compatibles:
Plataforma | Arquitectura | Apoyo |
---|---|---|
macos | x86_64 (Intel) | ✅ macOS 10.13 (High Sierra) y posteriores |
macos | arm64 (silicio) | ✅ macOS 11.0 (Big Sur) y posteriores |
linux | amd64 | ✅ glibc 2.24 y posteriores |
linux | brazo64 | ✅ glibc 2.24 y posteriores |
linux | s390x | ✅ glibc 2.17 y posteriores |
linux | ppc64le | ✅ glibc 2.17 y posteriores |
ventanas | x86_64 | ✅ |
ventanas | brazo64 | ✅ Soporte experimental 1 |
ventanas | x86 | ✅ Soporte experimental 1 |
DragonFlyBSD | amd64 | No recibirá soporte 2 |
FreeBSD | amd64 | No recibirá soporte 2 |
OpenBSD | amd64 | No recibirá soporte 2 |
NetBSD | amd64 | No recibirá soporte 2 |
Solaris | amd64 | No recibirá soporte 2 |
La creación de la edición extendida + con implementación de Hugo desde el código fuente requiere las siguientes dependencias:
Los usuarios de Windows pueden utilizar el administrador de paquetes Chocolatey para utilizar el compilador MinGW. Después de instalar Chocolatey, ejecute el siguiente comando en un indicador de terminal elevado:
choco install mingw
Luego, clona el repositorio y ejecuta el script de compilación:
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
Nota
La compilación cruzada es experimental y puede no ser estable o confiable para todos los casos de uso. Si encuentra algún problema con la compilación cruzada, no dude en abrir un problema.
Este proyecto es capaz de realizar una compilación cruzada de binarios de Hugo para varias plataformas y arquitecturas y se puede utilizar de la siguiente manera. Se proporciona compilación cruzada para las siguientes plataformas:
arm64
y amd64
a través de la cadena de herramientas Xcode,arm64
, amd64
, s390x
y ppc64le
a través de la cadena de herramientas Zig, yamd64
, arm64
y x86
a través de la cadena de herramientas Zig.Consulte los ejemplos siguientes para obtener más información sobre cómo realizar una compilación cruzada de Hugo para diferentes arquitecturas:
Digamos, en una máquina macOS basada en Intel (x86_64):
export GOARCH= " arm64 "
pip install . # or pip install -e .
Esto creará una distribución binaria macOS arm64
de Hugo que se puede usar en máquinas macOS basadas en Apple Silicon ( arm64
). Para crear una distribución binaria para la plataforma macOS basada en Intel ( x86_64
) de destino en la máquina macOS host basada en Apple Silicon ( arm64
), puede utilizar el siguiente comando:
export GOARCH= " amd64 "
pip install . # or pip install -e .
Primero, instale Zig en su máquina Linux y configure las variables de entorno USE_ZIG
, GOOS
y GOARCH
antes de instalar el paquete:
Digamos, en una máquina Linux amd64
:
export USE_ZIG= " 1 "
export GOOS= " linux "
export GOARCH= " arm64 "
pip install . # or pip install -e .
compilará de forma cruzada una distribución binaria Linux arm64 de Hugo que se puede utilizar en las máquinas Linux arm64 de destino. Para crear una distribución binaria para la plataforma amd64
Linux de destino en la máquina host arm64
Linux, configure los destinos de manera diferente:
export USE_ZIG= " 1 "
export GOOS= " linux "
export GOARCH= " amd64 "
pip install . # or pip install -e .
Esto crea un vínculo dinámico para el binario Hugo creado con un GLIBC proporcionado por el sistema. Si desea vincular estáticamente el binario con MUSL, cambie las variables de entorno CC
y CXX
de la siguiente manera:
export CC= " zig cc -target x86_64-linux-musl "
export CXX= " zig c++ -target x86_64-linux-musl "
La vinculación con MUSL no se ha probado en CI en este momento, pero debería funcionar en teoría. Los binarios oficiales de Hugo no se vinculan con MUSL por una variedad de razones que incluyen, entre otras, el tamaño del binario y la popularidad de la biblioteca estándar GLIBC C y sus convenciones.
Primero, instale Zig en su máquina Windows y configure estas variables de entorno antes de instalar el paquete:
Digamos, en una máquina con Windows amd64
:
set USE_ZIG= " 1 "
set GOOS= " windows "
set GOARCH= " arm64 "
pip install . # or pip install -e .
compilará de forma cruzada una distribución binaria Windows arm64
de Hugo que se puede usar en las máquinas Windows arm64
de destino (tenga en cuenta el uso de set
en lugar de export
en Windows), y así sucesivamente para la arquitectura x86
:
set USE_ZIG= " 1 "
set GOOS= " windows "
set GOARCH= " 386 "
pip install . # or pip install -e .
Para obtener una lista de distribuciones compatibles con Go, ejecute el comando go tool dist list
en su sistema. Para obtener una lista de objetivos compatibles con Zig, consulte la documentación de Zig para obtener más información o ejecute el comando zig targets
en su sistema.
Consejo
También es posible la compilación cruzada para una plataforma y arquitectura de destino desde una plataforma y arquitectura de host diferentes, pero aún no se ha probado en gran medida en este momento. Actualmente, se sabe que la cadena de herramientas del compilador Zig funciona para la compilación multiplataforma y multiarquitectura.
Los binarios para el generador de sitios estáticos de Hugo están disponibles para descargar desde la página de lanzamientos de Hugo. Estos binarios deben descargarse y colocarse manualmente en una ubicación adecuada del sistema y la variable de entorno PATH debe actualizarse para incluir dicha ubicación.
Este proyecto proporciona ruedas para que Hugo se use con pip
en macOS, Linux y Windows. Esto permite instalar y utilizar Hugo en un entorno virtual, lo que permite instalar y utilizar múltiples versiones de Hugo en paralelo en diferentes entornos virtuales, donde Hugo se puede utilizar como herramienta de línea de comandos (una API de Python es no proporcionado en este momento dada la falta de tal demanda).
Este proyecto está diseñado para usarse en los siguientes escenarios:
pip install --upgrade hugo
, y también es posible realizar actualizaciones automáticas si usa un administrador de paquetes como Poetry o PDM para administrar sus dependencias de Python o una herramienta como pipx para administrar tus herramientas de línea de comandosEste proyecto está bajo los términos de la licencia Apache 2.0. Hugo también está disponible bajo Apache 2.0 (consulte la licencia Hugo).
Consulte la política de seguridad de este proyecto para obtener más información.
Este repositorio pretende seguir el proyecto Hugo en su esfuerzo por proporcionar un entorno acogedor e inclusivo para todos los contribuyentes, independientemente de su origen e identidad. Consulte el Código de conducta para obtener más información que se aplica a todas las interacciones en este repositorio y sus espacios asociados. Depende del Pacto del Contribuidor para sus pautas y se ajusta a la versión 2.1.
Para solicitar ayuda, informar errores o solicitar funciones específicas de las funcionalidades de Hugo, consulte el foro de Hugo Discourse. Para solicitar ayuda para hugo-python-distributions
, no dude en abrir una incidencia en este repositorio.
Hugo
en PyPI (@nariman) por su amable gesto de otorgar acceso para hacerse cargo del nombre del paquete con las disposiciones subyacentes de PEP 541. De esta manera, permite a los usuarios instalar el paquete con el mismo nombre que el proyecto oficial de Hugo, lo que sin duda proporciona una mejor experiencia de usuario y comodidad para los usuarios de este paquete en comparación con el nombre del paquete anterior, python-hugo
. La compatibilidad con arquitecturas de 32 bits (i686) y arm64 en Windows es posible mediante el uso de la cadena de herramientas del compilador Zig que utiliza el ecosistema LLVM. Estas ruedas son experimentales debido al uso de compilación cruzada y pueden no ser estables o confiables para todos los casos de uso, y no cuentan con el respaldo oficial del proyecto Hugo en este momento. Por lo tanto, si bien se publican en PyPI para su disponibilidad general, se consideran experimentales. Consulte la sección Creación desde el código fuente para obtener más información sobre cómo crear Hugo para estas plataformas y arquitecturas localmente. Si necesita soporte oficial para estas plataformas o enfrenta algún error, considere comunicarse con los autores de Hugo a través de [https://github.com/gohugoio/hugo/issues/new] (abriendo un problema). ↩ ↩ 2
No es posible incluir soporte para estas plataformas debido a i. la falta de recursos para probar y construir para ellos y ii. la falta de soporte para estas especificaciones de plataforma en los estándares y herramientas de empaquetado de Python. Si necesita soporte para estas plataformas, considere descargar los binarios oficiales de Hugo para sus ediciones no extendidas. ↩ ↩ 2 ↩ 3 ↩ 4 ↩ 5