staging.inyokaproject.org

2022 Woche 37

18. September 2022

Open Source Apps von F-Droid oder anderen Repositorien sind meist vertrauenswürdig, aber die wenigsten kommen gänzlich ohne proprietäre Apps aus. Hier hat man gerne im Blick, was diese so tun. Ein gutes Werkzeug dafür ist TrackerControl.

Es gibt zwei unterschiedliche Methoden auf nicht-gerooteten Android-Systemen systemweit Tracker und Werbung auszuschalten. Entweder über die Verwendung eines individuellen DNS-Servers oder über ein virtuelles VPN. Global einfach einen DNS-Server mit entsprechend hinterlegter Blockliste zu hinterlegen ist niedrigschwellig und schnell erledigt, aber lässt sich überhaupt nicht individualisieren. Ein virtuelles VPN auf dem Gerät kann eine beliebige Blocking-App aufspannen, das dann alle Daten durch eben jenes lokale VPN leitet und dort filtert. Der Nachteil ist, dass kein zweites partielles VPN z. B. mit Mullvad betrieben werden kann.

Blocking-Apps gibt es ziemlich viele. Besonders beliebt war über viele Jahre Blokada, das aber schon seit längerem Gegenstand einer Kontroverse ist und zunehmend kostenpflichtige Bezahlfunktionen anbietet. Eine besonders gute Alternative ist TrackerControl.

TrackerControl ist gewissermaßen die Quintessenz von NetGuard in Bezug auf Tracking-Schutz. Ursprünglich war es wohl eine funktionsreduzierte Abspaltung von NetGuard und hat sich dann eigenständig in eine andere Richtung entwickelt. NetGuard ist sicherlich ein tolles Werkzeug, aber wie so viel von Marcel Bokhorst finde ich NetGuard ein wenig überladen. TrackerControl bietet dagegen nur die wesentlichen Funktionen, um die installierten Apps im Blick zu behalten. Wer aber schon NetGuard nutzt, muss nicht unbedingt zu TrackerControl wechseln.

Installation und Konfiguration

Die Installation kann über verschiedene Quellen erfolgen. Die meisten werden wohl auf F-Droid zurückgreifen. Nach dem Start fragt die App den gewünschten Betriebsmodus ab und richtet das notwendige virtuelle VPN ein. Für den reibungslosen Betrieb muss es noch die Erlaubnis für den reibungslosen Betrieb im Hintergrund erteilt werden.

TrackerControl überwacht die laufenden Apps im Hintergrund, weshalb man zunächst einige Apps nutzen muss, um Ergebnisse zu sehen. In der App-Übersicht werden die Apps angezeigt und die von ihnen kontaktierten „Unternehmen“.

In der Detailübersicht zeigt TrackerControl welche Tracker-Bibliotheken theoretisch in der App inkludiert sind (was nicht unbedingt heißt, dass sie aktiv sind). Das Monitoring und der Internetzugang lassen sich für jede App in der Detailansicht deaktivieren bzw. sperren. Zudem zeigt die Ansicht auf welche Art von Tracker zum Einsatz kommt. Also ob es sich um eine Analyse, eine Fingerabdruckerstellung oder nicht kategorisierte Tracker handelt. Einige Tracker gruppiert TrackerControl als notwendig ein, da sie für die Funktionsweise notwendig sind.

Im Großen und Ganzen funktioniert die Erkennung sehr gut. Manchmal muss man jedoch nachjustieren. So macht beispielsweise die App Twidere X keinen Sinn, wenn der Zugang zur Twitter-API gesperrt wird.

Limitationen

Die App ersetzt keinen Werbeblocker und das möchte sie auch nicht. Zwar kann man in den Einstellungen die System-Apps in die Analyse mit einbeziehen, aber wenn TrackerControl einen Browser erkennt, gibt es einen entsprechenden Hinweis, dass Browser nicht unterstützt werden. Das ist bei Konkurrenzanwendungen wie z. B. Blokada anders. Anwender müssen hier dann auf Browser mit integriertem Adblock-Support oder entsprechenden Extensions zurückgreifen.

Fazit

TrackerControl ist ein hervorragendes Tool, um proprietäre Apps mit entsprechenden Trackern im Blick zu behalten und den Datenfluss zu kontrollieren. Die App tut was sie soll und ist funktional nicht überladen, wodurch sie leicht zu bedienen ist. Grenzen setzt die Funktion über ein virtuelles lokales VPN auf nicht gerooteten Geräten und der Ausschluss von Browsern.

17. September 2022

Eigentlich trivial.

Ich dokumentiere idas hier, weil ich eine Zeilennummerierung der Ausgabe sehr einfach realsiert habe und das mir merken möchte.

                                                                                        
#!/bin/bash
# roundcube-users.sh $Revision: 1.5 $
# changed wieder rausgenommen, fehlt der richtige dreh
# Mit Zeilennummerierung
echo "SELECT (@row := @row + 1) as Nr, username,created,last_login,failed_login,failed_login_counter \
from roundcube.users r, (SELECT @row := 0) row \
where username like '%$1%' \
order by last_login desc;"|\
mysql -S /var/run/mysqld/mysqld.sock --table


if [ "$#" -ne "1" ]
then
        bold=$(tput bold)
        normal=$(tput sgr0)
        #gelb=$(tput setaf 3)
        gruen=$(tput setaf 2)
        black=$(tput setaf 0)

        echo "---------------------------------------------------------------"
        echo "$bold Tipp:$normal"
        echo " Die Anzeige kann auch durch einen$gruen Teilstring$normal eingeschränkt werden. "
        echo "$bold Beispiel:$normal"
        echo "$0$gruen bik$normal"
fi

Gefunden bei 
https://www.askingbox.de/frage/mysql-reihen-im-ergebnis-nummerieren

Und ich benutze nun nicht mehr die Debian Spezialität  --defaults-extra-file=/etc/mysql/debian.cnf,

sondern den Socket /var/run/mysqld/mysqld.sock

Auf einer lokalen Umgebung macht das Sinn, da der Socket ohnehin rootrechte hat.

 

Ein Audio Live Mittschnitt vom 17.09.2022 zur Veranstaltung des Software Freedom Day 2022 #SFD bei IN-Berlin

 

Der Vortrag beleuchtet den gesamten Prozess von der Idee bis zur Präsentation und ein wenig darüber hinaus. Es wird schwerpunktmäßig über Ideen und Konzepte gesprochen. Die entsprechende FLOSS Software wird genannt, aber es ist kein Software Workshop (Wie funktioniert eigentlich …?). Trotz der der einen Stunde konnte selbst der gesamte Vorgang nur als grober Überblick mit vereinzelten Themenschwerpunkten betrachtet werden, so dass manche Dinge einfach nur benannt oder aufgelistet (im Vortrag oder hier im Blog) sind, so dass für Interessierte der Anfang leichter ist.

