Technik

Taxonomie-URLs in Hugo anpassen

14. Juni 2026 · Programmierung · andreas · Kein Kommentar

Seit der Umstellung von WordPress läuft das Autoren-Archiv des Blogs weiterhin unter der von WordPress verwendeten “/authors”-URL.

Taxonomie-URLs in Hugo anpassen

In jedem Beitrag ist im Front Matter der Wert “author” gesetzt und dieser in der “hugo.toml” als eigene Taxonomie definiert:

Frontmatter
--- title: 'title' slug: 'slug' date: 9999-12-31 00:00:00 author: andreas draft: true tag: --- text
hugo.toml
... [taxonomies] txauthor = 'author' ...

Da es sich (bis auf wenige Beiträge) um ein deutschsprachiges Blog handelt und ich auch schon einige andere beim Umzug übernommene Dinge über Bord geworfen habe, sollte auch das Autoren-Archiv nach “/autor” umziehen.

Die einfachste Lösung wäre sicherlich, die Taxonomie selbst von “author” in “autor” umzubenennen, da sich aus dem Namen der Taxonomie aber auch Variablen (z.B. “.Params.Author”) ableiten, wollte ich die Verwendung eines deutschen Begriffs - und auch das Mixen von deutschen und englischen Begriffen im Front Matter - vermeiden und an dieser Stelle beim englischen “author” bleiben.

Der erste (nur teilweise funktionierende Ansatz) war das Setzen eines Permalinks für die Taxonomie in der Permalinks-Sektion der “hugo.toml”:

hugo.toml
... [taxonomies] txauthor = 'author' ... [permalinks] author = '/autor/:slug' ...

Nach dieser Änderung wurden die einzelnen Autorenseiten zwar wie gewünscht unter z.B. “/autor/andreas/” angelegt, die Autoren-Übersicht wurde aber weiterhin unter “/author” erzeugt.

Ein erster (funktionierender) Lösungsansatz war das Anlegen einer “_index.md”-Datei im neu erstellten Verzeichnis “/content/author/” mit folgendem Inhalt:

_index.md
--- url: '/autor/' ---

Dies funktioniert zwar, aber das Anlegen des zusätzlichen Verzeichnisses mitsamt Datei zum Umbiegen der URL ist irgendwie unschön und verteilt die Definition der zu erstellenden URLs auf verschiedene Stellen, was sicherlich irgendwann einmal beim Thema “Wartbarkeit” Kopfzerbrechen bereitet.

Eine elegantere Lösung fand sich im Beitrag Taxonomy terms page permalink - how to change it? des Hugo-Forums - eine getrennte Angabe des Definition eines Permalinks für den Bereich “taxonomy” und “term”:

hugo.toml
... [taxonomies] txauthor = 'author' ... [permalinks] ... [permalinks.taxonomy] author = '/autor/' [permalinks.term] author = '/autor/:slug' ...

Damit funktioniert das Erzeugen der Taxonomie-Übersicht an der richtigen Stelle, es muß keine zusätzliche Datei mitsamt Verzeichnis angelegt werden und die komplette Permalink-Konfiguration bleibt in der “hugo.toml”.


Kennwort einer verschlüsselten LVM-Partition ändern

06. Juni 2026 · Betriebssysteme · andreas · Kein Kommentar

Genauso wie andere Kennwörter kann auch das Kennwort einer verschlüsselten LVM-Partition geändert werden.

Please unlock disk

Wer sich den Partitionsnamen nicht vom Startbildschirm abschreiben (oder merken) möchte, kann diesen in der Datei “/etc/crypttab” nachschlagen:

$ cat /etc/crypttab nvme0n1p3_crypt UUID=c5a***514 none luks,discard,x-initrd.attach

Die Zuordnung der UUID zum Partitionsnamen ergibt sich aus dem Devicetree:

$ ls -l /dev/disk/by-uuid/c5a***514 lrwxrwxrwx 1 root root 15 6. Jun 17:58 /dev/disk/by-uuid/c5a***514 -> ../../nvme0n1p3

Das Ändern des Kennwortes erfolgt mit Hilfe von “cryptsetup”, entweder in zwei Schritten (Hinzufügen und Löschen) oder in einem Schritt (direkte Änderung).

Zuerst wird entweder ein neuer Schlüssel hinzugefügt und anschließend der alte gelöscht:

$ sudo cryptsetup luksAddKey /dev/nvme0n1p3 Geben Sie irgendeine bestehende Passphrase ein: Geben Sie die neue Passphrase für das Schlüsselfach ein: Passphrase bestätigen: $ sudo cryptsetup luksRemoveKey /dev/nvme0n1p3 Geben Sie die zu löschende Passphrase ein:

oder alternativ der bestehende Schlüssel direkt geändert:

$ sudo cryptsetup luksChangeKey /dev/nvme0n1p3 ...

Eine Ausgabe, daß die Aktion erfolgreich war, wird von cryptsetup nicht explizit zurückgeliefert - es gilt das Motto “No news is good news”.

