MS Edge: Sprache ändern

Die Sprache lässt sich in Edge wirklich ausgesprochen einfach ändern:

  1. Systemsteuerung → Internetoptionen → Allgemein → Darstellung → Sprachen → Spracheinstellungen festlegen → Bevorzugte Sprachen → Sprache hinzufügen → Sprache wählen, “Weiter” → “Sprachfeatures” werden “installiert”
  2. “Als meine Windows-Anzeigesprache festlegen” ggf. deaktivieren, “Installieren” (WTF, wurde das nicht im letzten Schritt grad installiert?)
  3. warten… ⏳
  4. Googlen, warum die Sprache nicht herunterlädt, Language Packs manuell herunterladen
    • UPDATE: Offenbar lädt er doch herunter, allerdings ist der Fortschrittsbalken extrem schlecht (selbst für Windows), und es dauert extrem lange, siehe auch 5.3
  5. Googlen, wie man manuell heruntergeladene Language Packs installiert:
    1. Startmenü, “Lpksetup” (case-sensitiv ausschreiben, sonst hat er es bei mir nicht gefunden, WTF)
    2. “Anzeigesprache installieren” → Datei auswählen → Weiter, Lizenz zustimmen (WTF, wer hält denn die Rechte an ITALIENISCH?)
    3. deutlich zweistellig Minuten warten… ⌛
    4. wiederholen für jede Sprachdatei 🤮
  6. Dialog aus 2. schließen, neu öffnen, Sprache sollte jetzt dort sein
  7. Googlen, warum man die neu installierte Sprache nicht ganz nach oben verschieben kann: Alle Sprachen entfernen und in der gewünschten Reihenfolge wieder hinzufügen (WTF, wozu gibt es die entsprechenden Buttons) oder mehr als zwei Sprachen installieren 🤦🏼‍♂️ Ja: Die Reihenfolge von genau zwei Sprachen ließ sich nicht ändern.
  8. Leider schickt der Edge weiterhin de-de als Accept-Language? (Und das möchte ich an dieser Stelle betonen: Es geht ausschließlich darum, einen HTTP-Request-Header zu ändern)

regedit hilft (hier am Beispiel en-US):

🚮

WWI

Bekanntermaßen feiert der 1 Weltkrieg dieses Jahr sein Hundertjähriges. Dazu gibt es vermutlich drölf Projekte, allerdings sind mir bisher erst zwei (gute) über den Weg gelaufen:

  • 1914-1918 – Die Entwicklung der Dinge: Julian Finn veröffentlicht auf den Tag genau 100 Jahre später den jeweiligen Tagebucheintrag seines Urgroßvaters Ernst Pauleit.
  • Einen ähnlichen Ansatz fährt @1914Tweets: Eine Echtzeit- (?) Rekonstruktion der Vorgänge des Jahres 1914, bis hin zum Wetterbericht der Hauptstädte der Kriegsparteien und Zeitungsausschnitte

Gerade in der Kombination bekommt man einen guten Eindruck über, ja, “die Entwicklung der Dinge”. Wie schnell es gehen kann, gerade bei vielen beteiligten Parteien, sieht man bei @1914Tweets:

Während man im Tagebuch einen punktuellen, subjektiven, aber tieferen Eindruck bekommt… so scheint die Stimmung bei Ernst Pauleit “jetzt” eher von Aufbruch und Betriebsamkeit, denn von Angst geprägt zu sein:

In der Stadt wogte und wallte es, als wäre Kirmes. […] Essen und Trinken gab es in Menge. Zigarren und Zigaretten qualmten von morgens bis spät in die Nacht.

Das Tagebuch ist übrigens zusehends schlechter erreichbar, bei Gefallen also gerne spenden!

UPDATE

Ah, deshalb ist das so langsam: Ein Artikel auf SpOn

Eine “Google Custom Search Engine” über mehrere Domains