Der Vortrag wurde audiomäßig live mit OBS Studio aufgenommen und später mit KDEnlive als Videopräsentation erstellt.

Sollte zu den einzelnen Softwaren vermehrt Anfragen eintreffen, besteht die Möglichkeit dass ich noch zusätzlich einzelne Tutorials produziere.

Vielen Dank an die OrganisatorInnen der Veranstaltung und die Einladung zu diesem wichtigen Tag. Und auch einen herzlichen Dank an die weiteren Vortragenden für ihre Präsentationen und interessanten Einblicke und Perspektiven in die jeweiligen Themen.

Die Präsentation ist übrigens auch sehr gut in 360p konsumierbar (Thema - Streaming, CO2 & Umweltschutz) ;)

 

 

Die Peertube Instanz hatte leider einen Crash. Das Video wird demnächst wieder hochgeladen.

 

 

Linkliste der angesprochenen Software

  1. Aufnahme - Video

    1. OBS Studio https://obsproject.com/
  2. Audio

    1. Audacity https://www.audacityteam.org/
    2. Tenacity https://tenacityaudio.org/
    3. Easy Effects https://github.com/wwmm/easyeffects
    4. ffmpeg https://ffmpeg.org/ (als Paket in jeder Linux Distribution)
  3. Grafik

    1. Gimp https://www.gimp.org
    2. Krita https://krita.org
    3. Inkscape https://inkscape.org
  4. Videobearbeitung

    1. KDEnlive https://kdenlive.org/de/
    2. Shotcut https://www.shotcut.org/
    3. Oliveeditor https://www.olivevideoeditor.org/
    4. LossLessCut https://github.com/mifi/lossless-cut
    5. Blender https://www.blender.org/
  5. Soziale Netzwerke

    1. PeerTube https://joinpeertube.org/
    2. PixelFed https://github.com/pixelfed/pixelfed / https://pixelfed.social/
    3. Friendica https://friendi.ca/
  6. Markdown Editoren

    1. LoqSeq https://logseq.com/
    2. Unigraph https://unigraph.dev/
    3. Joplin https://joplinapp.org/
    4. Zettlr https://www.zettlr.com/
    5. QOwnNotes https://www.qownnotes.org/
    6. VNote https://vnotex.github.io/vnote/en_us/
    7. Dokuwiki https://www.dokuwiki.org/dokuwiki
  7. Cloud

    1. Nextcloud https://nextcloud.com/

 

 

14. September 2022

Firefox Relay ist ein kostenloser Dienst von Mozilla, der die persönliche E-Mail-Adresse vor Spam und unerwünschter Offenlegung schützt. Neuerdings kann Firefox Relay sogar Tracker aus E-Mails entfernen. Die kostenpflichtige Premium-Version bietet zusätzliche Funktionen. Mit einer Maskierung der Telefonnummer, Firefox-Integration sowie einem gemeinsamen Paket mit dem Mozilla VPN stehen gleich mehrere große Neuerungen an. Außerdem endet die Einführungsphase in Kürze, womit sich der Preis für Firefox Relay Premium ändern wird.

Was ist Firefox Relay?

E-Mail-Adressen sind gleichzusetzen mit einer persönlichen Adresse. Sie sind einmalig und viele Nutzer besitzen nur eine einzige E-Mail-Adresse, die sie teilweise auf dutzenden, wenn nicht gar auf hunderten Websites verwenden. Findet auf einer Website, auf der man mit seiner E-Mail-Adresse registriert ist, ein Datendiebstahl statt, wird damit in vielen Fällen auch die persönliche E-Mail-Adresse offengelegt. Und haben Spammer erstmal eine E-Mail-Adresse in ihrem System, darf man sich auf viele unerwünschte E-Mails ohne realistische Hoffnung einstellen, dass der Spam abnehmen wird.

Mit Firefox Relay können sogenannte Masken als Alias-Adressen angelegt werden, die der Nutzer für Newsletter-Anmeldungen und Website-Registrierungen angeben kann. Firefox Relay leitet diese E-Mails dann an die persönliche E-Mail-Adresse weiter.

Firefox Relay ist kostenlos. Es gibt aber auch eine kostenpflichtige Premium-Version, welche unendlich viele Masken anstelle von nur fünf sowie eine eigene E-Mail-Domain erlaubt. Außerdem kann in Firefox Relay Premium auf weitergeleitete E-Mails geantwortet und Werbe-Mails automatisch blockiert werden.

Bereits verfügbar: Tracker-Entfernung

Firefox Relay wird auch in der kostenlosen Version stetig verbessert. So wurde im März beispielsweise das Limit pro E-Mail von 150 KB auf 10 MB erhöht. Die neueste Ergänzung ist das optionale Entfernen bekannter Tracker aus E-Mails zur Verbesserung des Datenschutzes. Dieses Feature kann in den Einstellungen aktiviert werden.

Firefox Relay Tracker-Entfernung

Telefonnummer-Maskierung

In Zukunft wird Firefox Relay nicht nur E-Mail-Adressen, sondern auch Telefonnummern maskieren können. So können Nachrichten und Anrufe am Telefon empfangen werden, ohne dass dafür die echte Telefonnummer preisgegeben werden muss.

Firefox Relay Telefonnummer-Maskierung

Dieses Feature wird voraussichtlich ab dem 11. Oktober für Nutzer in den USA und Kanada zur Verfügung stehen. Zur Verfügbarkeit in anderen Ländern liegen aktuell noch keine Informationen vor.

Firefox-Integration

Es gibt bereits Browser-Erweiterungen für die Browser Firefox und Google Chrome, womit neue E-Mail-Masken direkt dort erstellt werden können, wo sie benötigt werden: auf Websites, welche die Eingabe einer E-Mail-Adresse erfordern. In Zukunft soll Firefox nativ Firefox Relay unterstützen. Nutzer, welche in Firefox mit ihrem Firefox Account angemeldet sind, erhalten dann bei E-Mail-Feldern automatisch ihre Masken vorgeschlagen und können neue Masken anlegen.

VPN-Paket

Mozilla plant außerdem die Einführung eines vermutlich zeitlich begrenzten Paketes, bestehend aus dem Mozilla VPN und Firefox Relay. Der Preis dafür steht noch nicht fest, gegenüber den Einzelprodukten wird man bei dieser Option aber definitiv etwas Geld sparen können.

Firefox Relay + Mozilla VPN Paket

Auch dieses Angebot wird am 11. Oktober erst einmal in den USA und Kanada starten.

Neuer Preis für Firefox Relay Premium

Wie Mozilla bereits seit Tag 1 der Einführung von Firefox Relay Premium kommuniziert hat, handelt es sich beim derzeitigen Preis von 0,99 Euro pro Monat um einen zeitlich begrenzten Einführungspreis. Die Einführungsphase wird am 27. September 2022 enden.