Vor dem nächsten Neustart sollte sichergestellt werden, daß mindestens ein Schlüssel für die Bootpartition existiert, da sonst ein Systemstart nicht mehr möglich ist.

Hierzu kann die Funktion “luksDump” con cryptsetup verwendet werden:

$ sudo cryptsetup luksDump /dev/nvme0n1p3 LUKS header information ... Keyslots: 0: luks2 ...

Sofern in der Kategorie “Keyslots” mindestens ein Eintrag vorhanden ist, passt alles.


Firefox - Contdown bis zur Weltmeisterschaft

30. Mai 2026 · Anwendungen · andreas · Kein Kommentar

Während Firefox eine der letzten Möglichkeiten ist, das Quasi-Monopol Chrome zu umgehen, gibt sich die Mozilla Foundation redlich Mühe auch die letzten treuen Benutzer zu vergraulen.

Firefox Startseite

Ein frisch installierter Firefox unter Android begrüßte mich mit einem “Countdown zur Weltmeisterschaft” auf der Startseite. Wie schön, daß wenigstens der Fuchs im Widget ein Sportgerät vor sich liegen hat, denn sonst müsste sich der sportuninteressierte Benutzer erstmal fragen, um welche Weltmeisterschaft es denn geht.

Firefox Einstellungen

Nicht nur, daß auf der Startseite das Widget angebracht wurde, in den Einstellungen wurde sogar ein extra Schalter “Weltmeisterschaft” angebracht.

Sorry, aber ein Browser sollte aus meiner Sicht eine vertrauenswürdige Anwendung sein, mit der ich möglichst sicher und performant von mir in der Adressleiste angegebene URLs besuchen kann - und eben keine Werbemaschine für (in diesem Fall Sport-) Ereignisse aller Art. So schwindet immer mehr das Gefühl, daß Mozilla eben doch was anders macht als die anderen.


HP EliteDesk 805 G6 Desktop Mini PC Firmware Update

29. April 2026 · Hardware · andreas · Kein Kommentar

Während z.B. DELL den Firmware-Updatemanager fwupd unterstützt, damit auch Benutzer von Nicht-Windows-Systemen ohne Klimmzüge Firmware-Updates einspielen können, ist bei HP Handarbeit angesagt.

Die hier beschriebene Vorgehensweise wurde auf einem HP EliteDesk 805 G6 Desktop Mini PC erfolgreich durchgeführt und auch auf einem HP Elitebook getestet. Es kann trotzdem nicht garantiert werden, daß dies auch bei anderen HP-Geräten funktioniert und zum gewünschten Ergebnis führt.

Als erstes wird die gewünschte Version der Firmware von der offiziellen HP-Website heruntergeladen und in einem lokalen Ordner gespeichert.

Dann wird die soeben heruntergeladene Datei entpackt

$ 7z x sp166097.exe

und ein neuer Ordner auf der Boot-Patrition anlegegt.

$ sudo mkdir -p /boot/efi/EFI/HP/DEVFW

In diesen Ordner wird die entpacke Firmware unter dem Namen “firmware.bin” kopiert

$ sudo cp S29_02200000.bin /boot/efi/EFI/HP/DEVFW/firmware.bin

Nach einem Neustart des Systems kann im EFI-Menu anschließend der Punkt “Update Firmware” ausgewählt werden und das System startet mit der Aktualisierung.


Drucker über IPP einbinden

22. März 2026 · Hardware · andreas · Kein Kommentar

War früher die Einbindung eines Druckers oder Multifunktionsgeräts in der Regel noch mit viel Suche nach einem passenden Treiber und der Einrichtung fehlender Funktionalität verbunden, so ist dies mit Einführung des Internet Printing Protocols einfacher geworden.

Lexmark CS963e IPP Everywhere

Im Normalfall reicht eine Abfrage mit Hilfe von ipptool, um die Fähigkeiten und benötigten Ports des Druckers zu listen, z.B.

$ ipptool -tv ipp://DRUCKERNAME_ODER_IP:631/ipp/print get-printer-attributes.test

In der Liste der Ausgaben sind auch die URIs zur Kommunikation mit dem Drucker vorhanden, also z.B

$ ipptool -tv ipp://DRUCKERNAME_ODER_IP:631/ipp/print get-printer-attributes.test | grep ipps printer-uri-supported (1setOf uri) = ipp://DRUCKERNAME_ODER_IP:631/ipp/print,ipps://DRUCKERNAME_ODER_IP:443/ipp/print

so daß ein anschließender Aufruf von

$ sudo lpadmin -p 'DRUCKERNAME' -v ipps://DRUCKERNAME_ODER_IP:443/ipp/print -E -m everywhere

ausreicht, um den Drucker ins System einzubinden. Der Parameter “-m everywjere” bewirkt, daß bei der Einrichtung die vorhandene Feature-Liste vom Drucker eingelesen und zur Verfügung gestellt wird. “-E” führt dazu, daß der neu eingerichtete Drucker aktiviert wird und Druckaufträge verarbeiten kann.