Hugo : Utilisation du binaire fourni par le projet (OpenBSD)

Article publié, le
3 minute(s) de lecture

Cet article contient 610 mots.
Source brute de l'article : MD

Description

Utiliser Hugo sous OpenBSD est possible, sans soucis.

Il existe en tant que paquet tiers, installable par le gestionnaire de paquets :
# pkg_add hugo

  • version d’Hugo : 0.53 : Hugo Static Site Generator v0.53 openbsd/amd64 BuildDate: unknown
  • OpenBSD : 6.6
  • Architecture : amd64

Bon, maintenant soyons réaliste, cette version date d’un an et a son lot de bogues.

Utilisation

Quoiqu’il en soit le projet Hugo semble fournir pour chaque nouvelle version des archives tar.gz qu’il suffit de télécharger et décompresser ; il y a trois fichiers généralement dedans, le fichier LICENSE, README.md et le binaire hugo. Les archives sont à destination des architectures 32 bits (donc i386), 64 bits (donc amd64), et ARM.

Pour autant que dans votre variable d’environnement PATH vous ayez inclu ~/bin/, il suffit de créer un lien symbolique dedans pour pouvoir utiliser ce nouveau binaire.

Le propos de cet article est de “remonter” les différents écueils liés à ces binaires officiels, qui parfois générent des changements dans la configuration de Hugo, voire des dysfonctionnements.

La dernière version fonctionnelle est : la 0.59.1.

Changements importants

v0.54.0

  • version : Hugo Static Site Generator v0.54.0-B1A82C61 openbsd/amd64 BuildDate: 2019-02-01T09:41:10Z

Malheureusement, un simple hugo server ne fonctionne pas !

L’erreur restituée : Error: Error building site: EOF

Au suivant !

v0.55.0

  • version : Hugo Static Site Generator v0.55.0-4333CC77 openbsd/amd64 BuildDate: 2019-04-08T16:41:18Z
Attention

v0.6x

  • versions 0.60.(x), 0.61.0, 0.62.(x)

Depuis la version 0.60.0, il y a un changement du “moteur” par défaut, qui est le goldmark.

Cela implique de modifier le fichier de configuration pour ajouter ce qui suit, pour le format toml :

[markup.goldmark.renderer]
unsafe = true

Il y a un bogue dans la restitution du code HTML au sein des shortcodes.

Pour l’instant, préférez l’usage de la version 0.59.1 qui est fonctionnelle ou utilisez l’un des autres moteurs de rendu.

Dépréciations

Page.Hugo is deprecated

Le message suivant Page.Hugo is deprecated and will be removed in a future release. Use the global hugo function. informe simplement que la variable .Hugo est obsolète, dépréciée ; il est recommandé de la remplacer par la fonction globale hugo. Donc, parcourez tous vos fichiers _default, partials, voire shortcodes et remplacez !

Voir la page Hugo Documentation : Variables > Hugo

Le message suivant Page's .RSSLink is deprecated and will be removed in a future release. Use the Output Format's link informe que la variable .RSSLink est osbolète et dépréciée.

Il est recommandé d’utiliser le formatage de sortie , tel que : {{with .OutputFormats.Get "RSS" }}{{ .RelPermalink }}{{ end }}

Voir la page Hugo Documentation : Templates > Output formats

Page’s .URL is deprecated

Le message suivant Page's .URL is deprecated and will be removed in a future release. Use .Permalink or .RelPermalink. explique en fait que la variable .URL ne doit plus être utilisée dans le corps d’une page. Donc, parcourez tous vos fichiers _default, partials, voire shortcodes et remplacez la variable .URL au minimum par .Permalink.

Info

Recommandations

Shortcodes

Il est donc recommandé de ne plus utiliser la syntaxe {{% shortcode %}} mais de lui préférer la syntaxe {{< shortcode >}} et d’utiliser la fonction markdownify.

Voir la page : Hugo Documentation : Functions > Markdownify .

Taxonomy

Les nœuds de taxonomies ont un nouvel accesseur nommé .Page qui simplifie l’usage aux différentes variables, telle que .Titre.

Au lieu d’utiliser l’ensemble suivant {{ range .Data.Terms.Alphabetical }}, utilisez plutôt {{ range .Site.Taxonomies.tags }}.