Danach wird Firefox Relay Premium 1,99 Euro pro Monat bei einem Monat Bindung kosten. Wer sich gleich für mindestens zwölf Monate bindet, zahlt auch in Zukunft nur 0,99 Euro pro Monat und spart damit die Hälfte. In der Schweiz sind 2,00 CHF respektive 1,00 CHF zu bezahlen.

Die Telefonnummer-Maskierung wird in diesem Preis nicht inbegriffen sein, sondern kann gegen einen Aufpreis optional dazu gebucht werden. Der Preis für die Telefonnummer-Maskierung steht noch nicht fest.

Der Beitrag Firefox Relay: Tracker-Entfernung, Telefonnummer-Maskierung, Firefox-Integration, VPN-Paket, neuer Premium-Preis erschien zuerst auf soeren-hentzschel.at.

Mi, 14. September 2022, Lioh Möller

Wer postapokalyptische Szenarien mag, der dürfte an der neuen Beta-Version von Fedora 37 Gefallen finden. Zumindest suggeriert das gewählte Hintergrundbild, dass wir in Zukunft in steinartigen Hochhäusern leben werden, die natürliche Evolution des Höhlenmenschen sozusagen. Dabei ist anzumerken, dass sich das tatsächliche Hintergrundbild bis zur Veröffentlichung durchaus noch ändern kann. Dies war zumindest bei der Vorgängerversion der Fall, bei der das ursprüngliche Beta-Design von der gleichen Künstlerin stammte.

Fedora bleibt darüber hinaus seinen Grundsätzen treu und stimmt das Release auf die angekündigte GNOME 43 Version ab. So enthält auch die nun veröffentlichte Beta der Distribution eine Vorabversion der Desktopumgebung.

Der Raspberry Pi 4 wird offiziell unterstützt, wobei auch eine Grafikbeschleunigung mit Freien Treibern möglich ist. Mit Fedora Linux 37 Beta wird die Unterstützung für die ARMv7 abgekündigt.

Die Entwickler freuen sich über Fehlerberichte. Zur Kommunikation kann die entsprechende Mailingliste genutzt werden.

Quelle: https://fedoramagazine.org/announcing-fedora-37-beta/

Download: https://download.fedoraproject.org/pub/fedora/linux/releases/test/37_Beta

13. September 2022

Unveränderliche („immutable“) Distributionen, Anwendungen über containerbasierte Formate wie Flatpaks und Snaps. Skeptiker dieser Entwickler verweisen immer wieder gerne auf die Bedeutung der Maintainer als wichtige Kontrollinstanz. Ein kleiner Blick auf die Fakten.

Paketmaintainer sollen dem Anspruch nach die Anwender vor dem Dschungel des Open Source-Ökosystems bewahren. Richtige Versionen finden, Quellcode prüfen, Fehler patchen, sicherheitsrelevante Probleme monitoren und beheben. Der Anforderungskatalog ist gewaltig.

In der Realität werden die Distributionen und ihre Maintainer dieser zugedachten Scharnierfunktion zwischen Entwicklung und Anwendern schon länger nicht mehr gerecht. Nicht weil sie nicht können oder wollen, sondern schlicht, weil Open Source sich weiterentwickelt hat. Programme bestehen heute nicht mehr aus ein paar hundert Zeilen Code und es gibt auch nicht mehr nur 5 Programme für jeden Zweck. Zum Glück für uns Anwender.

Nehmen wir Debian als Beispiel. Für ein Paket wie Dolphin ist laut Informationsseite die Gruppe der „Debian Qt/KDE Maintainers“ verantwortlich. Schon hier schwächt sich das Maintainerprinzip ab, da Außenstehende nicht sofort erkennen, wer verantwortlich zeichnet. Diese Gruppe ist für fast alle Pakete im KDE/Qt-Kontext verantwortlich. Wer jetzt denkt, das müssen bestimmt 10 Personen sein, der täuscht sich gewaltig. Seit dem Rückzug von Norbert Preining treten lediglich 2-3 Maintainer hier in Erscheinung durch Uploads. Das sind im Wesentlichen Pino Toscano und Aurélien Couderc, die für einen Großteil der Pakete verantwortlich zeichnen. Lediglich Qt hat nochmal separate Maintainer.

Debian hebt seine Entwickler und Maintainer besonders hervor und ist hier sehr transparent, aber das ist bei den meisten Distributionen nicht anders und die Personalstärke ist hier nirgendwo besser. Debian kann daher durchaus als Beispiel dienen.

Diese Maintainer leisten tolle Arbeit. Ohne sie gäbe es aktuell kaum ein Linux-System. Die sich rasch entwickelnde freie Softwarewelt in Pakete zu verpacken und an die Anwender auszuliefern, ist viel Arbeit. Arbeit, die für jede Distribution erneut durchgeführt werden muss (ja ja, die Vielfalt…). Arbeit, die immer noch nicht hinreichend automatisiert ist. Arbeit, die viele Maintainer in ihrer Freizeit erledigen.

Aber wer ernsthaft glaubt, dass bei dieser Arbeitsbelastung eine intensive und anlasslose Prüfung des Codes erfolgen kann, der redet sich etwas ein. Die Fähigkeit den Code der betreuten Pakete zu prüfen ist nicht mal eine Qualifikation, die ein Maintainer formal haben muss, weil es nicht seine Aufgabe ist. Solange beim Paketbau keine Probleme auftreten, schaut da niemand genauer hin. Viel bei Open Source basiert auf Vertrauen. Anwender vertrauen ihren Distributionen, die Projekte den Maintainern, diese Maintainer den Upstream-Entwicklern etc. pp. Man darf schon froh und dankbar sein, wenn die Maintainer den Upstreamdiskussionen engmaschig folgen und dort diskutierte Probleme schnell für die Distribution angehen und lösen.

Ein kleines Beispiel ist der KDE Partition Manager bzw. kpmcore. Bis bei SUSE ein (hauptamtlicher) Entwickler sich das mal genauer angesehen und umfangreiche Änderungen infolge erheblicher Sicherheitsbedenken angemahnt hat, haben das alle Distributionen klaglos durchgewunken und akzeptiert. Es fiel dann bei SUSE auf, obwohl die wohlgemerkt den KDE Partition Manager gar nicht standardmäßig verwenden, sondern eine eigene Lösung haben.

Das Maintainer-Prinzip auf einen Sockel zu stellen (z. B. hier und hier) und gegen die aktuelle Entwicklung ins Feld zu führen, wird der Realität somit nicht gerecht. Auch moderne Distributionen mit unveränderbaren Systemen und Anwendungen über Flatpak & Co brauchen Entwickler und entstehen nicht im luftleeren Raum. Hier wird ein bewusst ein Zerrbild zukünftiger Entwicklung gezeichnet und gegen ein idealisiertes Bild der Gegenwart ins Feld geführt.

