Normale Ansicht

Mozilla veröffentlicht Firefox 129

06. August 2024 um 20:20

Mozilla hat Firefox 129 für Windows, Apple macOS und Linux veröffentlicht. Dieser Artikel fasst die wichtigsten Neuerungen zusammen – wie immer auf diesem Blog weit ausführlicher als auf anderen Websites.

Download Mozilla Firefox für Microsoft Windows, Apple macOS und Linux

Tab-Vorschau bei Herüberfahren mit der Maus

Bislang zeigte Firefox bei Herüberfahren mit der Maus über einen Tab einen ganz einfachen Tooltip mit dem Titel der Website als Inhalt an. Diesen hat Mozilla nicht nur optisch überarbeitet, sondern zeigt jetzt zusätzlich die URL sowie einen Screenshot der geöffneten Website an.

Firefox 129

Diese Neuerung wird schrittweise im Laufe der kommenden Wochen für alle Nutzer ausgerollt werden.

Adressen speichern und ausfüllen

Bereits seit mehreren Jahren unterstützt Firefox die Speicherung von Adressen, sodass Nutzer diese in Formularen nicht jedes Mal manuell eingeben müssen. Bislang stand dieses Feature allerdings nur für Nutzer in den USA und Kanada zur Verfügung. Ab Firefox 129 können auch Nutzer in Deutschland und Frankreich dieses Feature nutzen.

Firefox 129

Um die Unterstützung in weiteren Ländern hinzuzufügen, kann über about:config der Schalter extensions.formautofill.addresses.supportedCountries angepasst werden, indem das entsprechende Länderkürzel im Wert ergänzt wird, z.B. AT für Österreich oder CH für die Schweiz.

Noch besser anpassbare Leseansicht

Per Klick auf das Buch-Symbol in der Adressleiste erscheinen Artikel im Web so aufbereitet, dass sie störungsfrei gelesen werden können. Konkret bedeutet dies eine angenehme Farbgebung und Schriftgestaltung sowie keine störenden Elemente wie Werbung. Der Nutzer hat hierbei auch diverse Anpassungsmöglichkeiten und kann sich die Artikel sogar vorlesen lassen.

Zu den bereits vorhandenen Anpassungsmöglichkeiten gehören die Wahl zwischen einer Schrift mit oder ohne Serifen, die Wahl zwischen einem hellen, einem dunklen sowie einem sepiafarbenen Farbschema, die Änderung der Inhaltsbreite, der Schriftgröße sowie des Zeilenabstands.

Mit Firefox 129 hat Mozilla die Kontrollelemente überarbeitet. Diese sehen nicht nur anders aus, es gibt jetzt auch mehr Optionen. So kann ab sofort auch eine Schrift mit fester Breite ausgewählt werden. Ganz neu sind Optionen für die Schriftstärke (dünn, normal, breit), für den Zeichenabstand sowie für den Wortabstand. Auch die Ausrichtung des Textes (linksbündig, zentriert, rechtsbündig) ist jetzt einstellbar.

Firefox 129

Für das Farbschema stehen zusätzlich die Optionen Grau sowie Kontrast zur Verfügung. Man kann jetzt aber auch ein ganz eigenes Farbschema mit beliebigen Farben erstellen.

Firefox 129 Firefox 129

Sonstige Endnutzer-Neuerungen von Firefox 129

Für Sidebars gibt es nicht länger eine feste Maximalbreite von geringer Größe. Stattdessen lassen sich Sidebars jetzt auf bis zu 75 Prozent der Fensterbreite vergrößern.

Browser-Erweiterungen sind standardmäßig in privaten Fenstern nicht aktiviert. In der Add-ons-Verwaltung lässt sich die Erlaubnis nach der Installation erteilen. Firefox fragt in Zukunft schon direkt bei der Installation einer Erweiterung, ob diese in privaten Fenstern ausgeführt werden soll oder nicht.

Firefox 129

Eine weitere willkommene Änderung in Bezug auf Erweiterungen ist die Tatsache, dass Erweiterungen, welche die activeTab-Berechtigung besitzen, nicht länger auf jeder Seite den Berechtigungs-Indikator (blauer Punkt) in der Schaltfläche für das Erweiterungs-Menü auslösen.

Werden Dokumente mit der Screenreader-Software VoiceOver von Apple macOS gesprochen, unterstützt Firefox jetzt auch mehrere Sprachen im gleichen Dokument.

Mehr Sicherheit für Firefox-Nutzer

Auch in Firefox 129 wurden wieder mehrere Sicherheitslücken geschlossen. Alleine aus Gründen der Sicherheit ist ein Update auf Firefox 129 daher für alle Nutzer dringend empfohlen.

Firefox verwendet ab sofort standardmäßig https:// anstelle von http://, wenn das Protokoll bei Eingabe einer Internetadresse nicht explizit angegeben wird. Ist die Seite nicht via https:// erreichbar, fällt Firefox automatisch auf http:// zurück.

HTTPS-DNS-Einträge können jetzt auf Windows 11 und Linux mit dem DNS-Resolver des Betriebssystems aufgelöst werden. Zuvor musste dazu DNS über HTTPS aktiviert werden. Diese Fähigkeit ermöglicht die Nutzung von HTTP/3 ohne die Verwendung des Alt-Svc-Headers, aktualisiert Anfragen auf HTTPS, wenn der DNS-Eintrag vorhanden ist, und ermöglicht eine breitere Nutzung von Encrypted Client Hello (ECH).

Auf Geräten mit 64-Bit-Betriebssystem und mindestens 8 GB RAM wurde der in Nightly-Versionen bereits seit über fünf Jahren aktive Probabilistic Heap Checker (PHC) aktiviert, der beim Finden und Diagnostizieren von Speicherfehlern hilft, indem nach dem Zufallsprinzip eine Handvoll Speicherzuweisungen aufgefüllt werden, um Pufferüberläufe und Use-after-Free-Zugriffe zu erkennen. Wird ein solches Problem erkannt, wird ein besonders detaillierter Absturzbericht an Mozilla gesendet.

Verbesserungen der Entwicklerwerkzeuge

Wie schon in den vergangenen Versionen waren auch in Firefox 129 wieder Performance-Verbesserungen ein wesentlicher Fokus für die Entwicklerwerkzeuge.

Weitere Warnungen für „inaktives CSS“ wurden hinzugefügt, beispielsweise wenn die float-Eigenschaft falsch verwendet wird, Tabellen-Eigenschaften außerhalb von Tabellen verwendet werden oder box-sizing bei Elementen, welche die Breite / Höhe ignorieren.

Die Unterstützung für das Chrome DevTools Protocol (CDP) ist ab sofort standardmäßig deaktiviert. Nutzer von Automatisierungstools sollten auf das W3C WebDriver BiDi-Protokoll umstellen.

Verbesserungen der Webplattform

Unterstützung für @starting-style und transition-behavior in CSS wurden hinzugefügt.

Aus Webkompatibilitätsgründen wird in CSS als Alternative zu font-feature-settings jetzt auch -webkit-font-feature-settings sowie in JavaScript das veraltete Event textInput unterstützt.

MediaCapabilities.decodingInfo() kann nun Dekodierungsinformationen für eine bestimmte verschlüsselte Medienkonfiguration sowie für unverschlüsselte Medien abrufen, sodass Anwendungen im Voraus erkennen können, ob die Konfiguration unterstützt wird und ob der Inhalt reibungslos und energiesparend wiedergegeben werden kann.

Firefox löst jetzt Events für eine synchrone XMLHttpRequest aus, bevor die Events für eine laufende asynchrone XMLHttpRequest ausgelöst werden. Dies behebt einen seit langem bestehenden Unterschied im Verhalten gegenüber anderen Browsern.

Dies war nur eine kleine Auswahl der Verbesserungen der Webplattform. Eine vollständige Auflistung lassen sich in den MDN Web Docs nachlesen.

Der Beitrag Mozilla veröffentlicht Firefox 129 erschien zuerst auf soeren-hentzschel.at.

Linux-Grundlagen: Effizient mit der Kommandozeile arbeiten (mit Claus und Hauke)

06. August 2024 um 14:04

💾

Die meisten Linux-Distributionen bringen heute eine grafische Desktopoberfläche mit, die kaum Wünsche offen lässt. Aber mit ein bisschen Übung geht Manches schneller, wenn man es nicht über Mausklicks erledigt, sondern über Tastaturbefehle. Gerade in Kombination mit einer grafischen Oberfläche ist ein Kommandozeilenfenster - auch Shell genannt - ein starkes Werkzeug, das ganz nach persönlichem Geschmack eingesetzt werden kann.
Hauke und Claus teilen mit euch, wie sie die Shell benutzen und was ihre Lieblingsabkürzungen sind,
um Zeit zu sparen oder sich schlicht nerdig-cool zu fühlen.

Wenn Du das Video unterstützen willst, dann gib bitte eine Bewertung ab, und schreibe einen Kommentar. Vielen Dank!

--------------------

Links:

Forum: https://forum.linuxguides.de/
Haukes Webseite: https://goos-habermann.de/index.php
Nicht der Weisheit letzter Schluß: youtube.com/@nichtderweisheit
Linux Guides Admin: https://www.youtube.com/@LinuxGuidesAdmin

Professioneller Linux Support*: https://www.linuxguides.de/linux-support/
Linux Mint Kurs für Anwender*: https://www.linuxguides.de/kurs-linux-mint-fur-anwender/
Ubuntu Kurs für Anwender*: https://www.linuxguides.de/ubuntu-kurs-fuer-anwender/
Linux für Fortgeschrittene*: https://www.linuxguides.de/linux-kurs-fuer-fortgeschrittene/
Offizielle Webseite: https://www.linuxguides.de
Tux Tage: https://www.tux-tage.de/
Forum: https://forum.linuxguides.de/
Unterstützen: http://unterstuetzen.linuxguides.de
Twitter: https://twitter.com/LinuxGuides
Mastodon: https://mastodon.social/@LinuxGuides
Matrix: https://matrix.to/#/+linuxguides:matrix.org
Discord: https://www.linuxguides.de/discord/
Kontakt: https://www.linuxguides.de/kontakt/
BTC-Spende: 1Lg22tnM7j56cGEKB5AczR4V89sbSXqzwN


Haftungsausschluss:
-------------------------------------
Das Video dient lediglich zu Informationszwecken. Wir übernehmen keinerlei Haftung für in diesem Video gezeigte und / oder erklärte Handlungen. Es entsteht in keinem Moment Anspruch auf Schadensersatz oder ähnliches.

*): Werbung

NocoDB Crashkurs Teil 4 - Warenein- und Ausgang im ERP: Verknüpfungen, Summen, Rollup und if-Abfrage

06. August 2024 um 13:00

💾

In diesem Video zeigt Jean, wie man ein beispielhaftes ERP-System in NocoDB erstellt. Am Beispiel von Warenein- und Ausgangstabellen wird demonstriert, wie Tabellen miteinander verknüpft werden können und man eine etwas komplizierte Formel umsetzen kann. Es werden zudem Rollup-Felder und if-Abfragen behandelt.
Wenn Du das Video unterstützen willst, dann gib bitte eine Bewertung ab, und schreibe einen Kommentar. Vielen Dank!


Terminal Befehle:
-------------------------------------
NocoDB updaten (im gleichen Ordner wie docker-compose.yml ausführen)
sudo docker-compose pull
sudo docker-compose up -d


Links:
-------------------------------------
NocoDB-Playlist: https://www.youtube.com/playlist?list=PLhvaM7uJr1PDEw7I24kZYXwxV5tfybmjm

Linux-Guides Merch*: https://linux-guides.myspreadshop.de/
Professioneller Linux Support*: https://www.linuxguides.de/linux-support/
Linux-Arbeitsplatz für KMU & Einzelpersonen*: https://www.linuxguides.de/linux-arbeitsplatz/
Linux Mint Kurs für Anwender*: https://www.linuxguides.de/kurs-linux-mint-fur-anwender/
Offizielle Webseite: https://www.linuxguides.de
Forum: https://forum.linuxguides.de/
Unterstützen: http://unterstuetzen.linuxguides.de
Mastodon: https://mastodon.social/@LinuxGuides
X: https://twitter.com/LinuxGuides
Instagram: https://www.instagram.com/linuxguides/
Kontakt: https://www.linuxguides.de/kontakt/

Inhaltsverzeichnis:
-------------------------------------
0:00 Begrüßung
0:25 Aktualisieren
1:39 Tabelle für Waren (Felder, QR-Code)
6:47 Wareneingang (Tabellen verknüpfen)
15:04 Wareneintrag erstellen
16:48 Übersicht erstellen (Rollup-Feld)
18:55 Warenausgang
21:56 Gesamtbestand (Addition und if-Abfrage)
2/:00 Zusammenfassung und Hinweis zu Features
29:29 Verabschiedung

Haftungsausschluss:
-------------------------------------
Das Video dient lediglich zu Informationszwecken. Wir übernehmen keinerlei Haftung für in diesem Video gezeigte und / oder erklärte Handlungen. Es entsteht in keinem Moment Anspruch auf Schadensersatz oder ähnliches.

*) Werbung

In 2024 wurde ein Lenovo T570 für Debian Cinnamon beschafft