Es gibt (mindestens) zwei Arten, einzelne Domains in Googles “Benutzerdefinierten Suchmaschinen” zu unterscheiden:

  1. Für jede Domain eine eigene Suchmaschine anlegen. Vorteil: Separate Keywords, Description, … für jede Suchmaschine. Nachteil: Jede Suchmaschine kostet separat beim Upgrade auf die kosten­pflichtigen Features
  2. Die Domains alle derselben Suchmaschine hinzufügen, und bei Aufruf per Parameter “as_sitesearch” filtern (Quelle, Docs). Vor-/Nachteile sind genau umgedreht.

PS: Option 2 funktioniert nicht nur für Domains, sondern auch für Verzeichnisse, also etwa “example.com/de” vs. “example.com/en”

Synology: Seinen eigenen DDNS-Service hosten

Achtung: Setzt inwx.de als Registrar voraus!

Der Service

Auf xuad.net gibt es eine entsprechende Anleitung für einen DDNS-Service, auf GitHub liegen die Sourcen. Dabei ist einiges zu beachten:

Man muss dieses Skript unter einer anderen (Sub-) Domain als das DDNS-“Ziel” laufen lassen, klar. Sobald man die DDNS-Domain dynamisch um-mapped, ist das Skript sonst nicht mehr erreichbar.

Wer bei INWX ein Passwort mit Sonderzeichen verwendet, sollte es in der .ini in Anführungszeichen setzen.

Wenn man die IP auslesen möchte, statt sie zu übergeben (siehe Comments in dem Post), und der Server nur schon IPv6 spricht, sollte man den hier beschriebenen “Fix” verwenden, denn INWX erwartet eine v4-Adresse:

Darüber hinaus muss bei INWX ein expliziter Eintrag für die Subdomain angelegt sein. Das Skript ruft diesen bestehenden Eintrag ab, extrahiert eine ID, und updated dann über diese ID. Gibt es keinen Eintrag, gibt es auch keine ID, und das Update kann nicht durchgeführt werden. Ein Wildcard-Eintrag genügt nicht.

Dann sollte das klappen. Falls nicht, kann man im DDNSManager.php Debugging einschalten, um Request und Response an INWX ausgeben zu lassen:

Und/oder PHP-Fehler anzeigen, klar:

 Den Service aufrufen (lassen)

Interessanter ist die Frage, wie und wann sich das NAS dann registriert. Der hauseigene DDNS-Client bietet zwar drölfzig Anbieter zur Auswahl, aber kein Feld für custom Skripte 🙁

Erste Idee: cron. Zwar bringen die Synologys cron mit, allerdings will man sich mit einem regelmäßigen Cronjob ja nicht seinen Ruhezustand versauen.

Zweite Idee: dhclient-exit-hooks.d (siehe auch), dhcpcdnetworkmanager, oder irgendwas, das einen Hook bei IP-Änderung bietet. Gibt es auf einem Synology offenbar (so) nicht.

Dritte Idee: Den erwähnten DDNS-Dienst pimpen. Google liefert tatsächlich einen Ansatz:

  • per SSH auf dem NAS einloggen, Benutzer “root”, Passwort vom “admin”-Account
  • /etc.defaults/ddns_provider.conf editieren (bsplw. mit vi)
  • Einen neuen Eintrag anlegen a la

Hier wäre übrigens möglich, die IP zu übergeben, dann muss man sie nicht auslesen: Neben __USERNAME__ und __PASSWORD__ sind __HOSTNAME__ und __MYIP__ möglich. Trotzdem: Die IPv6-Übersetzung scheint angebracht, wie gesagt wegen INWX.

htaccess-Authentifizierung habe ich hier nicht hinbekommen, sobald sich das ändert, gibt es hier ein Update.

Nun kann man im DSM seinen neuen DDNS-Service auswählen; “Hostname” kann in diesem Fall mit irgendwas gefüllt werden, da er in der Query-URL ja nicht verwendet wird

HTH