Secure boot, TPM und alle diese schönen neuen Sicherheitsmaßnahmen. Alteingesessenen Linux-Veteranen sind sie ein Dorn im Auge, weil sie ihre gefühlte Kontrolle über das System beeinträchtigen. Da werden gerne mal die Fakten gebogen, um das eigene Weltbild zu pflegen.

Ich habe in der Vergangenheit hier so manche Lanze für die neuen Sicherheitsmaßnahmen in moderner Hardware gebrochen. Natürlich sind sie nicht perfekt und es gibt theoretische Risiken, aber sie bieten in bestimmten Szenarien substanzielle Vorteile. Wer es nicht nutzen möchte, kann alles abschalten. Das ist die volle Wahlfreiheit. Bereits im Februar hatte ich viel der angeblichen Kritik als FUD bezeichnet. Aus Angst und Unsicherheit geschürte Zweifel.

Es gibt bereits seit einigen Wochen Querelen zwischen Microsoft als Zertifizierungsstelle und den Entwicklern alternativer Betriebssysteme, was natürlich zuvorderst Linux betrifft. Microsoft möchte die Sicherheitsfunktionen mit seinem neuen Pluton-Chip stärken und hat in einer speziellen Einstellung die CA-Schlüssel Dritter gesperrt. Betroffen sind aktuell nur Kunden ganz neuer Lenovo-Notebooks, wobei dies es natürlich abstellen können. Das wird sich wie immer zurecht ruckeln und die Aufmerksamkeit kommt primär dadurch zustande, dass prominente Vertreter hier über Bande spielen und die Öffentlichkeit einbinden.

Den Vogel abgeschossen hat aber kürzlich Heise mit einem an Falschmeldung grenzenden Artikel „Bootloader-Signaturen per Update zurückgezogen: Microsoft bootet Linux aus„. Die Artikelüberschrift ist nicht nur völlig irreführend, sondern Heise mokiert sich über etwas, das eigentlich gut ist. Unsichere und veraltete Grub-Installationen werden von Secure Boot ausgeschlossen. Ein Problem haben nur Anwender völlig veralteter Linux-Installation. Mehr dazu kann man bei glasen nachlesen.

Warum das Heise macht, liegt meiner Meinung nach auf der Hand. Das Medium steigt schon länger ab und ist es längst nicht mehr „die“ IT-Zeitschrift von einst. Abozahlen kennen sie nur selbst, aber die c’t liegt längst nicht mehr in jeder IT-Abteilung als Dauerabo aus. Das hat natürlich etwas mit dem Medienwandel allgemein zu tun, aber Heise reagiert darauf – wie ich finde – mit einer speziellen Taktik. Klickzahlen verursachen nur noch kurze Aufreger und die Trollsportplattform – genannt Forum – auf der abgehängte Alleshasser ihren Frust über die Welt ablassen. Diese immer engere Zielgruppe bedient man mit solchen Artikeln. Gerne am Freitag vor dem Wochenende.

In der Linux-Blase wurde die Meldung natürlich gerne aufgegriffen und sogar noch irreführender verpackt. Plötzlich war ganz Ubuntu 20.04 betroffen und eine kleine Verschwörung zwischen Microsoft und den Hardwareherstellern konstruiert, bei denen sich Microsoft die „alleinstehend die Kontrolle über die Zertifizierungsstelle“ sicherte. Das muss derselbe böse Masterplan wie beim Microsoft-Novell-Deal gewesen sein… Der naheliegende Fall, dass es einfach gar keine Zertifizierungsstelle gab, Microsoft für seinen Secure Boot-Ansatz vorangehen musste und keine Lust auf langwierige und zu nichts führende Verhandlungen mit dem heterogenen Linux-Haufen und seinem Marktanteil von <5% hatte, schien wohl zu naheliegend. Die Ironie, Kunden von Lenovo 13z Notebooks auf eine Seite der FSFE zu verweisen, die T400 Notebooks führt, setzt dem ganzen die Krone auf. Wenn man andauernd um Reichweite und Spenden wirbt, sollte man auch um Qualität bemüht sein.

Die Berichterstattung und die Kommentare, auch hier im Blog, führen mich zu einem anderen Punkt: Die Linux-Community muss echt aufpassen, dass sie nicht in alternative Fakten abgleitet, weil ihr die Entwicklung in manchen Bereichen nicht passt. Unterschiedliche Perspektive einzunehmen bedeutet nicht, sich die Fakten zurecht zu schieben, wie sie im eigenen Weltbild Platz finden.

Darum nochmal kurz die Fakten zusammen gefasst:

  1. Microsoft entwickelt Secure Boot weiter. Das reibt sich manchmal mit Linux-Interessen. Ein Ausschluss alternativer Systeme ist nicht angekündigt und nicht geplant. Daran hätten nicht zuletzt Hersteller wie Lenovo, HP oder Dell mit Business-Kunden auch gar kein Interesse.
  2. Microsoft und die Linux-Distributionen arbeiten seit vielen Jahren zuverlässig zusammen und ermöglichen es auch Linux von Secure Boot profitieren zu lassen. Das betrifft auch Community-Distributionen wie z. B. Debian. Wenn eine Distribution kein Secure Boot unterstützt, dann weil sie es nicht will.
  3. Microsoft hat als Zertifizierungsstelle Zertifikate für unsichere Systeme zurückgezogen und damit seine Funktion als Zertifizierungsstelle erfüllt.

12. September 2022

Di, 13. September 2022, Fabian Schaar

Das openSUSE-Projekt gehört zu den bekanntesten in der GNU/Linux-Welt. Mit Plänen wie der "Adaptable Linux Platform" gehört openSUSE zu den Mutigsten, was die neuen Entwicklungen rund um immutable, zu deutsch unveränderliche Distributionen angeht.

Im Gegensatz zum bisherigen Distributionsansatz setzen Immutables wie Fedora Silverblue oder openSUSE ALP/MicroOS auf transaktionale Updates, die es ermöglichen, das Root-Verzeichnis und die Systemdateien weitgehend von den eigentlichen Endanwendern zu entkoppeln:

So wird ein grosser Teil der Installation als Read-Only eingehängt, "normale" Benutzer haben auf die entsprechenden Systemdateien dann keinen oder nur stark eingeschränkten Zugriff. Anwendungen sollen somit hauptsächlich über Containerlösungen wie Flatpak installiert werden.

Mit den verschiedenen MicroOS-Distributionen aus dem Hause openSUSE lässt sich die dortige Entwicklung rund um das Thema nachvollziehen. Das eigentliche MicroOS basiert dabei auf dem rollenden Tumbleweed-Zweig des Projekts, Leap Micro hingegen auf dem stabilen Zweig der Distribution mit dem Chamäleon. Am 9. September wurde die Version 5.3 Beta der Leap-Ausgabe zum Test freigegeben.