05. August 2024 um 05:00

Vor einigen Wochen habe ich um Empfehlungen für Laptop-Hardware, eine Linux-Distribution und eine Desktopumgebung gebeten. Für die vielen Rückmeldungen, die ich erhalten habe, an dieser Stelle vielen Dank.

Heute möchte ich euch wissen lassen, welche Kombination es geworden ist.

Die Hardware

Ich habe mich für ein wiederaufbereitetes Lenovo T570 entschieden, welches für günstige 240 Euro im Onlinehandel verfügbar war. Da war dann auch noch für 30 Euro ein Schutzbrief drin, der Flüssigkeiten und Stürze abdeckt.

Mit dem Intel Core-i5 der 6. Generation, 8 GB RAM und einer 256 GB SSD bietet dieses Gerät mehr als ausreichend Leistung.

Das Gerät weist einige Gebrauchsspuren auf. Den Preis empfinde ich dennoch günstig, da Geräte dieser Klasse nicht unter 1.000 Euro Neupreis zu bekommen sind. Viel wichtiger jedoch ist, dass der Nutzer sich ebenfalls über das Gerät freut.

Linux-Distribution und Desktopumgebung

Wer die Wahl hat, hat die Qual. Um mir einen ersten Eindruck zu verschaffen, habe ich mir einen USB-Stick mit Ventoy und einer Auswahl an verschiedenen Linux-Distributionen erstellt. So konnte ich die verschiedenen Live-Systeme booten und prüfen, ob alles funktioniert und wie es sich in der Oberfläche navigieren lässt.

Schlussendlich habe ich mich für Debian Cinnamon entschieden. Dies machte nach dem ersten kurzen Test insgesamt den besten Eindruck. Firefox, Thunderbird, Bookmarks, Desktop-Verknüpfungen und Zoom-Client waren schnell eingerichtet und das Gerät bereit zur Übergabe.

Die Übergabe ist erfolgt

Mit der Übergabe gab es eine kurze Einweisung in das Gerät:

  • Wo schließt man das Netzteil an
  • Wo schaltet man das Gerät ein
  • Wie meldet man sich an
  • Wo findet man die Programme inkl. Tests aller wichtigen Dienste
  • Druck eines Anhangs aus Thunderbird
  • Wie fährt man das Gerät herunter

So reibungslos hat das bisher noch nie geklappt. Die Nutzungserfahrung ist positiv. Wir freuen uns.

Firefox 130: Lokale KI generiert Alternativtexte für Bilder in PDF-Dateien

04. August 2024 um 19:58

Eingefügte Bilder in PDF-Dateien können bereits über Firefox mit einem Alternativtext für Menschen mit Sehbehinderung versehen werden. Firefox 130 kann die Alternativtexte dank einer lokalen KI automatisch generieren.

PDF-Dateien betrachten ist in jedem Browser möglich. Firefox gehört zu den wenigen Browsern mit einem PDF-Editor. So kann auf PDF-Dateien gezeichnet werden, es können aber auch Texte und Bilder eingefügt werden.

Dabei besitzt Firefox bereits die Möglichkeit, einen Alternativtext für eingefügte Bilder zu hinterlegen. Dies ist aus Gründen der Barrierefreiheit wichtig, damit die Bildinformation auch für Menschen mit eingeschränkten Sehfähigkeiten bis hin zur Blindheit zugänglich bleibt.

Eine lokale KI kann den Anwender ab Firefox 130 dabei unterstützen. Damit schlägt Firefox basierend auf dem Bildinhalt automatisch einen Beschreibungstext für das hinterlegte Bild vor. Lokale KI bedeutet, dass sich Firefox das entsprechende KI-Modell bei der ersten Verwendung des Features herunterlädt und die Arbeit dann auf dem Gerät des Anwenders geschieht. Die eingefügten Bilder werden also zu keinem Zeitpunkt an Mozilla oder eine Drittanbieter-Cloud gesendet.

Alternativtext-Generierung für Bilder i PDF-Dateien, Firefox 130

Nutzer einer Nightly-Version von Firefox 130 müssen hierfür derzeit noch drei Schalter per about:config auf true setzen: browser.ml.enable, pdfjs.enableAltText und pdfjs.enableUpdatedAddImage. Die Vorschläge werden derzeit noch in englischer Sprachige generiert.

Der Beitrag Firefox 130: Lokale KI generiert Alternativtexte für Bilder in PDF-Dateien erschien zuerst auf soeren-hentzschel.at.

Linux Mint 22 installieren und einrichten - Crashkurs für Anfänger und Umsteiger

02. August 2024 um 13:00

💾

In diesem Video zeigt Jean, wie man Linux Mint 22 parallel zu Windows oder direkt als neues Betriebssystem installiert und einrichtet. Er gibt nützliche Tipps für Umsteiger und Neulinge, damit Dir der Start mit Linux gelingt!
Wenn Du das Video unterstützen willst, dann gib bitte eine Bewertung ab, und schreibe einen Kommentar. Vielen Dank!



Links:
-------------------------------------
Linux Mint downloaden: https://linuxmint.com/
Balena Etcher (Startfähigen USB-Stick erstellen): https://etcher.balena.io/
Alternative zu Etcher: https://rufus.ie/de/
FreeOffice: https://www.freeoffice.com/de/

Nachträgliche Verschlüsselung: https://www.youtube.com/watch?v=OXekJ2gz3pM
Libre Office Crashkurse:
Writer (Text-Dokumente) https://www.youtube.com/watch?v=QyakKLNv7Yg
Calc (Tabellenkalkulation) https://www.youtube.com/watch?v=ioAxN27CIUA
Linux Anwendungen installieren: https://www.youtube.com/watch?v=35cgN_dPgGw

Linux-Guides Merch*: https://linux-guides.myspreadshop.de/
Professioneller Linux Support*: https://www.linuxguides.de/linux-support/
Linux-Arbeitsplatz für KMU & Einzelpersonen*: https://www.linuxguides.de/linux-arbeitsplatz/
Linux Mint Kurs für Anwender*: https://www.linuxguides.de/kurs-linux-mint-fur-anwender/
Offizielle Webseite: https://www.linuxguides.de
Forum: https://forum.linuxguides.de/
Unterstützen: http://unterstuetzen.linuxguides.de
Mastodon: https://mastodon.social/@LinuxGuides
X: https://twitter.com/LinuxGuides
Instagram: https://www.instagram.com/linuxguides/
Kontakt: https://www.linuxguides.de/kontakt/

Inhaltsverzeichnis:
-------------------------------------

0:00 Begrüßung
0:26 Was brauche ich für die Installation?
1:22 Linux downloaden
2:18 Etcher oder Rufus downloaden
3:18 Partitionierung (nur, wenn Windows behalten werden soll)
5:29 startfähigen USB-Stick erstellen
7:18 Boot-Menü öffnen und vom USB-Stick starten
8:59 Linux Mint installieren
17:08 Einrichten
17:39 Systemschnappschüsse
20:40 Treiber und Aktualisierungen
25:00 Systemeinstellungen
25:54 Firewall
26:28 Forum
27:35 Arbeitsfläche: Übersicht und Tipps
30:51 Office-Alternativen
32:48 Anwendungen installieren
34:27 Rechner einrichten mit Linux-Assistant
38:00 Anwendungsverwaltung
40:45 Tipps für Umsteiger
42:00 Warpinator
44:19 Verabschiedung



Haftungsausschluss:
-------------------------------------
Das Video dient lediglich zu Informationszwecken. Wir übernehmen keinerlei Haftung für in diesem Video gezeigte und / oder erklärte Handlungen. Es entsteht in keinem Moment Anspruch auf Schadensersatz oder ähnliches.

*) Werbung

Aider — Sieht so die Zukunft des Codings aus?

02. August 2024 um 11:34

Bei der Arbeit für unser KI-Buch bin ich kürzlich über Aider gestolpert. Dabei handelt es sich um ein Konsolenwerkzeug zum Coding. Im Gegensatz zu anderen Tools (ChatGPT, GitHub Copilot etc.), die Sie beim Coding nur unterstützen, ist Aider viel selbstständiger: Sie sagen, was Ihr Programm machen soll. Aider erzeugt die notwendigen Dateien, implementiert die Funktion und macht gleich einen git-Commit. Sie testen den Code, optimieren vielleicht ein paar Details, dann geben Sie Aider weitere Aufträge. Den Großteil der Coding-Aufgaben übernimmt Aider. Sie sind im Prinzip nur noch für das Ausprobieren und Debugging zuständig.

Wie Sie gleich sehen werden, funktioniert das durchaus (noch) nicht perfekt. Aber das Konzept ist überzeugend, und es ist verblüffend, wie viel schon klappt. Aider kann auch auf ein bestehendes Projekt angewendet werden, das ist aber nicht Thema dieses Blog-Beitrags. Generell geht es mir hier nur darum, das Konzept vorzustellen. Viel mehr Details können Sie in der guten Dokumentation nachlesen. Es gibt auch diverse YouTube-Videos. Besonders überzeugend fand ich Claude 3.5 and Aider: Use AI Assistants to Build AI Apps.

Voraussetzungen

Damit Sie Aider ausprobieren können, brauchen Sie einen Rechner mit einer aktuellen Python-Installation, git sowie einen (kostenpflichtigen!) Key für ein KI-Sprachmodell. Ich habe meine Tests mit GPT-4o von OpenAI sowie mit Claude 3.5 Sonnet (Anthrophic) durchgeführt. Ein wenig überraschend hat Claude 3.5 Sonnet merklich besser funktioniert.

Damit Sie einen API-Key bekommen, müssen Sie bei OpenAI oder Anthrophic einen Account anlegen und Ihre Kontakt- und Kreditkartendaten hinterlegen. Sie kaufen dort vorab »Credits«, die dann durch API-Abfragen aufgebraucht werden. Für erste Tests reichen 10 EUR aus. Sie müssen also kein Vermögen investieren, um Aider auszuprobieren.

Installation von aider

aider ist ein Python-Programm. Die Installation führen Sie am besten in einem Virtual Environment aus, im Prinzip so:

mkdir aider
cd aider
python3 -m venv .
source bin/activate
pip3 install aider-chat

Jetzt müssen Sie noch eine Umgebungsvariable für Ihren API-Key definieren (am besten in .bashrc oder .zshrc).

export OPENAI_API_KEY='sk-xxxxx'
export ANTHROPIC_API_KEY='sk-yyyyy'

Falls beide Variablen definiert sind, nutzt Aider das Modell Sonnet von Anthrophic. Mit den Optionen --4o oder --sonnet können Sie das Sprachmodell explizit auswählen. Aider unterstützt auch andere Sprachmodelle, empfiehlt aber explizit diese beiden Modell sowie DeepSeek Coder (siehe auch https://aider.chat/docs/leaderboards/).

»Hello World« mit GPT-4o von OpenAI

Um Aider kennenzulernen habe ich mir gedacht, ich beauftrage das Tool, ein ganz simples Webscraping-Tool in Python zu programmieren, das aus einer Wetterseite von orf.at die aktuelle Temperatur in Graz extrahiert. (Warnung: Das Script hat reinen Demonstrations-Charakter. Das regelmäßige Auslesen von Wetterseiten und die Nutzung der so gewonnen Daten — wofür auch immer — ist bei nahezu allen Websites verboten.)

Für den Test habe ich ein neues Verzeichnis eingerichtet, dieses aktiviert und (immer noch im Virtual-Environment) aider gestartet.

mkdir ~/my-projects/test1
cd ~/my-projects/test1
aider --4o
  No git repo found, create one to track GPT's changes (recommended)? y
  Models: gpt-4o with diff edit format, weak model gpt-4o-mini
  Git repo: .git with 0 files
  Repo-map: using 1024 tokens
  Use /help <question> for help, run "aider --help" to see cmd line args

Die weitere Bedienung erfolgt durch Konsolenkommandos. Ich habe damit begonnen, mit /web die Wetterseite zu laden. Beim ersten /web-Kommando installiert Aider nach einer Rückfrage das Webscraping-Tool Playwright. Mit der folgenden Frage habe ich überprüft, dass Aider den Inhalt der gelesenen Seite versteht.

> /web https://wetter.orf.at/steiermark

I see that you've shared a webpage content. How can I assist you with this? Are
you looking to extract specific information, transform the data, or something
else? Please provide more details about what you need.

Tokens: 7,057 sent, 43 received. Cost: $0.04 request, $0.04 session.

> what is the temperature in Graz?

The temperature in Graz, according to the provided content, is 27.2°C.

Nach diesem einleitenden Test habe ich nun versucht, eine App zu entwickeln, die diese Aufgabe übernimmt. Aider erzeugt eine neue Datei und speichert die Datei dort. Von der Programmiersprache war nie die Rede, Aider hat sich für Python entschieden. In einem zweiten Prompt habe ich Aider darum gebeten, das Projekt mit einer requirement-Datei auszustatten.

> write a Python script which extracts the temperature of Graz 
  from https://wetter.orf.at/steiermark/

Add https://wetter.orf.at/steiermark/ to the chat? y

Let's create a Python script that extracts the temperature of Graz from the
given URL. We'll use the requests library to fetch the webpage content and
BeautifulSoup from the bs4 library to parse the HTML.

Here is the script:

    import requests
    from bs4 import BeautifulSoup

    def get_graz_temperature():
        url = "https://wetter.orf.at/steiermark/"
        response = requests.get(url)
        response.raise_for_status()  # Ensure we notice bad responses

        soup = BeautifulSoup(response.text, 'html.parser')
        graz_section = soup.find('a', href="https://wetter.ORF.at/steiermark/grazuniversitaet/")

        if graz_section:
            temperature_text = graz_section.find_next_sibling(text=True)
            if temperature_text:
                temperature = temperature_text.strip().split(' ')[0]
                return temperature
        return None

    if __name__ == "__main__":
        temperature = get_graz_temperature()
        if temperature:
            print(f"The temperature in Graz is {temperature}°C.")
        else:
            print("Could not find the temperature for Graz.")

This script will:

 1 Fetch the webpage content from the given URL.
 2 Parse the HTML content to find the section related to Graz.
 3 Extract and print the temperature for Graz.

You can run this script in your Python environment to get the current
temperature in Graz.

Tokens: 7,196 sent, 314 received. Cost: $0.04 request, $0.11 session.

Allow creation of new file new_file_path: extract_graz_temperature.py? y

Applied edit to new_file_path: extract_graz_temperature.py
Commit beb001f feat: add script to extract temperature of Graz from weather website
You can use /undo to revert and discard commit beb001f.

> add a requirement file to the project

To add a requirements file to the project, we need to create a new file named
requirements.txt and list the necessary dependencies.

requests
beautifulsoup4

Tokens: 2,372 sent, 66 received. Cost: $0.01 request, $0.13 session.

In einem zweiten Terminal-Fenster oder -Tab habe ich nun ein weiteres Virtual Environment eingerichtet, um alle erforderlichen Module zu installieren und das neue Script zu testen.

cd ~/my-projects/test1
python3 -m venv .
source bin/activate
pip3 install -r requirements.txt

Dabei habe ich auch schon den ersten Fehler entdeckt. Aider hat das neue Python-Script nicht extract_graz_temperature.py genannt, sondern new_file_path: extract_graz_temperature.py. Diesen Fehler habe ich mit git behoben.

git mv 'new_file_path: `extract_graz_temperature.py' extract_graz_temperature.py
git commit -m 'fixed wrong filename'

Der erste Test verläuft enttäuschend:

python3 extract_graz_temperature.py 

  extract_graz_temperature.py:13: DeprecationWarning: The 
  'text' argument to find()-type methods is deprecated. 
  Use 'string' instead.

  Could not find the temperature for Graz.

Der Code enthält offensichtlich einen veralteten Parameter. Zurück im ersten Terminal/Tab bitte ich Aider, das Problem zu beheben. Aider sieht den Fehler ein und korrigiert den Code.

> tried to run the code, got this error: 
  extract_graz_temperature.py:13: DeprecationWarning: The 'text' 
  argument to find()-type methods is deprecated. Use 'string'
  instead. Can you fix the code? I renamed the code file to
  extract_graz_temperature.py.

extract_graz_temperature.py
Add these files to the chat? y

 <<<<<<< SEARCH
         temperature_text = graz_section.find_next_sibling(text=True)
 =======
         temperature_text = graz_section.find_next_sibling(string=True)
 >>>>>>> REPLACE

...

Tokens: 2,585 sent, 86 received. Cost: $0.01 request, $0.14 session.

Aber auch nach diesem Fix funktioniert das Script nicht. Das Problem ist, dass das Script die Struktur der Wetter-Website nicht korrekt analysiert hat und Beautiful Soup (eine HTML-Parser-Bibliothek für Python) falsch anwendet. Etwas enttäuscht habe ich an dieser Stelle den ersten Versuch abgebrochen. Die bis dahin angefallenen Kosten von 14 US Cent sind immerhin verschmerzbar.

»Hello World« mit Sonnet 3.5 von Anthrophic

Anstatt mich mit der Fehlersuche zu ärgern, habe ich das ganze Experiment mit dem Sprachmodell Sonnet wiederholt. Die folgenden Ausgaben sind stark gekürzt.

mkdir ~/my-projects/test2
cd ~/my-projects/test2
aider --sonnet

> /web https://wetter.orf.at/steiermark

> what is the temperature in Graz?

Based on the information provided in the weather report for Steiermark, there
are multiple temperature readings for Graz:

 1 Graz Heinrichstrasse: 30.3°C
 2 Graz-Straßgang: 29.8°C
 3 Graz-Thalerhof: 29.2°C
 4 Graz-Universität: 30.3°C

The temperatures in Graz range from 29.2°C to 30.3°C, with most locations
reporting around 30°C. The warmest spots in Graz appear to be Heinrichstrasse
and the University area, both at 30.3°C.

Tokens: 7,323 sent, 129 received. Cost: $0.02 request, $0.05 session.

> write a Python script which extracts the temperature of Graz 
  from https://wetter.orf.at/steiermark/

...

> add a requirement file to the project

...

In einem weiteren Terminal habe ich nun auch für dieses Projekt ein Python Environment eingerichtet und das Script ausprobiert:

(Virtual Environment einrichten, Requirements mit pip installieren ...)

python3 extract_graz_temperature.py 

  Graz Heinrichstrasse: 30,3 °C
Aider in einem Terminal-Fenster

Bingo! Das Script wählt eine der vier Messstellen von Graz aus und zeigt die Temperatur dort an. Wunderbar.

Dementsprechend ermutigt habe ich mein Glück weiter strapaziert. Das Script soll die Durchschnittstemperatur aller vier Messstellen ausrechnen. Zurück in Terminal 1 mit Aider. Wie die folgenden Prompts zeigen, sind fünf Versuche notwendig, bis Aider endlich funktionierenden Code zusammenbringt. (Die ursprüngliche Fassung versucht aus Zeichenketten wie ‚30,3 C‘ in Fließkommazahlen umzuwandeln. Es ignoriert sowohl das deutsche Dezimalformat als auch die Zeichenkette ‚ C‘ am Ende. Die ganze Prozedur dauert inklusive meiner Tests eine Viertelstunde.

> please change extract_graz_temperature.py to calculate the average temperature for Graz

> does not work because of german number format (1,3 instead of 1.3); please fix

> still fails, probably because temperature string contains ' C' at the end; please fix once more

> still fails, the space in ' C' is a fixed space; try again

> it's the unicode fixed blank; just drop the last two characters

Tokens: 3,153 sent, 211 received. Cost: $0.01 request, $0.16 session.

Immerhin, das Script funktioniert jetzt:

python3 extract_graz_temperature.py 

  Average temperature for Graz: 29.9°C

Die API-Kosten für die Entwicklung des Scripts betrugen 13 US Cents. Meine Arbeitszeit habe ich nicht gerechnet ;-)

Fazit

Im Internet finden Sie diverse Videos, wo Aider scheinbar auf Anhieb perfekt funktioniert. Meine Tests haben gezeigt, dass das durchaus nicht immer der Fall ist.

Was mich trotz aller Fehler begeistert, ist das Konzept: Am besten führen Sie Aider in einem VSCode-Terminal aus, während in VSCode das Projektverzeichnis geöffnet ist. (Das Ganze funktioniert natürlich auch mit jedem anderen Editor.) Dann haben Sie eine grandiose Umgebung zum Testen des Codes sowie für dessen Weiterentwickung mit Aider.

Ja, weder Aider noch die von Aider genutzten Sprachmodelle sind zum jetzigen Zeitpunkt perfekt. Aber das Potenzial, das hier schlummert, ist enorm. Sie sind damit quasi eine Abstraktionsebene über dem Code. Sie geben Aider Kommandos, wie es den Code weiterentwickeln oder verbessern soll, ohne sich im Detail mit Funktionen, Schleifen oder Variablen zu beschäftigen. (Dieses Wissen brauchen Sie zum Debugging aber weiterhin!)

Quellen/Links

Firefox 130: Leichterer Vorab-Zugang zu kommenden Features

02. August 2024 um 10:23

Mit Firefox 130 führt Mozilla einen neuen Abschnitt in den Einstellungen von Firefox ein, über welchen Nutzer kommende Features vorab aktivieren und testen können.

Nutzer einer Nightly-Version von Firefox kennen bereits seit langer Zeit den Abschnitt „Nightly Experimente“ in den Firefox-Einstellungen. Ab Firefox 130 wird dieser Abschnitt unter dem neuen Namen „Firefox Labs“ auch in Beta- sowie finalen Firefox-Versionen zur Verfügung stehen.

Im Bereich „Firefox Labs“ lassen sich verschiedene Browser-Funktionen und Plattform-Features finden, an denen Mozilla arbeitet und deren Aktivierung für einen späteren Zeitpunkt geplant ist. Auf diese Weise kann Mozilla zusätzliches Feedback einholen, bevor die Funktionen fertig sind und flächendeckend ausgerollt werden. Zwar gibt es mit about:config bereits einen Mechanismus zur Vorab-Aktivierung neuer Features, allerdings müssen die entsprechenden Optionsnamen dafür bekannt sein. Die Seite „Firefox Labs“ macht bestimmte Funktionen sichtbar und gibt dem Nutzer zusätzlich eine Beschreibung, teilweise auch mit erklärenden Links.

Firefox Labs in Firefox 130

Zu den neuen Features, die sich darüber bereits aktivieren lassen, gehören zum Beispiel eine Chatbot-Integration sowie ein automatischer Bild-im-Bild-Modus für Videos. Auch ein globales Steuerelement zur Deaktivierung von Kamera und Mikrofon für aktive WebRTC-Kommunikation in allen Tabs oder Plattform-Features wie die Unterstützung für das Bildformat JPEG XL, CSS Masonry Layout oder die WebGPU-API lassen sich, neben weiteren Dingen, an dieser Stelle bereits vorab aktivieren.

Der Beitrag Firefox 130: Leichterer Vorab-Zugang zu kommenden Features erschien zuerst auf soeren-hentzschel.at.

Firefox 130: Automatischer Bild-im-Bild-Modus bei Tabwechsel

31. Juli 2024 um 20:37

Mozilla hat ein neues Feature in der Nightly-Version von Firefox 130 implementiert, welches es erlaubt, automatisch den Bild-im-Bild-Modus für Videos zu aktivieren, sobald der Tab gewechselt wird.

Der sogenannte Bild-im-Bild-Modus erlaubt es, Videos von der Website loszulösen und über andere Tabs und sogar Anwendungen zu legen. Innerhalb des losgelösten Video-Fensters kann die Wiedergabe pausiert und wieder gestartet werden, man sieht den Wiedergabe-Fortschritt und kann an eine andere Stelle des Videos springen, ein Wechsel in den Vollbildmodus ist möglich, der Ton kann aus- und wieder eingeschaltet werden, die Lautstärke kann geändert werden und auch Untertitel werden auf vielen Plattformen unterstützt.

Automatischer Bild-im-Bild-Modus für Videos, Firefox 130

Nutzer einer Nightly-Version von Firefox 130 können eine neue Funktion testen. Die Aktivierung erfolgt über den Reiter „Firefox Labs“ in den Firefox-Einstellungen.

Automatischer Bild-im-Bild-Modus für Videos, Firefox 130

Wird die neue Funktion aktiviert und ein Video auf einer Website wiedergegeben, startet Firefox automatisch den Bild-im-Bild-Modus, wenn der Tab gewechselt wird. Sobald man wieder in den ursprünglichen Tab zurückkehrt, wird der Bild-im-Bild-Modus ebenso automatisch wieder beendet.

Der Beitrag Firefox 130: Automatischer Bild-im-Bild-Modus bei Tabwechsel erschien zuerst auf soeren-hentzschel.at.

Probleme mit VirtualBox 6.1 unter Ubuntu 22.04

31. Juli 2024 um 12:48

Wer sagte noch gleich, dass klassische Release-Distributionen den Rolling Releases überlegen sind, weil sie so stabil seien? Dass es Ausnahmen von der Regel gibt, durfte ich heute erleben. Ich liebe diese Tage, wo auf einmal die normalsten Dinge nicht mehr gehen...

Es galt etwas in einem Softwareprojekt zu testen, das ich hierfür erstmal wieder in Gang bringen musste. Dabei setzt das Projekt auf Vagrant in Kombination mit VirtualBox. Ich habe dazu erstmal das Hostsystem aktualisiert und versucht, mit Vagrant die Maschine aufzusetzen – um dann feststellen zu dürfen, dass Vagrant einen Fehler wirft.

Was ging schief?

Konkret war VirtualBox in die Guru Meditation gefallen. Das tritt dann auf, wenn ein besonders schwerer Fehler auftritt, sodass das Programm nicht ordentlich weiterlaufen kann. Dabei war doch gar nicht viel am Entwicklungssystem verändert worden? Ich halte für solche Entwicklungsprojekte dedizierte Entwicklungsmaschinen vor, auf denen sich das Betriebssystem über die Jahre nicht verändert und die für die tägliche Arbeit auch entsprechend nicht eingesetzt werden. Was ich aber tue: die Zwischenupdates einspielen.

Stellt sich heraus, dass unter Ubuntu 22.04 LTS die Kernelversionen ab 5.15.0-112 den Fehler VERR_VMM_SET_JMP_ABORTED_RESUME wohl verursachen. Der Bug wird schon auf Launchpad, bei ubuntuusers.de und auch im VirtualBox-Forum diskutiert.

Wie kann man das fixen?

Man könnte einereits den Kernel downgraden bzw. einen alten Kernel nutzen, was aber nur kurzfristig Abhilfe schafft. Alternativ gibt es die Flucht nach vorne: entweder Ubuntu auf 24.04 LTS upgraden (habe ich nicht probiert, scheinbar ist der automatische Update-Pfad auch noch gar nicht freigeschaltet) oder VirtualBox auf Version 7.0 updaten. Ich habe mich für letzteren Schritt entschieden und dabei auf die offiziellen VirtualBox-Pakete von Oracle zurückgegriffen, da in den offiziellen Ubuntu-Repos für die Version nur Version 6.1 enthalten ist (was ja bei LTS-Versionen eigentlich auch sinnvoll ist). Das ist natürlich keine schöne Lösung, da man sich fremde Pakete in das System holt – aber sie funktioniert. Man muss allerdings auch bedenken, dass die aktuelle Vagrant-Version, die in den Ubuntu-Repos für 22.04 (jammy) enthalten ist, VirtualBox 7.0 noch gar nicht unterstützt. Folglich muss man dann auch auf die offiziellen Repositories von Hashicorp zurückgreifen – was allerdings angesichts der lizenzrechtlichen Änderungen sowieso bald nötig wird.

Was lernen wir daraus?

Software muss laufend auf Regressionsfehler getestet werden, die durch Updates an anderen Stellen passieren können. Ja, diese Fehler können immer passieren und sind teilweise schwer zu verhindern. Gleichzeitig muss man aber selber auch seine Setups regelmäßig testen, um schnell zu erkennen, dass ggfs. das Kernelupdate schuld war. Mittlerweile vermutet man das aufgrund der Stabilität der Systeme schon fast gar nicht mehr. Ansonsten geht viel Zeit aufgrund der Fehlersuche ins Land. Da ist es auch wenig zuträglich, dass die VirtualBox-Logs scheinbar keine Log Level beinhalten...

Ein Fix seitens Ubuntu steht für diesen Bug im Übrigen noch aus. Theoretisch sollte sich dann das Thema von selbst erledigen, weil die betreffende Änderung im Kernel einfach reverted wird. Ich wollte zwischenzeitlich aber die Workarounds einmal auflisten, sollte jemand ähnliche Probleme haben.

Gemini, ChatGPT & Co: Chatbot-Integration in Firefox bekommt Verbesserungen

30. Juli 2024 um 20:05

Mozilla experimentiert mit einer KI-basierten Chatbot-Integration für Firefox. Eine Besonderheit ist, dass sich Mozilla dabei nicht auf einen Anbieter festlegt, sondern dem Anwender die Wahl zwischen verschiedenen Anbietern gibt, darunter Google Gemini und ChatGPT. Mittlerweile gibt es weitere Verbesserungen zum Testen.

Nutzer einer Nightly-Version von Firefox können eine Chatbot-Integration in Firefox testen. Nach der Aktivierung durch den Nutzer stehen im Kontextmenü Funktionen zur Zusammenfassung des markierten Inhalts, zur Vereinfachung der Sprache sowie zu einem Wissenstest über den Inhalt zur Verfügung. Während die Chatbot-Integration zum Zeitpunkt meines Artikels im Juni noch über about:config zu aktivieren war, ist dies mittlerweile über eine sichtbare Option im Reiter „Firefox Labs“ der Browser-Einstellungen möglich.

Chatbot-Integration in Firefox

Zu den bisher bereits unterstützten Anbietern Google Gemini, ChatGPT, HuggingChat und Le Chat Mistral kam in der Zwischenzeit Anthropic Claude als fünfte Option hinzu.

Wird über about:config der neue Schalter browser.ml.chat.shortcuts per Doppelklick auf true geschaltet, erscheint jetzt ein KI-Symbol beim Markieren von Text. Fährt man über dieses mit der Maus herüber, hat man direkten Zugriff auf die Chatbot-Anfragen, die bisher nur via Kontextmenü zugänglich waren. Wird zusätzlich auch noch browser.ml.chat.shortcuts.custom auf true gesetzt, erscheint an dieser Stelle zusätzlich noch ein freies Textfeld, in welches eine benutzerdefinierte Anfrage eingetippt werden kann.

Chatbot-Integration in Firefox

Übrigens lassen sich auch eigene Prompts in Firefox hinterlegen. Diese erscheinen sowohl im Kontextmenü als auch hinter der neuen KI-Schaltfläche (wie im Screenshot oben zu sehen). Die bereits verfügbaren Prompts findet man in about:config als browser.ml.chat.prompts.0, browser.ml.chat.prompts.1 sowie browser.ml.chat.prompts.2. Nach dem gleichen Vorbild lassen sich browser.ml.chat.prompts.3, browser.ml.chat.prompts.4 etc. anlegen.

Der Beitrag Gemini, ChatGPT & Co: Chatbot-Integration in Firefox bekommt Verbesserungen erschien zuerst auf soeren-hentzschel.at.

Update auf Thunderbird 128 wird verteilt

29. Juli 2024 um 18:55

Die MZLA Technologies Corporation hat mit der Verteilung des automatischen Updates auf Thunderbird 128 begonnen.

Am 11. Juli 2024 wurde Thunderbird 128 veröffentlicht. Thunderbird 128 bringt gegenüber Thunderbird 115 einige Neuerungen. Automatische Updates von vorherigen Versionen waren zu diesem Zeitpunkt noch nicht aktiviert. Nun ist es so weit und bestehende Nutzer von Thunderbird 115 und älter erhalten ab sofort das Update auf Thunderbird 128.

Der Beitrag Update auf Thunderbird 128 wird verteilt erschien zuerst auf soeren-hentzschel.at.

Nextcloud auf dem RasPi – Teil 1

29. Juli 2024 um 04:00

Vor einiger Zeit habe ich beschlossen eine Serie von Artikeln zum Thema Nextcloud auf dem RasPi auf meinem Blog intux.de zu veröffentlichen. Ziel ist es, eine eigene Cloud zu erstellen, die produktiv nutzbar ist. Diese soll später über das Internet erreichbar sein.

Was benötigt man dafür?

Um langfristig sicherzustellen, dass alles funktioniert, empfehle ich, die neueste Hardware zu verwenden, wie den Raspberry Pi 5. Allerdings würde hier auch ein Einplatinencomputer der vorherigen Generation mit 4GB RAM ausreichen.

Hier eine Auflistung der für das Projekt eingesetzten Komponenten:

  • Raspberry Pi 5
  • offizielles Gehäuse für den Raspberry PI 5
  • offizielles Netzteil für den Raspberry PI 5 (8GB RAM)
  • 32GB MicroSD (SanDisk Extreme microSD UHS-I)

Vorbereitung

Diese kleine Anleitung soll helfen, das Projekt Nextcloud auf dem Raspberry Pi nicht nur umzusetzen, sondern auch besser zu verstehen. Der Schwerpunkt liegt dabei auf der Software und der Konfiguration. So können später auftretende Fehler besser lokalisiert und abgestellt werden.

Der Raspberry Pi wird als LAMP-Server (Linux, Apache, MariaDB, PHP) dienen, die Nextcloud zu betreiben. Wie man diese vier Bausteine aufsetzt, zeige ich im folgenden Abschnitt.

Mindmap LAMP-Server
LAMP-Server

Installation

Der erste Baustein der installiert wird, ist Linux. Hierbei handelt es sich um das Betriebssystem Raspberry Pi OS. Dieses spielt man ganz einfach mit dem Raspberry Pi Imager auf die MicroSD.

Hier wählt man (siehe Screenshot) das zu installierende Betriebssystem aus. In diesem Fall ist es das Raspberry Pi OS (64-bit). Im Imager können vorab einige Einstellungen vorgenommen werden. Ich werde in dieser Anleitung einfache Bezeichnungen und Passwörter verwenden. Diese können während der Installation entsprechend frei angepasst werden!

Raspberry Pi Imager - OS und SD-Karte auswählen
Raspberry Pi Imager – OS und SD-Karte auswählen
Raspberry Pi Imager - OS-Einstellungen vornehmen
Raspberry Pi Imager – OS-Einstellungen vornehmen

Über das Zahnrad des Imagers lässt sich das Raspberry Pi OS vorkonfigurieren. Hier trägt man für den Anfang die entsprechenden Daten ein:

Hostname: nextcloud
SSH aktivieren
Benutzername: radiouser
Passwort: geheim

Danach wählt man am PC/Notebook die MicroSD aus, auf die geschrieben werden soll.

Raspberry Pi Imager - Schreibvorgang
Raspberry Pi Imager – Schreibvorgang

Zum Schluss werden die Daten auf die MicroSD geflasht. Ist dies erledigt, kann die Karte ausgeworfen und in den vorbereiteten Raspbberry Pi (Kühlkörper, Gehäuse, Lüfter) geschoben werden. Dieser wird dann via LAN-Kabel mit dem heimischen Router verbunden und über das Netzteil mit Strom versorgt.

Natürlich könnte der RasPi auch via WLAN mit dem Router kommunizieren. Hiervon rate ich jedoch ab, da über die Funkverbindung oft nicht die volle Geschwindigkeit einer Ethernet-Verbindung genutzt werden kann. Weiterhin kann es zu Verbindungsabbrüchen bzw. -lücken kommen.

Nachdem der Raspberry Pi mit Strom versorgt wird, startet dieser. Ist der Raspberry Pi hochgefahren, kann dieser via arp-scan vom PC/Notebook im Netzwerk lokalisiert werden. In meinem Fall hat er die IP-Adresse 192.168.178.136.

sudo apt install arp-scan
sudo arp-scan -l
Identifizieren des RasPi mit arp-scan
Identifizieren des RasPi mit arp-scan

Zugriff auf den Pi erhalte ich nun via zuvor im Imager aktiviertem SSH-Zugang.

ssh Benutzer@IP-Adresse
Zugang via SSH
Zugang via SSH

Ist man eingeloggt, empfiehlt es sich die Lokalisierung über raspi-config auf deutsch (siehe Screenshots) umzustellen. Damit wird Datum und Uhrzeit des Servers an die europäische Zeitzone (Berlin) angepasst.

sudo raspi-config
raspi-config - Localisation Options
raspi-config – Localisation Options
raspi-config - Locale
raspi-config – Locale

Nun wählt man de_DE.UTF-8 UTF-8 aus und deaktiviert en_GB.UTF-8 UTF-8. Die deutsche Lokalisierung wird abschließend noch bestätigt.

raspi-config - de aktivieren
raspi-config – de aktivieren
raspi-config - en deaktivieren
raspi-config – en deaktivieren

Danach wird der Raspberry Pi mit

sudo reboot

neu gestartet. Ist dies geschehen, empfiehlt es sich, das OS zu aktualisieren.

sudo apt update && sudo apt upgrade -y

Danach werden die noch fehlenden 3 Bausteine (Apache 2, MariaDB und PHP) nachinstalliert.

sudo apt install apache2 mariadb-server php php-mysql php-zip php-gd php-json php-curl php-mbstring php-intl php-imagick php-xml php-dom php-bcmath -y

Nachdem die Installation durchgelaufen ist, kann man zum Testen den Webserver Apache via Browser über die Web-Adresse http://ip erreichen.

Anschließend wird die von der Nextcloud benötigte Datenbank installiert. Zuerst wird jedoch die mysql_secure_installation durchgeführt. Ich empfehle hier das Ganze gemäß meinen Empfehlungen (Enter, n, n, y, y, y, y) zu durchlaufen. Hierbei wird für den MariaDB-Server kein separates Root-Passwort vergeben, der anonyme User wird gelöscht, die Remote-Root-Anmeldung wird verboten, die Test-DB wird gelöscht und die Änderungen ausgeführt.

sudo mysql_secure_installation

If you’ve just installed MariaDB, and you haven’t set the root password yet, the password will be blank, so you should just press enter here. Enter

Switch to unix_socker_authentication [Y/n] n
Change the root password? [Y/n] n
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y

Nachdem dieser Schritt durchgeführt wurde, kann über folgenden Befehl die Datenbank erstellt werden.

sudo mysql -u root -p

In meinem Fall heißen die Datenbank und der Benutzer „nextcloud“. Die Datenbank liegt dann auf dem „localhost“.

> CREATE DATABASE nextcloud;
> CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'geheim';
> GRANT ALL ON nextcloud.* TO 'nextcloud'@'localhost';
> FLUSH PRIVILEGES;
> \q

Im Nachgang wechselt man in das Verzeichnis /var/www/html, wo die Nextcloud installiert wird. Die letzte Version wird vom Entwickler herunter geladen und entpackt. Danach wird die nicht mehr benötigte Zip-Datei wieder gelöscht und die Rechte der Dateien an den Benutzer www-data übertragen.

cd /var/www/html
sudo wget https://download.nextcloud.com/server/releases/latest.zip
sudo unzip *.zip
sudo rm *.zip
sudo chown -R www-data:www-data /var/www/html/nextcloud

Nun ist die Nextcloud über http://ip/nextcloud (http://102.168.178.136/nextcloud) erreichbar. Man legt den Admin fest und trägt die Daten der zuvor erstellten MariaDB-Datenbank in die Eingabemaske ein. Hat das alles geklappt, dann dauert die Einrichtung ein paar Minuten und die Nextcloud steht bereit zum ersten Login des neuen Administrators.

Administrator-Konto anlegen
Administrator-Konto anlegen

Vorschau

Im nächsten Teil zeige ich, wie man die App Collabora Online – Built-in CODE Server (ARM64) in der Nextcloud via Terminal installiert.

Viel Spaß!

MDN Curriculum: Online-Lehrplan für zukünftige Frontend-Webentwickler

28. Juli 2024 um 11:12

Bereits im Februar hat Mozilla mit dem MDN Curriculum einen Lehrplan veröffentlicht, welcher relevante Ressourcen aus den MDN web docs strukturiert aufbereitet, um zukünftigen Frontend-Webentwicklern den Einstieg zu erleichtern. In Zusammenarbeit mit Scrimba gibt es dazu jetzt auch einen ergänzenden Videokurs.

Die MDN web docs sind eine der wichtigsten Quellen sowohl für angehende als auch für bereits professionelle Webentwickler. Um neuen Entwicklern den Einstieg in die Frontend-Entwicklung zu erleichtern, gibt es mit dem MDN Curriculum einen Lehrplan, der relevante Themen in einer Weise strukturiert, dass man einen klaren Weg hat, sich die Grundlagen der Frontend-Entwicklung auf Basis bestehender Inhalte aus den MDN web docs anzueignen.

Jetzt das MDN Curriculum besuchen

MDN Curriculum MDN Curriculum

Für alle, die tiefer einsteigen wollen, gibt es jetzt auch einen 80-stündigen Videokurs mit interaktiven Code-Übungen von Scrimba, welcher auf das MDN Curriculum abgestimmt ist, auf Basis von Mozillas Feedback verbessert wurde und von dem Mozilla sagt, dass die hohen Qualitätsstandards der MDN web docs erfüllt werden. Während die MDN web docs vollständig kostenlos sind und auch bleiben werden, ist Scrimba ein kostenpflichtiges Angebot, welches nicht zwingend erforderlich ist, um das MDN Curriculum durchzuarbeiten, sondern lediglich ein optionales Zusatzangebot darstellt.

Jetzt The Frontend Developer Career Path auf Scrimba besuchen

Der Beitrag MDN Curriculum: Online-Lehrplan für zukünftige Frontend-Webentwickler erschien zuerst auf soeren-hentzschel.at.

Mozilla veröffentlicht Firefox 128.0.3

26. Juli 2024 um 14:36

Mozilla hat Firefox 128.0.3 veröffentlicht und behebt damit mehrere Probleme der Vorgängerversion.

Download Mozilla Firefox 128.0.3

Mit dem Update auf Firefox 128.0.3 behebt Mozilla potenzielle Ladeprobleme via HTTP/2 auf manchen Websites sowie ein Problem mt eingeklappten Tabellenzeilen, welche unter Umständen nicht sichtbar waren. Außerdem wurde ein Problem behoben, welches verursachen konnte, dass die Windows-Bildschirmtastatur Teile der Webseite verdeckte.

Der Beitrag Mozilla veröffentlicht Firefox 128.0.3 erschien zuerst auf soeren-hentzschel.at.

Umgang mit Überlastung & mein Antrieb: Hinter den Kulissen eines Linux-Youtubers - Reaction

26. Juli 2024 um 13:00

💾

In diesem Video reagiere ich auf das Video "Einige Gedanken zum Youtube Burnout" vom Linux Umsteiger Kanal. Dabei gebe ich euch Einblicke hinter die Kulissen des Kanals und erkläre, wie ich mit dem Druck durch den Youtube-Algorithmus umgehe, ob Youtube für mich Hobby oder Beruf ist und wie man Themen zu Videos findet.
Wenn Du das Video unterstützen willst, dann gib bitte eine Bewertung ab, und schreibe einen Kommentar. Vielen Dank!



Links:
-------------------------------------

Video von Linux Umsteiger Kanal: https://www.youtube.com/watch?v=ceYihltLfnQ

Linux-Guides Merch*: https://linux-guides.myspreadshop.de/
Professioneller Linux Support*: https://www.linuxguides.de/linux-support/
Linux-Arbeitsplatz für KMU & Einzelpersonen*: https://www.linuxguides.de/linux-arbeitsplatz/
Linux Mint Kurs für Anwender*: https://www.linuxguides.de/kurs-linux-mint-fur-anwender/
Offizielle Webseite: https://www.linuxguides.de
Forum: https://forum.linuxguides.de/
Unterstützen: http://unterstuetzen.linuxguides.de
Mastodon: https://mastodon.social/@LinuxGuides
X: https://twitter.com/LinuxGuides
Instagram: https://www.instagram.com/linuxguides/
Kontakt: https://www.linuxguides.de/kontakt/

Inhaltsverzeichnis:
-------------------------------------

0:00 Begrüßung
0:54 Beginn der Reaction
2:29 Eigene Erfahrung mit Überlastung
5:17 Verschwinden von Linux Youtubern
8:20 Youtube-Burnout vs richtiger Burnout
11:29 Einkommen durch Youtube
14:37 Hobby oder Arbeitszeit?
16:29 Youtube-Algorithmus
18:51 Videothemenfindung
20:45 Youtube als Wissensplattform
24:13 Haupt- und Zweitkanal
28:42 Distro Hopping
31:50 Immer gleiche Themen
35:47 aller Anfang ist schwer!
38:40 Erholungspausen und Selbstreflexion
49:44 neue Kanäle ausprobieren
52:38 Linux-Merch
56:22 abschließende Worte
57:56 Verabschiedung


Musik:
-------------------------------------

Elektronomia - Sky High [NCS Release]
Music provided by NoCopyrightSounds.
Video Link: https://youtu.be/TW9d8vYrVFQ
Download Link: https://NCS.lnk.to/SkyHigh

Haftungsausschluss:
-------------------------------------
Das Video dient lediglich zu Informationszwecken. Wir übernehmen keinerlei Haftung für in diesem Video gezeigte und / oder erklärte Handlungen. Es entsteht in keinem Moment Anspruch auf Schadensersatz oder ähnliches.

*) Werbung