Im Gegensatz zu MicroOS bietet Leap Micro keine Desktop-Abbilder an, sondern fokussiert sich stark auf den Einsatz im Edge-Computing-, IoT- und Embedded-Umfeld. OpenSUSE selbst beschreibt die entsprechenden Veröffentlichungen als besonders zuverlässig, was durch den unveränderlichen Unterbau begründet wird.

Auf technischer Ebene sticht vor allem der NetworkManager als neuer Standard einhergehend mit Tools wie dem Cockpit-Plugin hervor. Ausserdem boote das System nun schneller aus der Kalten, so die Entwickler:innen in einem Blogpost.

Wichtig zu wissen ist, dass Leap Micro als unveränderliches System auf zypper als Paketmanager verzichtet und stattdessen auf transactional-update und automatisierte Aktualisierungen setzt.

Wie bereits erwähnt liegt das Hauptanwendungsfeld von Leap Micro im Edge.Comupting-Umfeld. Ähnlich wie die klassische Leap-Distribution ist mit SUSE SLE Micro auch bei der entsprechenden Immutable-Veröffentlichung ein kommerzielles Produkt der Firma SUSE verfügbar.

Zu beachten ist auch, dass Leap Micro im Gegensatz zur klassischen stabilen Leap-Distro einen wesentlich geringeren Lebenszyklus von lediglich sechs Monaten aufweist.

OpenSUSE Leap Micro kann momentan als Testversion von get.opensuse.org heruntergeladen werden, ein Bugtracker läuft über bugzilla.opensuse.org. In ihrem Blogpost geben die Entwickler:innen an, die Beta schnellstmöglich in einen Release Candidate umwandeln zu wollen.

Quelle: https://news.opensuse.org/2022/09/09/leap-micro-beta-available-for-testing/

Bild: Benny Trapp, CC BY 3.0, via Wikimedia Commons

Mo, 12. September 2022, Ralf Hersel

Die Linux-Distribution Raspberry Pi OS basiert neu auf Debian 11 Bullseye und bietet neue Funktionen für den hauseigenen PIXEL-Desktop, der wiederum auf dem leichten LXDE basiert. Das Betriebssystem der Raspberry Pi Foundation, welches erst im April vom Linux 5.10 LTS auf Linux 5.15 LTS gewechselt ist, hat mit dem neuesten Release zahlreiche Verbesserungen für PIXEL, die Desktop-Umgebung des Open-Source-Projekts, sowie einen abermals auf Linux 5.15.61 LTS aktualisierten Betriebssystemkernel erhalten.


Im Mittelpunkt steht das neue Hauptmenü-Plugin, welches jetzt erstmals auch eine integrierte Texteingabe mit Suchfunktion sowie ein Netzwerk-Plugin bietet, das mit dem Paket NetworkManager, einer Anwendung zur Verwaltung von Netzwerkverbindungen unter Linux kompatibel ist, die ursprünglich von Red Hat entwickelt wurde.

Die Highlights

  • Aktualisierter Betriebssystemkernel Linux 5.15.61 LTS
  • Neues Hauptmenü-Plugin mit Texteingabe und einer integrierten Suchfunktion
  • Neues Netzwerk-Plugin für den NetworkManager
  • Neues Audio-Plugin für den Infobereich

Hinzu kommen das neue Kamera-Interface Picamera 2 und überarbeitete Kurzbefehle für die Tastatur, die das Öffnen des Wi-Fi- und Bluetooth-Plugins erleichtern. Zudem wird die initiale Unterstützung des nach wie vor noch experimentellen Display-Server-Protokoll Wayland, das Benutzer über die Befehlszeile und das Paket raspi-config in den erweiterten Optionen aktivieren können, weiter verbessert.

In vielen Artikeln zur neuen Version des Raspberry Pi Betriebssystems liest man diese Anleitung zum Upgrade:

sudo apt update
sudo apt full-upgrade

Anscheinend haben die Tech-Blogs voneinander abgeschrieben. Diese Anleitung ist falsch! Sie führt lediglich zu einem vollständigen Upgrade auf Basis von Debian 10 Buster, zieht die Installation aber nicht auf Debian 11 Bullseye hoch.

So kommt man von Buster auf Bullseye

Die beste Empfehlung, um von einer Debian-Hauptversion auf die nächste zu gehen, ist eine Neuinstallation mit vorheriger Sicherung (Backup) aller persönlichen Dateien. Es gibt aber auch einen Upgrad-Pfad, der ohne eine vollständige Neuinstallation auskommt. Und der geht so:

sudo apt update
sudo apt dist-upgrade -y
sudo rpi-update
sudo reboot
sudo nano /etc/apt/sources.list
Suche diese Zeile: 
deb http://raspbian.raspberrypi.org/raspbian/ buster main contrib non-free rpi
.. und ersetze sie durch diese ('buster' durch 'bullseye' ersetzen):
deb http://raspbian.raspberrypi.org/raspbian/ bullseye main contrib non-free rpi
sudo apt update
sudo apt dist-upgrade
sudo apt autoclean
sudo reboot

Der oben beschriebene Vorgang kann steinig sein und muss nicht zwingend funktionieren. Ich hatte beim Upgrade meines Raspi3 einige Abhängigkeitsprobleme mit der gcclib. Wenn ihr diesen Weg gehen möchtet, solltet ihr mit Herausforderungen rechnen. Schlussendlich ist mein Upgrade von Buster auf Bullseye gelungen, wobei die Benutzeroberfläche danach keines der neuen Features zeigt und eher kaputt aussah:

Und so sollte es aussehen:

Ich habe versucht den Desktop mit dem Befehl sudo apt reinstall raspberrypi-ui-mods neu zu installieren, was aber keine Wirkung zeigte. Vielleicht kennen die Leser und Leserinnen hierfür einen funktionierenden Befehl.

Warnung: ein Upgrade kann funktionieren, muss es aber nicht. Der sichere Weg ist eine Neuinstallation. Vergesst nicht, ein Backup zu erstellen.

Quelle: https://www.raspberrypi.com/documentation/computers/os.html#updating-and-upgrading-raspberry-pi-os

Im Artikel „Wie kann man Hostnamen ohne Programme aus dem Paket bind-utils auflösen?“ hatte ich getent bereits genutzt, um Hostnamen auflösen zu können, wenn kein Programm aus dem Paket bind-utils installiert ist. In diesem Artikel möchte ich getent einmal ganz allgemein vorstellen.