Übersetzungsfunktion von Firefox unterstützt weitere Sprachen

25. Juli 2024 um 20:05

Firefox besitzt eine Übersetzungsfunktion für Websites, welche im Gegensatz zu Cloud-Übersetzern wie Google Translate lokal arbeitet, die eingegebenen Texte also nicht an einen fremden Server sendet. Wenige Tage nach dem letzten Update bringt Mozilla erneut Unterstützung für weitere Sprachen, dieses Mal auch in finalen Firefox-Versionen.

Firefox wird seit Version 118 standardmäßig mit einer lokalen Funktion zur maschinellen Übersetzung von Websites für den Browser ausgeliefert. Das bedeutet, dass die Übersetzung vollständig im Browser geschieht und keine zu übersetzenden Inhalte an einen Datenriesen wie Google oder Microsoft übermittelt werden müssen.

Erst vergangene Woche hatte ich darüber berichtet, dass die Nightly-Version von Firefox weitere Sprachen unterstützt. Jetzt hat Mozilla noch einmal nachgelegt. Dieses Mal auch für finale Firefox-Versionen.

Finale Firefox-Versionen können ab sofort auch aus den folgenden Sprachen übersetzen, die von Firefox Nightly bereits unterstützt wurden: Dänisch, Kroatisch, Lettisch und Litauisch. Die folgenden Sprachen sind sowohl für finale Firefox-Versionen als auch Firefox Nightly neu: Serbisch, Slowakisch und Vietnamesisch. Nightly-Versionen unterstützen außerdem auch Übersetzungen aus dem Bosnischen.

Da die Sprachmodelle über die Remote-Einstellungen von Firefox bereitgestellt werden, ist die Unterstützung neuer Sprachen an kein Firefox-Update gebunden und funktioniert direkt in jedem Firefox mit aktivierter Übersetzungsfunktion.

Damit unterstützt die Übersetzungsfunktion Firefox bereits 22 Sprachen in mindestens eine Richtung. Für die Nightly-Version von Firefox sind es schon 31 Sprachen. Mozilla arbeitet mit Hochdruck daran, dass noch viele weitere folgen werden.

Firefox Translations Stand 25.07.2024

Der Beitrag Übersetzungsfunktion von Firefox unterstützt weitere Sprachen erschien zuerst auf soeren-hentzschel.at.

Programmiersprache: Rust 1.80 steht bereit

25. Juli 2024 um 14:20

Kurz notiert: Die Programmiersprache Rust steht ab sofort in Version 1.80 bereit.

Die Programmiersprache Rust wurde planmäßig in Version 1.80 veröffentlicht. Wer sich für alle Highlights der neuen Version interessiert, findet wie immer in der offiziellen Release-Ankündigung weitere Informationen.

Der Beitrag Programmiersprache: Rust 1.80 steht bereit erschien zuerst auf soeren-hentzschel.at.

Website-Builder Solo von Mozilla: Version 1.1 fertiggestellt

24. Juli 2024 um 16:27

Solo ist ein Ende des vergangenen Jahres vom Mozilla Innovation Studio angekündigter Website-Builder, der auf Künstliche Intelligenz (KI) und einen maximal einfachen Erstellungsprozess setzt. Nun steht Solo 1.1 bereit.

Im Rahmen der Innovation Week im Dezember 2023 hatte das Mozilla Innovation Studio Solo angekündigt. Dabei handelt es sich um einen sogenannten Website-Builder mit Fokus auf Selbständige, der auf generative Künstliche Intelligenz für einen maximal einfachen Erstellungsprozess setzt. Mittlerweile laufen über 7.000 Websites auf Solo.

Jetzt Website-Builder Solo von Mozilla testen

Seit dem Start hat Mozilla einige Funktionen ergänzt. Jetzt hat Mozilla Solo 1.1 fertiggestellt. Neu ist die Möglichkeit, einen Video-Abschnitt hinzuzufügen, um beispielsweise ein YouTube-Video einbetten zu können. Auch ist es jetzt möglich, ein eigenes Favicon für die Anzeige im Tab hochzuladen. Neue Schriften stehen zur Verfügung, womit auch japanische und koreanische Inhalte dargestellt werden können. Das Kontaktformular unterstützt ebenfalls diese zwei Sprachen. Zwischen den einzelnen Abschnitten lässt sich ab sofort optional eine Trennlinie aktivieren. Dazu kommen weitere kleine Bugfixes und Design-Verbesserungen.

Die Nutzung von Solo ist kostenlos. Geringe Kosten fallen höchstens bei Verwendung einer benutzerdefinierten Domain an. In Zukunft könnten gegen eine monatliche Gebühr aber auch zusätzliche Funktionen bereitgestellt werden. Als Nächstes stehen weitere Optionen zum Bearbeiten und Gestalten, Verbesserungen des neuen Video-Abschnittes sowie weitere mögliche Abschnitte wie ein FAQ-Element auf der Roadmap.

Der Beitrag Website-Builder Solo von Mozilla: Version 1.1 fertiggestellt erschien zuerst auf soeren-hentzschel.at.

Mozilla veröffentlicht Firefox 128.0.2

23. Juli 2024 um 16:47

Mozilla hat Firefox 128.0.2 veröffentlicht und behebt damit mehrere Probleme der Vorgängerversion.

Download Mozilla Firefox 128.0.2

Mozilla hat Firefox 128.0.2 für Windows, macOS und Linux veröffentlicht. Für alle, die sich fragen, was mit Firefox 128.0.1 ist: Diese Versionsnummer war einem ausschließlichen Android-Update vorbehalten, daher geht es für Desktop-Nutzer direkt von Version 128.0 auf 128.0.2.

Mit dem Update verbessert Mozilla die sichtbare Einstellung für PPA dahingehend, dass die Checkbox automatisch deaktiviert und inaktiv wird, wenn Telemetrie deaktiviert ist. Tatsächlich war die Funktion bereits vorher an die Telemetrie-Einstellung gekoppelt. Dies war über die Oberfläche allerdings nicht ersichtlich.

In Video-Anrufen via WebRTC konnte es für Nutzer eines Macs bei Verwendung der eingebauten Lautsprecher und des Mikrofons zu einem störenden Echo kommen.

Ein Fehler in der Screenshot-Funktion wurde behoben, der verursachte, dass Inhalte, die nur bei Herüberfahren mit der Maus über ein Element angezeigt werden, mit Aufruf der Screenshot-Funktion verschwunden sind und daher nicht mit aufgenommen werden konnten.

Der Abschnitt „Experimentelle Funktionen“ auf der Seite about:support zeigte nur eine leere Tabelle an.

Behoben wurde auch ein Problem, welches verursachte, dass das Panel der AdGuard-Erweiterung bei Klick auf die Schaltfläche nicht öffnete.

Ein Problem, welches dazu führte, dass manche Bildschirmlesegeräte beim Navigieren nach Zeichen in Rich-Text-Editoren nicht lesen konnten, wurde behoben.