Das Kommando getent steht auf so gut wie jedem Linux- und UNIX-System zur Verfügung. Es steht für get entries und tut genau das. Es ruft Einträge aus Textdateien ab (in diesem Kontext auch Datenbanken genannt), die auf eurem System vorhanden sind. Genau genommen kann es alle Datenbanken abfragen, die in der Datei /etc/nsswitch.conf (siehe nsswitch.conf(5)) konfiguriert sind. Damit lässt sich auf reichhaltige Informationen zugreifen, ohne eine Internet-Suchmaschine zu bemühen. Es funktioniert sogar auf Systemen ohne Internetkonnektivität (ja auch heutzutage gibt es solche Systeme noch).

Ich möchte hier allerdings nicht die Manpage getent(1) widergeben, sondern euch ein paar Anwendungsbeispiele zeigen, bei denen ich getent hilfreich finde.

Informationen zu Ports, Services und Protokollnummern

Nehmen wir mal an, in einem Firewall-Log fallen uns die Ports 5432 und 11371auf und wir können uns gerade nicht daran erinnern, für welche Services diese üblicherweise verwendet werden. So hilft uns folgende Abfrage auf unserem Linux-/UNIX-System weiter:

$ getent services 5432 11371
postgresql            5432/tcp postgres
hkp                   11371/tcp

Die Ports gehören also zu PostgreSQL und zu OpenPGP-HTTP-Keyservern.

Umgekehrt funktioniert das natürlich auch. Mal angenommen, ihr habt die Standard-Ports für NTP und MySQL vergessen:

$ getent services ntp mysql
ntp                   123/udp
mysql                 3306/tcp

Der Befehl getent services ohne weitere Argumente gibt euch den gesamten Inhalt der Datenbank aus.

Auf dem gleichen Weg lassen sich auch die Protokollnummern gängiger Protokolle ermitteln:

$ getent protocols tcp udp rdp icmp
tcp 6 TCP
udp 17 UDP
rdp 27 RDP
icmp 1 ICMP

Informationen über User und Gruppen