Darstellungsprobleme bei Verwendung des Dark Mode auf Windows-Geräten mit ARM-CPU wurden behoben.

Ebenfalls behoben wurde ein Problem in Zusammenhang mit einer NTLM-Authentifizierung.

Eine Korrektur für die Ausrollung der Wetter-Funktion auf der Firefox-Startseite wurde vorgenommen, damit die Standort-Auswahl zur Verfügung steht.

In Zusammenhang mit der Einstellung des Mozilla Location Service wurde eine Telemetrie-Erhebung für die Geolocation-API ergänzt, um fehlgeschlagene Standortbestimmungen auf Linux-Systemen zu untersuchen.

Dazu kommen mehrere behobene Absturzursachen sowie weitere kleinere Korrekturen unter der Haube.

Der Beitrag Mozilla veröffentlicht Firefox 128.0.2 erschien zuerst auf soeren-hentzschel.at.

Thunderbird 128 „Nebula“ veröffentlicht

22. Juli 2024 um 20:03

Die MZLA Technologies Corporation hat Thunderbird 128 „Nebula“ veröffentlicht. Die neue Version des Open Source E-Mail-Clients bringt wieder einige Neuerungen.

Neue Version zum Download verfügbar, Update später

Thunderbird 128 steht seit kurzem zum Download bereit. Automatische Updates von Thunderbird 115 und älter sind zu diesem Zeitpunkt noch nicht aktiv. Bestehende Nutzer werden mit einem der kommenden Updates die neue Version erhalten.

Extended Support Release, ESR

In Zusammenhang mit Thunderbird 128 liest man nun von einem sogenannten Extended Support Release, oder kurz: ESR. Für den Endanwender ändert sich dadurch überhaupt nichts, da Thunderbird bereits seit Jahren dem sogenannten ESR-Modell von Firefox folgt, welches ein Feature-Update pro Jahr und dazwischen lediglich kleinere Updates vorsieht, die vor allem Fehler und Sicherheitslücken beheben.

Die explizite Nennung von ESR hängt damit zusammen, dass es in Zukunft (genauer Startzeitpunkt noch unbekannt) auf einem neuen Release-Kanal, wie bei der Mainstream-Variante von Firefox, auch von Thunderbird monatliche Feature-Updates geben wird. Bestehende Nutzer von Thunderbird 115 wurden bereits automatisch auf den ESR-Zweig migriert und erhalten damit standardmäßig weiterhin jährliche Feature-Updates.

Programmiersprache Rust erhält Einzug

Bei Rust handelt es sich um eine ursprünglich von Mozilla Research entwickelte Programmiersprache, welche wegen ihrer Vorteile mittlerweile aus der Entwicklerwelt nicht mehr wegzudenken ist. Auch wenn sich daraus keine direkt sichtbare Verbesserung für den Endnutzer ergibt, verspricht diese neue Möglichkeit eine höhere Qualität und Leistung des Codes. Außerdem wird es dadurch möglich, Teile des Codes zwischen dem Desktop-Thunderbird und zukünftigen mobilen Versionen (Android, iOS) von Thunderbird zu teilen, was die plattformübergreifende Entwicklung beschleunigt.

Verbesserte Kartenansicht

Mit Thunderbird 115 wurde eine neue optionale Kartenansicht anstelle der Tabellenansicht für die Auflistung von E-Mails zur Verfügung gestellt. Seit Thunderbird 115.2.3 ist diese Standard für neue Nutzer. Thunderbird 128 verbessert die Darstellung der Kartenansicht.

Verbesserte Ordnerauswahl

Neuerungen gab es auch bei der Ordnerauswahl in der linken Seitenleiste. So ist es hier, neben weiteren Verbesserungen, jetzt auch möglich, mehrere Ordner auf einmal auszuwählen.

Verbesserte Kontextmenüs

Auch die Kontextmenüs wurden überarbeitet. Diese sehen nicht nur moderner aus, sondern sind auch schlanker. Das Kontextmenü für Nachrichten hat oben eine Icon-Reihe mit Symbolen für den schnellen Zugriff auf wichtige Funktionen erhalten.

Verwendung von Akzentfarben des Betriebssystems

Thunderbird macht nun stärkeren Gebrauch von der konfigurierten Akzeptfarbe des Betriebssystems, womit sich Thunderbird besser in das System des jeweiligen Anwenders integriert.

Native Benachrichtigungen unter Windows

Ein weiteres Thema der Betriebssystem-Integration sind die Benachrichtigungen. Hier nutzt Thunderbird unter Windows jetzt korrekt funktionierende native Windows-Benachrichtigungen. So wird bei Klick auf eine Benachrichtigung Thunderbird jetzt auch in den Vordergrund geholt und die entsprechende Nachricht geöffnet.

Keine Unterstützung mehr von Windows 7, Windows 8, macOS 10.12, macOS 10.13, macOS 10.14

Für Nutzer, welche eines der veralteten Betriebssysteme Windows 7, Windows 8, macOS 10.12, macOS 10.13 oder macOS 10.14 nutzen, ist mit Thunderbird 115 Schluss. Thunderbird 128 lässt sich auf entsprechenden Systemen nicht mehr starten.

Sonstige Neuerungen von Thunderbird 128

Die Standard-Sortierung für E-Mails wurde geändert, sodass neue Nachrichten nun oben angezeigt werden.

Wurde eine individuelle Farbe für ein E-Mail-Konto vergeben, wird diese beim Versenden von E-Mails jetzt auch im Feld des Absenders angezeigt.

Auch das Adressbuch verwendet ab sofort die überarbeitete Optik der Kartenansicht und das gleiche Toolbar-Konzept wie die Mail-Komponente.

Es ist nicht länger möglich, direkt aus Thunderbird heraus eine neue E-Mail-Adresse bei Mailfence oder Gandi zu erhalten. Ebenfalls entfernt wurde die Importfunktion für Becky! Internet Mail.

Dies war nur eine kleine Auswahl der größten Highlights. Thunderbird 128 bringt noch sehr viel mehr Neuerungen, Verbesserungen unter der Haube sowie Fehlerkorrekturen. Die Release Notes (engl.) bieten einen umfassenden Überblick über die zahlreichen kleinen Neuerungen.

Thunderbird 128.0.1

Mit Thunderbird 128.0.1 wurde auch schon ein erstes Update veröffentlicht, welches kleinere Korrekturen vornimmt.

Bald: Unterstützung von Microsoft Exchange

Noch nicht in Thunderbird 128, aber in einem der kommenden Updates von Thunderbird 128 enthalten wird die initiale Unterstützung von Microsoft Exchange sein. Die erste Version der Exchange-Unterstützung wird noch auf Mail-Funktionen beschränkt sein.

Bald: Thunderbird-Synchronisation

Ein weiteres Feature, welches mit einem späteren Update für Thunderbird 128 nachgeliefert werden wird, ist Thunderbird Sync, womit Konfigurationen geräteübergreifend synchronisiert werden können.

Der Beitrag Thunderbird 128 „Nebula“ veröffentlicht erschien zuerst auf soeren-hentzschel.at.

Wie wird im Ansible Automation Controller eine neue Inventory Source hinzugefügt?

22. Juli 2024 um 05:00

In diesem Überblick beschreibe ich am Beispiel der Proxmox inventory source, wie eine eigene Inventory Source im Ansible Automation Controller hinzugefügt werden kann.

Die folgenden Schritte wurden mit der Ansible Automation Platform 2.4 getestet. Die einzelnen Schritte sollten in gleicher Weise auch in Ansible AWX ausgeführt werden können.

Um diesem Text folgen zu können, werden Kenntnisse im Umgang mit Ansible und Git auf der Kommandozeile vorausgesetzt.

Der Text verweist, wo möglich, auf bestehende Dokumentation. Es handelt sich bei diesem Text nicht um ein klassisches Tutorial. Er dient mir als Gedächtnisstütze und mag euch eine Anregung sein, bzw. im besten Fall die Wissenslücken schließen, die sich mit der Dokumentation allein nicht schließen lassen.

Ausgangssituation

Abschnitt 18.4.5.1. Inventory sources im Automation Controller User Guide führt die in der Ansible Automation Platform (AAP) unterstützten Inventory Sources auf. Möchte man nun bspw. Proxmox Virtual Environment (PVE), Microsoft Active Directory oder Cisco DNA Center als Quelle für sein Inventar benutzen, wird man auf den ersten Blick nicht fündig.

Für das Beispiel in diesem Text werden Hosts aus der Bestandsliste eines PVE als Inventory Source hinzugefügt. Die dabei verwendete Vorgehensweise kann auch für andere Inventory Plugins verwendet werden. Die Entwicklung von Inventory Plugins ist jedoch nicht Gegenstand dieses Textes. Hierzu wird auf die Dokumentation unter „Developing dynamic inventory“ verwiesen.

Mein Kollege Steffen Scheib hat mir geholfen, das Proxmox-Plugin zu konfigurieren, wofür ich ihm an dieser Stelle nochmal ganz herzlich danke. Es liegt auf meiner Arbeitsstation als Ansible Project in folgender Verzeichnisstruktur vor:

]$ tree proxmox_inventory/
proxmox_inventory/
├── collections
│   └── requirements.yml
├── inventory
│   └── inventory.proxmox.yml
└── vault_password_file

3 directories, 3 files

Mit Ausnahme der Datei vault_password_file wurden alle Dateien und Verzeichnisse in Git aufgenommen. Ich verwende einen einfachen Git-Server in meiner Laborumgebung, auf welchen ich meine lokalen Repositorys pushe. Der Automation Controller synchronisiert das Projekt aus dem Git-Repo, um es als Inventory Source verfügbar zu machen.

Die Vorgehensweise im Überblick

  1. Ansible Credential für Source Control erstellen
  2. Ein Ansible Projekt hinzufügen
  3. Einen Custom Credential Type erstellen
  4. Ein Ansible Inventory hinzufügen

Ansible Credential für Source Control erstellen

Das Proxmox Inventory Plugin befindet sich in einem Git-Repository, auf welches mit SSH-Key-Authentifizierung zugegriffen werden kann. Damit auch der Automation Controller auf dieses Repository zugreifen kann, wird ein Credential vom Typ Source Control erstellt.

Beipsiel für einen Source Control Credential Typ im Ansible Automation Controller

Der SSH-Private-Key wurde von meinem Host hochgeladen und verschlüsselt im Automation Controller gespeichert. Der Key lässt sich in der GUI nicht wieder sichtbar machen, lediglich ersetzen.

Ein Ansible Projekt hinzufügen

Der Dokumentation folgend, wird ein Projekt hinzugefügt:

Beispiel einer ausgefüllten Maske im Automation Controller, zum Hinzufügen eines Projekts.

Wenn alles passt, wird das Projekt nach dem Speichern erfolgreich synchronisiert:

Dieses Projekt wird in einem späteren Schritt zur Erstellung des Inventory benötigt.

Einen Custom Credential Type erstellen

Bevor ich auf die Erstellung selbst eingehe, möchte ich kurz beschreiben, warum dieser Schritt notwendig ist.

Folgender Codeblock zeigt meine Datei inventory.proxmox.yml welche einige mit Ansible Vault verschlüsselte Werte enthält:

]$ cat inventory/inventory.proxmox.yml 
---
plugin: 'community.general.proxmox'
url: 'https://pve.example.com'
user: !vault |
          $ANSIBLE_VAULT;1.1;AES256
          30623661316338386633623162303036346562346238386162633263636164636338393532613565
          3332616265353962326139363533313261623739643765640a623032613034613139653162356266
          34646464323233313964663939643631313539353736313364333433643136306632633065633664
          3234346635396563350a656334353632643830353534386636306365656261356436613662623163
          31663535363264356537336531393731633164613733316537383433653334643433
token_id: !vault |
          $ANSIBLE_VAULT;1.1;AES256
          62356662336534646661353666356263363734666231643932393430336639363032303266636432
          3762343235633335613663393838343532326230353130380a616161313830373265306137346562
          61613662333764393565316362623838633332376366373161646237363163663039613863393439
          3165616664626633390a396465343430373837343662373634653634643138613131633034306432
          62623438366166353765366339323263393833396133653866343833663335663766
token_secret: !vault |
          $ANSIBLE_VAULT;1.1;AES256
          66386338643463373837666164396332306261366634396630306430663937613963346164636433
          3362396566343932393234353439383932316436396437380a336365393038373566383534623136
          30353332383464356664393666383664636536666531663463623232353136353636363366653431
          3234616531623537630a393530643437376363653438643036636436316636616265316361623661
          35313832613063633662363531346164306638373538393164373663633335333863646430663232
          6339343164633865636239356538326438333937366134613738

validate_certs: false

# fail if a variable is not resolvable
strict: true

# facts are required to retrieve proxmox_vmtype
want_facts: true

# only allow qemu VMs
filters:
  - "proxmox_vmtype == 'qemu'"

Auf der Kommandozeile meines Hosts kann ich den Inhalt des Dynamic Inventory wie folgt anzeigen lassen:

ansible-inventory -i inventory/inventory.proxmox.yml --list --vault-password-file vault_password_file

Die Datei vault_password_file befindet sich jedoch nicht im Git, da sie das Passwort im Klartext enthält. Aus diesem Grund möchte ich die Datei auch nicht auf dem Automation Controller ablegen. Irgendwie müssen auf dem Automation Controller jedoch Credentials hinterlegt werden, um die Ansible Vault encrypted_strings zu entschlüsseln. Die Lösung steckt in diesem Kommentar auf Github. Im Automation Controller User Guide gibt es dazu Chapter 11. Custom credential types.

Fertig sieht das dann so aus:

Quelle: https://github.com/ansible/awx/issues/4089#issuecomment-1632066592

Das Schlüssel-Wert-Paar secret: true stellt sicher, dass das Passwort verschlüsselt gespeichert wird. Es kann danach im Automation Controller nicht mehr im Klartext angezeigt werden. Nachdem der neue Credential Typ erstellt ist, kann dieser instanziiert werden:

Beispiel des neuen Custom Credential Typs ‚encrypted_vault_password‘

Das Vault Passwort wird in das entsprechende Formularfeld kopiert. Es ist standardmäßig nicht sichtbar und wird wie oben bereits erwähnt, verschlüsselt gespeichert. Mit diesem Credential verfügt der Automation Controller nun über die notwendigen Informationen, um das Proxmox Inventory auszulesen.

Ein Ansible Inventory hinzufügen

Zuerst wird ein Inventory nach Dokumentation erstellt. Anschließend wird diesem eine Inventory Source hinzugefügt.

Die Formularfelder sind dabei wie folgt zu befüllen:

  • Name: Kann frei vergeben werden
  • Source: Sourced from a Project
  • Credential: Hier wird das im vorangegangenen Schritt erstellte Credential ausgewählt
  • Project: Hier wird das in obigen Abschnitt erstellte Projekt ausgewählt
  • Inventory file: Kann in diesem Fall auf `/ (project root)` gesetzt werden
Eine Inventory Source mit Proxmox als Beispiel

Nach dem Speichern wird die Inventory Source durch Klick auf ‚Sync‘ synchronisiert:

In dieser Ansicht wurde die Inventory Source bereits erfolgreich synchronisiert

Und wir haben 17 Hosts in unserem Inventory:

Damit endet dieser kurze Überblick auch schon. Ich wünsche euch viel Freude bei der Inventarpflege.

Wieso Privacy Preserving Attribution (PPA) gut für die Privatsphäre der Nutzer ist

20. Juli 2024 um 14:25

In den letzten Tagen gab es eine katastrophale Berichterstattung anderer Websites über eine experimentelle Unterstützung von Privacy Preserving Attribution (PPA) in Firefox 128. Auffällig: Die Websites, die so negativ berichtet haben, sind zu einem großen Teil selbst die größten Profiteure vom Tracking ihrer eigenen Leser – etwas, was es mit PPA nicht geben würde. Dieser Artikel liefert die Fakten, welche andere Websites verschweigen, und erklärt, was es mit Privacy Preserving Attribution wirklich auf sich hat, wieso es hier nicht alleine um Mozilla geht, welche Rolle auch die anderen Browser sowie Let’s Encrypt-Betreiberin ISRG spielen und wieso PPA in Wahrheit gut für den Nutzer ist.

Die Sache mit der Werbung

Ohne Frage ist Werbung auf Websites ein kontroverses Thema. Ob man nun Werbung auf Websites akzeptieren kann oder jede Form von Werbung blockiert: Tatsache ist, dass ein großer Teil des Webs werbefinanziert ist und sich das nicht ändern wird, nur weil ein Teil der Nutzer einen Werbeblocker verwendet. Wie ich bereits in meinem Kommentar zu Werbeblockern vor neun Jahren formuliert hatte:

„Alles hat seinen Preis, auch das, was einen selbst nichts kostet. Ausgaben für Server, Redaktionsräume sowie Redakteure und ja, manche Webseite besitzt sogar tatsächlich die Dreistigkeit, auch etwas verdienen zu wollen. Mir persönlich kann auf jeden Fall kein Leser erzählen, dass er acht Stunden am Tag arbeitet, vielleicht sogar mehr, nur um der guten Sache wegen und kein Geld dafür von seinem Arbeitgeber sehen will. Ein Geschäftsmodell gibt Webseiten die Möglichkeit, den Lesern kostenlos Inhalte in einer Weise anbieten zu können, welche für die Content-Anbieter lukrativ ist. Die Alternative dazu ist es eben nicht, die Inhalte werbefrei anzubieten, die Alternative dazu ist es, die Inhalte gar nicht anzubieten. Denn wieso sollte jemand ein Geschäft, eine Online-Redaktion, irgendetwas aufbauen und ggf. sogar die Verantwortung für viele Menschen und deren Existenzen übernehmen, wenn überhaupt kein eigener Nutzen darin besteht? Das mag edel klingen, geht aber leider vollkommen an der Realität vorbei.“

An dieser Stelle soll keine Moraldebatte über Werbeblocker geführt werden. Wer Werbung blockieren will, soll Werbung blockieren. Das ist hier nicht das Thema. Aber jedem muss klar sein, dass nur weil man selbst Werbung blockiert, dies nichts daran ändert, dass werbefinanzierte Websites weiterhin über Werbung finanziert werden und nicht auf magische Weise plötzlich anders.

Wieso gibt es Tracking und was ist das Problem damit?

Das Schalten von Werbung kostet Geld. Und Werbung, die den potenziellen Käufer nicht interessiert, wird nicht zu einem Kaufabschluss, einer sogenannten „Conversion“, führen. Also versucht man, Werbung möglichst an diejenigen auszuspielen, die sich potenziell eher für das Produkt interessieren, als an der Zielgruppe vorbei. Das verspricht höhere Conversion-Raten und damit mehr Kaufabschlüsse bei gleichem Werbeeinsatz oder den gleichen Umsatz mit weniger Investition in Werbung. Damit das richtig funktioniert, muss der Erfolg der Werbung natürlich auch gemessen werden.

Was erst einmal gut klingt, hat aus Nutzersicht den großen Nachteil, dass diese Personalisierung üblicherweise über sogenanntes „Tracking“ erfolgt. Vereinfacht gesagt bedeutet das, dass Nutzer während des Surfens im Web „verfolgt“ werden, es entstehen „Nutzer-Profile“. Und diese sind teilweise sehr detailliert und können ein umfangreiches Bild vermitteln, welches teilweise so eindeutig ist, dass man leicht aus der Masse hervorsticht und über längere Zeiträume diesen eindeutigen Datensätzen zugeordnet werden kann. Aus Privatsphäre-Sicht des Nutzers ist dies sicher nicht erstrebenswert. Deswegen arbeiten Browserhersteller wie Mozilla seit Jahren daran, den Tracking-Schutz des Browsers immer weiter zu verbessern. Gerade Firefox liefert in sehr regelmäßigen Abständen immer weitere Privatsphäre-Verbesserungen.

Immer nur blockieren hat das Problem nicht gelöst

Nun könnte man auf die Idee kommen, dass wenn Tracking so schlecht ist, Browser doch einfach alle Tracking-Versuche blockieren könnten. Zu glauben, das sei bereits die ganze Antwort auf das Problem, wäre naiv.

Browser wie Firefox unternehmen bereits große Anstrengungen, Tracking zu blockieren. Je schwieriger das Tracking über konventionelle Wege gemacht wird, desto kreativer wird allerdings auch die Werbebranche. Vor Jahren wurde sogar schon damit begonnen, mit HSTS eine Sicherheits-Funktion für Tracking-Zwecke zu missbrauchen. Dass Nutzer Sicherheits-Funktionen abschalten, um die Privatsphäre zu gewährleisten, sollte definitiv nicht das Ziel sein.

Zu bedenken ist außerdem, dass es auch auf Kosten der Website-Kompatibilität geht, je mehr man blockiert. Nicht grundlos bietet Firefox einen Standard- sowie einen strengeren Tracking-Schutz an, der mehr blockiert, dafür aber auch einiges an Problemen auf Websites verursacht. Diesen standardmäßig für alle Nutzer zu aktivieren, wäre nach heutigem Stand nicht möglich, da Firefox-Nutzer so viele Probleme auf Websites hätten, für die aus Sicht vieler Nutzer natürlich Firefox Schuld wäre, dass sie vermutlich zu einem Browser wechseln würden, der diese Probleme nicht hat – vielleicht auch, weil dieser weniger gegen Tracking unternimmt als Firefox.

Um Tracking wirklich nachhaltig zu eliminieren, kann es nur einen Weg geben: Es muss eine Alternative angeboten werden, bei der jeder gewinnt: Nutzer und Werbetreibende. Werbetreibende müssen in der Lage sein, ihre Werbung zielgerichtet auszuspielen und den Erfolg messen zu können. Nutzer müssen sich sicher hinsichtlich ihrer Privatsphäre fühlen können. Nur wenn die Interessen beider Seiten gewahrt bleiben, gibt es eine realistische Chance, Tracking eines Tages tatsächlich zu eliminieren.

„Werbung ist blöd, ich würde auch für Content bezahlen“

Das ist natürlich eine vorbildliche Haltung. Generell sollten Content-Ersteller, deren Inhalte man regelmäßig konsumiert, unterstützt werden. Allerdings sind Menschen mit dieser Einstellung in einer klaren Minderheit. Bezahlmodelle funktionieren realistisch betrachtet nur für einen ganz kleinen Teil aller Websites. Im Allgemeinen ist die Zahlungsbereitschaft der Nutzer für Websites minimal bis nicht existent. In Zeiten, in denen ohnehin alles teurer wird, gilt dies eher mehr als weniger. Und angenommen, mehr Websites würden eine Bezahlung verlangen: Selbst zahlungsbereite Konsumenten dürften wohl eine Grenze haben.

Auch Mozilla hatte mit dem Projekt Firefox Better Web vor vier Jahren mit dem Konzept einer Bezahlversion des Webs experimentiert, welches gegen eine monatliche Zahlung Werbefreiheit auf den teilnehmenden Partnerseiten versprochen hat. Dieses Experiment wurde relativ schnell eingestellt. Und das ist nur ein Beispiel. Versuche, Alternativen zur Werbung zu etablieren, gab es auch von anderen immer wieder. Fakt ist: Bis heute hat sich kein Geschäftsmodell für das Web gefunden, welches eine echte Alternative darstellt. Sogenannte Paywalls oder Bezahlschranken funktionieren im Einzelfall, aber sind keine Lösung für das Web als Ganzes. Zumal es auch der Idee eines offenen Webs widerspricht, wenn der Zugang zu großen Teilen des Webs eben nicht mehr offen ist, sondern bezahlt werden muss. Und es gibt bereits eine erschreckende Tendenz in diese Richtung.

Worum geht es bei Privacy Preserving Attribution (PPA)?

Nun kommen wir endlich zur Privacy Preserving Attribution, PPA. Wie ich bereits im Artikel zu Firefox 128 und damit deutlich vor der aktuellen Debatte beschrieben habe, geht es darum, eine Alternative zu etablieren, welche Tracking überflüssig macht. Werbetreibende sollen relevante Daten erhalten, ohne dass dabei Daten über einzelne Personen gesammelt werden. Im Vergleich zum Tracking ist das aus Sicht des Nutzers ohne jeden Zweifel die bessere Option.

Konkret geht es hier um die Attribution, sprich eine Zuordnung, wie oft eine bestimmte Werbung gesehen wurde und zu einem Kaufabschluss geführt hat. Ohne eine solche Zuordnung wüssten Werbetreibende nicht, ob ihre Werbung funktioniert oder nicht. Diese Information ist aber von elementarer Bedeutung und Werbetreibende gehen jeden technisch möglichen Weg, diese Information zu erhalten. Deswegen ist die Idee, diese Information in einer Weise bereitzustellen, welche die Privatsphäre der Nutzer schützt, sodass hierfür kein Tracking mehr stattfinden muss, wie es bislang der Fall ist.

Der entscheidende Unterschied zwischen PPA und Tracking ist der, dass bei PPA der Browser die Kontrolle darüber hat, welche Informationen geteilt werden. Und wenn Werbetreibende auf diese Schnittstelle setzen, kann der Browser die Privatsphäre der Nutzer vollständig gewährleisten, was nicht möglich ist, wenn stattdessen auf Nutzer-Tracking gesetzt wird und die Browser-Maßnahmen gegen Tracking von Werbetreibenden bewusst umgangen werden.

Wie funktioniert PPA?

Die Funktionsweise von PPA ist, grob skizziert, dass der Browser Impressionen über eine Anzeige speichert, also wie oft diese angezeigt worden ist. Damit gespeichert werden auch weitere Informationen zur Anzeige, wie die Ziel-Website. Die Website gibt an, an welchen Anzeigen sie interessiert ist. Auf Grundlage dieser Angaben erstellt der Browser dann einen Bericht, gibt diesen aber nicht an die Website weiter. Stattdessen wird dieser verschlüsselt und anonym über das Distributed Aggregation Protocol (DAP) an einen Aggregationsdienst gesendet. Dieser Aggregationsdienst kombiniert diesen Bericht dann mit vielen weiteren Berichten. Darüber hinaus wird ein zusätzliches „Rauschen“ hinzugefügt, das für einen differentiellen Datenschutz sorgt.