Selbstverständlich kann man diese Informationen auch mit `grep <Suchmuster> /etc/{groups,passwd} erhalten. Es geht aber auch wie folgt:

$ getent passwd root
root:x:0:0:root:/root:/bin/bash
$ getent group root
root:x:0:
$ getent group sudo
sudo:x:27:alice

Ein Beispiel für Hostnamen findet sich bereits hier.

Fazit

Ich finde, getent ist ein einfach zu bedienendes und nützliches Programm. Seid ihr neugierig geworden? Dann schaut doch mal in die Manpage getent(1) für weitere Hinweise, wie und wofür ihr es nutzen könnt.

Wir erstellen eine einfache Briefvorlage für quarto, so dass ein schönes PDF erzeugt wird.

11. September 2022

Vor ein paar Wochen wurde quarto als Next-Level-RMarkdown-Nachfolger veröffentlicht.

In diesem Blogpost zeige ich, wie ich mir eine Briefvorlage für quarto erstellt habe, die den Brief als PDF-Datei erzeugt.

Um mit quarto PDF-Dateien erzeugen zu können, muss eine -Distribution installiert sein. Sollte auf Ihrem System nicht installiert sein, kann dies über folgenden Befehl nachgeholt werden:

quarto install tool tinytex

Mit dieser Methode installiert quarto alle weiteren benötigten Pakete automatisch, sofern diese benötigt werden. Sollten Sie bereits eine -Distribution installiert haben, müssen Sie das Paket fontawesome installieren.


Quarto ermöglicht es, zusätzlichen LaTeX-Code einzufügen (siehe https://quarto.org/docs/output-formats/pdf-basics.html#latex-includes) oder nur einzelne Teile des Templates auszutauschen (siehe https://quarto.org/docs/journals/templates.html#template-partials).

Es können aber auch eigene vollständige Vorlagen erzeugt werden. Folgende Punkte sind hierbei zu bedenken:

  • Möchten Sie alle Funktionen von quarto verfügbar und Ihre Vorlage so flexibel wie möglich machen, sollten Sie die quarto-Vorlage kopieren (siehe https://github.com/quarto-dev/quarto-cli/tree/main/src/resources/formats/pdf/pandoc) und Ihre Änderungen direkt dort einfügen.

  • Möchten Sie sich z.B. eine Briefvorlage erstellen, deren wesentlichen Parameter (Dokumentenklasse, Schriftgröße, Geomtery, etc.) sich eh nie ändern werden, ist es durchaus legitim, eine eigene “rudimentäre” -Datei zu erstellen.

Und das geht so…

Quick and Dirty Vorlage

Unsere Briefvorlage besteht aus zwei Teilen:

  1. eine -Datei brieftamplate.tex, in welcher das Aussehen des Briefes festgelegt wird.

  2. eine quarto-Markdown-Datei MeinBrief.qmd, in welcher der eigentliche Brief geschrieben wird.

  • zudem benötigen Sie Ihre Unterschrift als Bilddatei.

LaTeX-Datei

Es bietet sich an, die -Datei an einem “zentralen Ort” abzulegen, von wo aus sie für die Briefe.qmd erreichbar ist, z.B. Dokumente/Vorlagen/Quarto. Am besten kopieren Sie Ihre Unterschriftenbilddatei auch dorthin.

Kopieren Sie folgenden Inhalt in die Datei brieftamplate.tex:

\documentclass[DIN,
    fontsize=11pt,          % fontsize
    paper=a4,               % page size a4
    firsthead=on,           % display header on first page
    firstfoot=on,           % display footer on first page
    pagenumber=off,         % position of the page number
    parskip=half,           % Use indent instead of skip, half, false
    enlargefirstpage=on,    % more space on first page
    fromalign=locationright, % placement of name in letter head
    fromrule=afteraddress,
    addrfield=on,           % address field for envelope with window, on or true
    subject=titled,         % placement of subject, beforeopening or titled
    foldmarks=on,          % print foldmarks
    numericaldate=off,      % display date in numbers only
    KOMAold]{scrlttr2}
\usepackage[dvips]{graphicx}
\usepackage[ngerman]{babel}
\usepackage{lipsum}
\usepackage[utf8]{inputenc}
\usepackage{times}
% \usepackage{lmodern}
\usepackage{longtable}
\usepackage{booktabs}
\usepackage{lastpage}
\usepackage[rgb]{xcolor}
\usepackage{hyperref}
\hypersetup{%
    pdfborder=0 0 0,
    pdfauthor={},
    pdftitle={},
    pdfsubject={},
    pdfkeywords={},
    pdfpagemode={UseOutlines},
    bookmarksopen,
    pdfstartview={FitH},
    colorlinks,
    linkcolor={black},
    citecolor={black},
    urlcolor={black}
  }
\urlstyle{same}
\usepackage{geometry}
\geometry{a4paper,left=25mm,right=20mm}

\usepackage{lastpage}
\usepackage{marvosym}
\usepackage{blindtext}

\newcommand{\myFirstname}{$myFirstname$}
\newcommand{\myFamilyname}{$myFamilyname$}
\newcommand{\myStreet}{$myStreet$}
\newcommand{\myTown}{$myTown$}

\setkomavar{date}{\today}
\setkomavar{fromname}{\flushright\normalfont\textbf{\myFirstname\ \myFamilyname}}
\setkomavar{signature}{\myFirstname\ \myFamilyname}
\setkomavar{fromaddress}{\flushright\normalfont\scriptsize%
$myGrads$ \myFirstname\ \myFamilyname\\
\myStreet\\\myTown\\%
$myTelefon$\\%
\normalfont $myMail$\\[2mm]
$myBank$\\
$myIBAN$\\[2mm]
Aktenzeichen:\quad\ $myAktenzeichen$\\
Datum:\quad \today}
\setkomavar{backaddress}{\myFamilyname\ | \myStreet\ | \myTown}
\setkomavar{signature}{\includegraphics[width=4cm]{$Unterschrift$}\\\myFirstname\ \myFamilyname}
\renewcommand*\familydefault{\sfdefault}
\setkomavar{firsthead}{}
\setkomavar{location}{%
  \raggedleft
  \usekomavar{fromname}\\
  \usekomavar{fromaddress}
}

% LOGO--------------kopf/fusszeile----------------
\usepackage{scrlayer-scrpage}
\clearmainofpairofpagestyles
\cfoot{\flushright\scriptsize\normalfont Seite \thepage\ von \pageref{LastPage} }
\RedeclarePageStyleAlias{empty}{scrheadings}
%----------------------------------------------
\setkomavar{date}{}
\setkomavar{subject}{$myBetreff$}

\setlength{\parindent}{0pt}

\makeatletter
  \@setplength{backaddrheight}{0pt}% because backaddress=off
  \@setplength{toaddrhpos}{2.5cm}%distance from left
  \@setplength{toaddrvpos}{5cm}%distance from top
  \@setplength{toaddrheight}{3.5cm}%height of the addressbox
  \@setplength{toaddrwidth}{10cm}% width of the addressbox
  \@addtoplength{locwidth}{45mm} % width of ABSENDERbox
  \@setplength{lochpos}{2cm}%distance from top
  \@setplength{locvpos}{32mm}%distance from top
  \@setplength{refvpos}{11cm}
\makeatother
$if(highlighting-macros)$
$highlighting-macros$
$endif$

\begin{document}
%
\begin{letter}{$toAdressName$\\
$toAdressHost$\\
$toAdressStr$\\
$toAdressCity$\\
$toAdressLand$
}
%
\opening{$opening$,}
%
%\setstretch{$spacing$}
$body$
%
\closing{$closing$,
}

$if(Anlagen)$
Anlage(n):
\begin{itemize}
$for(Anlagen)$\item $Anlagen$ %
$endfor$
\end{itemize}
$endif$

\end{letter}
\end{document}

quarto-Datei

Kopieren Sie folgenden Inhalt in die Datei MeinBrief.qmd. Beachten Sie, dass in Zeile 4 der Pfad zur brieftamplate.tex korrekt angegeben werden muss. Ebenso erwartet die Vorlage in Zeile 14 den Pfad zu einer Unterschrift.png-Bilddatei.

---
format:
  pdf:
    template: /pfad/zu/brieftamplate.tex
    myFirstname: Andreas
    myFamilyname: Absendermann
    myStreet: Wegschickstraße 13
    myTown: 45899 Abschickstadt
    myGrads: Herr
    myTelefon: +49 555 0815 2342
    myMail: meinemail@adresse.de
    myBank:  Sparkasse Reibachstadt
    myIBAN: DE06 555 0815 2342
    Unterschrift: /pfad/zu/Unterschrift.png
    myAktenzeichen: 2021-A
    myBetreff: Betreff
    toAdressName: Erna Empfängerin
    toAdressHost: Empfangs GMBH
    toAdressStr: Empfänger-Straße 12
    toAdressCity: 45887 Empfangdorf
    toAdressLand: Germany
    opening: "Sehr geehrte Frau Empfängerin,"
    closing: "Mit freundlichen Grüßen"
    Anlagen:  
      - "Lebenslauf"
      - "Anwaltsschreiben"
      - "Schulzeugnis"
---

dies ist ein Testbrief.

Wenn Sie beide Pfade korrekt ersetzt haben, können Sie den Render-Button drücken. Das Ergebnis sieht dann so aus:

fertiger Brief

Für jeden weiteren Brief können Sie nun die MeinBrief.qmd duplizieren, umbenennen, bearbeiten und ein PDF erzeugen.

Weblinks




kommentiere per [matrix]:

Vor ein paar Wochen wurde quarto als Next-Level-RMarkdown-Nachfolger veröffentlicht.

In diesem Blogpost zeige ich, wie ich mir eine Briefvorlage für quarto erstellt habe, die den Brief als PDF-Datei erzeugt.

Um mit quarto PDF-Dateien erzeugen zu können, muss eine -Distribution installiert sein. Sollte auf Ihrem System nicht installiert sein, kann dies über folgenden Befehl nachgeholt werden:

quarto install tool tinytex

Mit dieser Methode installiert quarto alle weiteren benötigten Pakete automatisch, sofern diese benötigt werden. Sollten Sie bereits eine -Distribution installiert haben, müssen Sie das Paket fontawesome installieren.


Quarto ermöglicht es, zusätzlichen LaTeX-Code einzufügen (siehe https://quarto.org/docs/output-formats/pdf-basics.html#latex-includes) oder nur einzelne Teile des Templates auszutauschen (siehe https://quarto.org/docs/journals/templates.html#template-partials).

Es können aber auch eigene vollständige Vorlagen erzeugt werden. Folgende Punkte sind hierbei zu bedenken:

  • Möchten Sie alle Funktionen von quarto verfügbar und Ihre Vorlage so flexibel wie möglich machen, sollten Sie die quarto-Vorlage kopieren (siehe https://github.com/quarto-dev/quarto-cli/tree/main/src/resources/formats/pdf/pandoc) und Ihre Änderungen direkt dort einfügen.

  • Möchten Sie sich z.B. eine Briefvorlage erstellen, deren wesentlichen Parameter (Dokumentenklasse, Schriftgröße, Geomtery, etc.) sich eh nie ändern werden, ist es durchaus legitim, eine eigene “rudimentäre” -Datei zu erstellen.

Und das geht so…

Quick and Dirty Vorlage

Unsere Briefvorlage besteht aus zwei Teilen:

  1. eine -Datei brieftamplate.tex, in welcher das Aussehen des Briefes festgelegt wird.

  2. eine quarto-Markdown-Datei MeinBrief.qmd, in welcher der eigentliche Brief geschrieben wird.

  • zudem benötigen Sie Ihre Unterschrift als Bilddatei.

LaTeX-Datei

Es bietet sich an, die -Datei an einem “zentralen Ort” abzulegen, von wo aus sie für die Briefe.qmd erreichbar ist, z.B. Dokumente/Vorlagen/Quarto. Am besten kopieren Sie Ihre Unterschriftenbilddatei auch dorthin.

Kopieren Sie folgenden Inhalt in die Datei brieftamplate.tex:

\documentclass[DIN,
    fontsize=11pt,          % fontsize
    paper=a4,               % page size a4
    firsthead=on,           % display header on first page
    firstfoot=on,           % display footer on first page
    pagenumber=off,         % position of the page number
    parskip=half,           % Use indent instead of skip, half, false
    enlargefirstpage=on,    % more space on first page
    fromalign=locationright, % placement of name in letter head
    fromrule=afteraddress,
    addrfield=on,           % address field for envelope with window, on or true
    subject=titled,         % placement of subject, beforeopening or titled
    foldmarks=on,          % print foldmarks
    numericaldate=off,      % display date in numbers only
    KOMAold]{scrlttr2}
\usepackage[dvips]{graphicx}
\usepackage[ngerman]{babel}
\usepackage{lipsum}
\usepackage[utf8]{inputenc}
\usepackage{times}
% \usepackage{lmodern}
\usepackage{longtable}
\usepackage{booktabs}
\usepackage{lastpage}
\usepackage[rgb]{xcolor}
\usepackage{hyperref}
\hypersetup{%
    pdfborder=0 0 0,
    pdfauthor={},
    pdftitle={},
    pdfsubject={},
    pdfkeywords={},
    pdfpagemode={UseOutlines},
    bookmarksopen,
    pdfstartview={FitH},
    colorlinks,
    linkcolor={black},
    citecolor={black},
    urlcolor={black}
  }
\urlstyle{same}
\usepackage{geometry}
\geometry{a4paper,left=25mm,right=20mm}

\usepackage{lastpage}
\usepackage{marvosym}
\usepackage{blindtext}

\newcommand{\myFirstname}{$myFirstname$}
\newcommand{\myFamilyname}{$myFamilyname$}
\newcommand{\myStreet}{$myStreet$}
\newcommand{\myTown}{$myTown$}

\setkomavar{date}{\today}
\setkomavar{fromname}{\flushright\normalfont\textbf{\myFirstname\ \myFamilyname}}
\setkomavar{signature}{\myFirstname\ \myFamilyname}
\setkomavar{fromaddress}{\flushright\normalfont\scriptsize%
$myGrads$ \myFirstname\ \myFamilyname\\
\myStreet\\\myTown\\%
$myTelefon$\\%
\normalfont $myMail$\\[2mm]
$myBank$\\
$myIBAN$\\[2mm]
Aktenzeichen:\quad\ $myAktenzeichen$\\
Datum:\quad \today}
\setkomavar{backaddress}{\myFamilyname\ | \myStreet\ | \myTown}
\setkomavar{signature}{\includegraphics[width=4cm]{$Unterschrift$}\\\myFirstname\ \myFamilyname}
\renewcommand*\familydefault{\sfdefault}
\setkomavar{firsthead}{}
\setkomavar{location}{%
  \raggedleft
  \usekomavar{fromname}\\
  \usekomavar{fromaddress}
}

% LOGO--------------kopf/fusszeile----------------
\usepackage{scrlayer-scrpage}
\clearmainofpairofpagestyles
\cfoot{\flushright\scriptsize\normalfont Seite \thepage\ von \pageref{LastPage} }
\RedeclarePageStyleAlias{empty}{scrheadings}
%----------------------------------------------
\setkomavar{date}{}
\setkomavar{subject}{$myBetreff$}

\setlength{\parindent}{0pt}

\makeatletter
  \@setplength{backaddrheight}{0pt}% because backaddress=off
  \@setplength{toaddrhpos}{2.5cm}%distance from left
  \@setplength{toaddrvpos}{5cm}%distance from top
  \@setplength{toaddrheight}{3.5cm}%height of the addressbox
  \@setplength{toaddrwidth}{10cm}% width of the addressbox
  \@addtoplength{locwidth}{45mm} % width of ABSENDERbox
  \@setplength{lochpos}{2cm}%distance from top
  \@setplength{locvpos}{32mm}%distance from top
  \@setplength{refvpos}{11cm}
\makeatother
$if(highlighting-macros)$
$highlighting-macros$
$endif$

\begin{document}
%
\begin{letter}{$toAdressName$\\
$toAdressHost$\\
$toAdressStr$\\
$toAdressCity$\\
$toAdressLand$
}
%
\opening{$opening$,}
%
%\setstretch{$spacing$}
$body$
%
\closing{$closing$,
}

$if(Anlagen)$
Anlage(n):
\begin{itemize}
$for(Anlagen)$\item $Anlagen$ %
$endfor$
\end{itemize}
$endif$

\end{letter}
\end{document}

quarto-Datei

Kopieren Sie folgenden Inhalt in die Datei MeinBrief.qmd. Beachten Sie, dass in Zeile 4 der Pfad zur brieftamplate.tex korrekt angegeben werden muss. Ebenso erwartet die Vorlage in Zeile 14 den Pfad zu einer Unterschrift.png-Bilddatei.

---
format:
  pdf:
    template: /pfad/zu/brieftamplate.tex
    myFirstname: Andreas
    myFamilyname: Absendermann
    myStreet: Wegschickstraße 13
    myTown: 45899 Abschickstadt
    myGrads: Herr
    myTelefon: +49 555 0815 2342
    myMail: meinemail@adresse.de
    myBank:  Sparkasse Reibachstadt
    myIBAN: DE06 555 0815 2342
    Unterschrift: /pfad/zu/Unterschrift.png
    myAktenzeichen: 2021-A
    myBetreff: Betreff
    toAdressName: Erna Empfängerin
    toAdressHost: Empfangs GMBH
    toAdressStr: Empfänger-Straße 12
    toAdressCity: 45887 Empfangdorf
    toAdressLand: Germany
    opening: "Sehr geehrte Frau Empfängerin,"
    closing: "Mit freundlichen Grüßen"
    Anlagen:  
      - "Lebenslauf"
      - "Anwaltsschreiben"
      - "Schulzeugnis"
---

dies ist ein Testbrief.

Wenn Sie beide Pfade korrekt ersetzt haben, können Sie den Render-Button drücken. Das Ergebnis sieht dann so aus:

fertiger Brief

Für jeden weiteren Brief können Sie nun die MeinBrief.qmd duplizieren, umbenennen, bearbeiten und ein PDF erzeugen.

siehe auch

Mittlerweile habe ich die Vorlage auch für Typst vorbereitet, siehe diesen Blogeintrag.

Weblinks


Diskussion per Matrix unter https://matrix.to/#/#produnis-blog:tchncs.de