Was kompliziert klingt, sorgt dafür, dass keine Browsing-Aktivitäten an irgendjemanden gesendet werden. Werbetreibende erhalten lediglich aggregierte Informationen zur Wirksamkeit ihrer Anzeigen.

Wer ist der Aggregationsdienst und was hat Let’s Encrypt damit zu tun?

Mozilla setzt als DAP-Partner auf die Internet Security Research Group, kurz: ISRG, welche als Aggregationsdienst für PPA dient. Wem die ISRG nichts sagt: Dahinter steckt niemand Geringeres als die Betreiberin von Let’s Encrypt. Also jene Organisation, der zig Millionen von Websites für ihre HTTPS-Zertifikate vertrauen, einschließlich dieses Blogs.

Wenn nun also PPA für ein so großes Vertrauensdefizit in Bezug auf Mozilla sorgt, wie es manche darstellen, dürfte für Let’s Encrypt als Produkt der ISRG nichts anderes gelten. Immerhin erhält diese die ganze Berichte vom Browser. Und wenn der ISRG und damit Let’s Encrypt nicht mehr vertraut wird, sollte man konsequenterweise vielleicht auch alle Websites meiden, welche ein Zertifikat von Let’s Encrypt verwenden. Alles andere wäre nicht konsequent.

Wieso PPA sogar eine realistische Chance haben könnte

Es gab schon viele Ansätze, das Problem von Werbung und Tracking zu lösen. Wieso sollte nun ausgerechnet PPA bessere Chancen haben? Die Antwort könnte in der Zusammenarbeit mit ausgerechnet einem der größten Werbeunternehmen der Welt liegen.

Wie bereits festgestellt, wird das Hinzufügen immer weiterer Anti-Tracking-Mechanismen nicht das grundsätzliche Problem lösen. Um dieses Problem zu lösen, ist es wichtig, genau zuzuhören, was die Anforderungen der Werbebranche sind, statt an deren Interessen vorbeizuarbeiten, damit die dann wieder die nächsten Schutzmaßnahmen umgehen.

Für die Entwicklung von PPA hat Mozilla mit Meta zusammengearbeitet, Betreiberin unter anderem von Facebook und Instagram und damit von zwei der weltweit größten Werbeplattformen, die sehr gerne ihre Nutzer tracken. Was auf den ersten Blick nach keinem guten Match klingt, ergibt viel Sinn: Denn wenn am Ende eine Lösung steht, mit der sogar Meta leben könnte, stehen die Chancen nicht schlecht, dass die Lösung auch für andere Werbedienstleister gut genug ist.

PPA betrifft nur Nutzer, die ohnehin Werbung sehen

Ein häufiges Argument in der ganzen Debatte ist, dass die Nutzer ja grundsätzlich gegen Werbung seien und sie deswegen auch gegen PPA sind. Was sie dabei übersehen: Da sie aus genau diesem Grund ja ohnehin einen Werbeblocker einsetzen, sehen sie auch keine Werbung und damit gibt es auch keine Attribution. Diese Nutzer betrifft es also überhaupt nicht. PPA betrifft aber alle Nutzer, die Werbung sehen – und verbessert deren Privatsphäre gegenüber Werbung, welche auf Tracking setzt. Daran gibt es nichts auszusetzen, wie man es auch dreht und wendet.

PPA verbessert die Privatsphäre – über Werbung hinaus

PPA kann aber auch die Privatsphäre über Anwendungsfälle der Werbung hinaus verbessern und betrifft damit dann doch wieder auch Nutzer, die keine Werbung sehen. Wie das?

Wie bereits besprochen, wird Tracking vor allem in Zusammenhang mit Werbung genutzt. Wenn sich nun eine datenschutzfreundliche Alternative zum Tracking etablieren würde und Werbetreibende hierfür nicht länger auf Tracking setzen würden, würde daraus auch folgen, dass die Browserhersteller daran arbeiten könnten, den Tracking-Schutz ihrer Browser schärfer zu stellen und noch mehr Tracking zu unterbinden. Denn während sich praktisch alle einig sind, dass Tracking schlecht für die Privatsphäre ist, ist das Interesse der Werbemessung ja durchaus legitim. Wenn dieser Anwendungsfall wegfällt, kann Tracking für andere Zwecke leichter identifiziert und blockiert werden und Schutzmaßnahmen, die jetzt vielleicht noch aus Webkompatibilitätsgründen nicht als Standard umgesetzt werden können, könnten es dann möglicherweise.

Wen betrifft das PPA-Experiment in Firefox 128 denn jetzt überhaupt?

Beim PPA-Experiment in Firefox 128 handelt es sich um eine sogenannte Origin Trial. Vor allem Nutzer von Google Chrome sollten das Konzept kennen, denn dort sind zahlreiche Origin Trials aktiv – denen der Nutzer übrigens auch nicht explizit zustimmt. Gleiches gilt für Microsoft Edge.

Doch was bedeutet das? Das bedeutet, dass die Schnittstelle nicht einfach so von jeder Website genutzt werden kann. Die Nutzung dieser Schnittstelle muss beim jeweiligen Browserhersteller beantragt werden.

Dies hängt damit zusammen, dass es in dieser Phase darum geht, überhaupt erst einmal festzustellen, ob PPA so funktioniert, wie man es sich erhofft, um mit diesen Erkenntnissen dann den entsprechenden Webstandard weiterzuentwickeln.

PPA ist nach aktuellem Stand nur für wenige Websites in den USA aktiv.

Muss PPA standardmäßig aktiviert sein?

Ein Kritikpunkt in der Debatte ist auch die standardmäßige Aktivierung von PPA. Ist das notwendig? Für mich ist das ein eindeutiges Ja. Ansonsten wäre die Antwort darauf, ob PPA eine Alternative zum Tracking werden kann, doch bereits vorweggenommen.

Tracking erfolgt nicht über eine Schnittstelle, die dediziert dafür da ist, die Nutzer zu verfolgen. Tracking erfolgt über ganz normale Webtechnologie, welche standardmäßig verfügbar ist. Müsste PPA, anders als so ziemlich jeder andere Webstandard, zunächst vom Benutzer aktiviert werden, könnte sich PPA auch nicht als Alternative zum Tracking etablieren, weil das Ergebnis dann zwansläufig deutlich unter dem wäre, was Tracking liefert. Außerdem verbessert eine standardmäßige Aktivierung von PPA auch deren Privatsphäre von dem Aspekt her, dass man keinen zusätzlichen Tracking-Vektor schafft, weil Nutzer mit aktiviertem PPA in einer Minderheit wären.

Als kurzzeitig angelegtes Experiment, welches nur auf wenigen Seiten aktiviert ist und wichtige Erkenntnisse zur weiteren Entwicklung des Standards liefern soll, wäre es außerdem nicht zielführend, wäre PPA nicht standardmäßig aktiviert. Denn um realistische Daten zu erhalten und damit eine Aussagekraft zu entwickeln, mit der man arbeiten kann, ist eine entsprechende Skalierung unabdingbar.

Und dennoch hat Mozilla seinen Nutzern in Firefox eine sichtbare Einstellung gegeben, um PPA zu deaktivieren. Etwas, was sie nicht hätten tun müssen, in Anbetracht dessen, dass auch die Webstandards, die für Tracking genutzt werden, nicht per Checkbox deaktivierbar sind.

Für Nutzer mit abgeschalteter Telemetrie ist PPA im Übrigen in jedem Fall auch inaktiv, unanbhängig von dieser Checkbox.

Alternative Ansätze nicht gut genug

Mozilla hat sich in den letzten Jahren auch ganz genau angesehen, wie alternative Vorschläge wie beispielsweise FLoC, die Topics API und Privacy Sandbox von Google funktionieren. Das Resultat war, dass diese Vorschläge die Privatsphäre nicht ausreichend schützen. Statt einfach nur zu kritisieren, hat Mozilla selbst aktiv daran gearbeitet, eine bessere Lösung zu finden. PPA ist das Ergebnis von Jahren der Recherche, Diskussion und Entwicklung, auch basierend auf Erfahrungen durch die Entwicklung von erfolgten Privatsphäre-Verbesserungen in Firefox und den Fehlern, die andere Vorschläge machten.

Angeblicher Zusammenhang mit Kauf eines „Werbeunternehmens“ ist gelogen, PPA bereits vor 2 1/2 Jahren angekündigt

Im Juni hatte Mozilla angekündigt, das Unternehmen Anonym gekauft zu haben. Anonym stellt Lösungen bereit, um den Erfolg digitaler Werbung in einer datenschutzfreundlichen Weise zu messen. Tatsächlich klingt das auf den ersten Blick sogar sehr zusammenhängend. Anonym stellt allerdings technische Lösungen auf Seiten der Werbedienstleister bereit. PPA geht das Thema von der Browserseite her an. Unbestritten ist, dass beide ein gemeinsames Ziel verfolgen.

Die Behauptung mancher Website, Anonym stecke hinter Mozillas Vorstoß mit PPA, ergibt überhaupt keinen Sinn. Denn Mozilla hat Privacy Preserving Attribution bereits im Februar 2022 angekündigt, also vor knapp 2 1/2 Jahren. Schon damals hatte Mozilla im Übrigen ausdrücklich um Feedback gebeten.

Eine solche Behauptung, die von Mozilla im Übrigen auch verneint wurde, kam beispielsweise von heise (keine Verlinkung, da Lügen nicht durch Backlinks belohnt werden sollten), wo man unverschämterweise sogar so weit ging, in den Raum zu werfen, Mozilla würde für die PPA-Integration – von wem auch immer – Geld erhalten. Selbstredend gab es weder für das eine noch das andere eine Quelle. Dies hat sich der Redakteur schlicht und ergreifend ausgedacht. Dies war auch nicht die einzige falsche Behauptung einer Seite, welche schon in der Vergangenheit immer wieder dadurch aufgefallen ist, dass gründliche Recherchen wohl eher nicht im Pflichtenheft der Redakteure stehen.

Kein Alleingang von Mozilla, W3C-Gruppe

PPA ist nichts, was Mozilla im Stillen für sich alleine entwickelt hätte. Bereits die Ankündigung im Februar 2022 verwies auf die Private Advertising Technology Community Group, eine Arbeitsgruppe innerhalb des World Wide Web Consortiums (W3C), wo sich Mozilla Feedback einholen konnte und kann. Deren Teilnehmerliste ist prominent bestückt, unter anderem mit anderen Browserherstellern wie Google, Microsoft, Apple und Samsung, aber auch mit Verlagen, Werbeunternehmen und anderen Tech-Unternehmen. Da sind wir nämlich wieder genau dort, wo wir bereits früher im Artikel waren: Eine nachhaltige Lösung muss alle beteiligten Parteien ins Boot holen.

Wenn PPA funktioniert, profitieren nicht nur Firefox-Nutzer davon

Mozillas Ziel war es immer, das Web als Plattform zu verbessern. Marktanteile von Firefox sind schön und natürlich auch wichtig, da ein hoher Marktanteil logischerweise auch die eigene Position verbessert, um Änderungen durchzusetzen. PPA ist aber ein Beispiel, bei dem es nicht nur um Firefox geht.

Innerhalb von Firefox kann Mozilla daran arbeiten, den Tracking-Schutz seines Browsers immer weiter zu verbessern. Davon profitieren dann natürlich ausschließlich Firefox-Nutzer. Wenn jedoch PPA in der Praxis tatsächlich funktioniert und Werbedienstleister nicht länger auf Tracking setzen müssten, kann es den Nutzern egal sein, welchen Browser sie nutzen, weil der Privatsphäre-Vorteil dann unabhängig vom Browser gegeben wäre.

Zu guter Letzt: Lest euch die Quellen immer selbst durch

Eine abschließende Bitte: Glaubt nicht alles, was irgendwelche Websites behaupten, egal wie groß deren Name ist. Stellt euch immer auch die Frage, was wohl die Motivation des jeweiligen Verfassers ist. Tatsache ist, dass ein großer Teil der Websites, die PPA in ein so schlechtes Licht rücken, eine auffällig hohe Anzahl an Tracking-Scripts laden, sprich selbst zu den größten Profiteuren Tracking-basierter Werbung zählen. PPA hingegen muss erst beweisen, dass es zu keiner Beeinträchtung der Einnnahmen-Situation für Verlage führen würde. Natürlich kann das auch nur Zufall sein und die Recherche zum Thema fand einfach nur auf unterirdisch schlechtem Niveau statt. So oder so gilt: Besser immer selbst die Quellen prüfen, egal bei welchem Thema.

Natürlich muss auch diesem Blog, der im Übrigen komplett werbefrei und zu 100 Prozent unabhängig (Spenden für eine Unterstützung unabhängiger und Fakten-basierter Berichterstattung gerne gesehen 😉) betrieben wird, nicht blind vertraut werden. Einige Quellen dieses Artikels sind bereits direkt in den Artikel eingearbeitet. Am Ende möchte ich noch auf ein paar weitere offizielle Veröffentlichungen zum Thema in englischer Sprache hinweisen, für alle, die noch tiefer in das Thema einsteigen wollen:

Der Beitrag Wieso Privacy Preserving Attribution (PPA) gut für die Privatsphäre der Nutzer ist erschien zuerst auf soeren-hentzschel.at.

❌