2 Punkte von GN⁺ 2025-06-17 | 1 Kommentare | Auf WhatsApp teilen
  • Der terminalbasierte Webbrowser Chawan 0.2.0 wurde veröffentlicht und kann als Source-Tarball, statisches Binary für amd64 Linux sowie als .deb-Paket installiert werden
  • Am 25. Juni 2025 wurde zusätzlich ein Patch-Release 0.2.1 bereitgestellt, das einige der wichtigsten plattformabhängigen Probleme dieser Version behebt
  • Paket-Maintainer müssen die notwendigen Runtime-Abhängigkeiten im Wesentlichen auf libssh2, libbrotli sowie OpenSSL oder LibreSSL ausrichten
  • zlib, libseccomp, termcap/ncurses und libcurl werden nicht mehr benötigt; bei Packaging-Problemen wird empfohlen, statt temporärer Patches zunächst Upstream zu kontaktieren
  • Der v0.2-Branch erhält nur Bugfixes, neue Funktionen werden auf master weiterentwickelt; das nächste Release zielt auf Verbesserungen bei Layout-Performance und -Korrektheit sowie bei der UI-Benutzerfreundlichkeit ab

Chawan 0.2.0: Distributionsdateien

  • Chawan 0.2.0 wurde veröffentlicht
  • Der Source-Tree-Tarball ist als v0.2.0.tar.gz verfügbar
    • Hinweise zur Kompilierung finden sich in der README-Datei
  • Eine statische Binary-Distribution für amd64 Linux ist ebenfalls verfügbar
    • Statische Binary-Distribution
    • Zur Installation das Archiv an den gewünschten Ort entpacken und anschließend mit Root-Rechten make install ausführen
    • Die Deinstallation erfolgt mit make uninstall
  • Dieselbe Distribution ist auch als .deb-Paket erhältlich

Patch-Release 0.2.1

  • In einer zusätzlichen Mitteilung vom 25. Juni 2025 wurde ein Patch-Release bereitgestellt, das einige wichtige plattformabhängige Probleme von 0.2.0 behebt
  • Das Patch-Release ist unter chawan-0-2-1.html zu finden

Abhängigkeiten für Paket-Maintainer

  • Die derzeit notwendigen Runtime-Abhängigkeiten sind:
    • libssh2
    • libbrotli
      • genauer gesagt libbrotlicommon und libbrotlidec
    • OpenSSL oder LibreSSL
      • Für OpenSSL wird Version 3.0 oder höher empfohlen
      • Bei LibreSSL wurde die in OpenBSD 7.7 enthaltene Version getestet
  • Abhängigkeiten aus früheren Entwicklungsversionen gelten nicht mehr und können entfernt werden
    • zlib
    • libseccomp
    • termcap/ncurses
    • libcurl
  • Wenn beim Packaging von Chawan Probleme auftreten, wird empfohlen, vor dem Anwenden temporärer Patches zuerst Kontakt aufzunehmen
    • Es besteht die Möglichkeit, das Problem Upstream zu lösen

Branch-Verwaltung und nächste Arbeiten

  • 0.2.0 enthält alle für das MVP gewünschten Funktionen und wurde in einem Zustand ohne bekannte kritische Bugs versioniert
  • Der v0.2-Branch in git erhält nur Bugfixes
  • Arbeiten an neuen Funktionen werden im master-Branch fortgesetzt
  • Das nächste Release soll die Performance und Korrektheit des Layout-Moduls verbessern und die UI etwas benutzerfreundlicher machen

1 Kommentare

 
GN⁺ 2025-06-17
Meinungen auf Hacker News
  • Es ist immer erfreulich, wenn man für kurze Recherche-Side-Quests nicht noch eine weitere Blink-Engine verwenden muss. Werde ich nach Feierabend testen ;)
    Falls es noch nicht erwähnt wurde: Für Umgebungen ohne sixel gibt es als besonders netten Hack carbonyl, einen Terminal-Port von Chromium: https://github.com/fathyb/carbonyl
    Allerdings ist es in einem sehr grundlegenden Zustand, weil der ursprüngliche Autor keine Zeit mehr hat, daran weiterzuarbeiten, und viele Funktionen wie Tastenkürzel oder das Speichern von Dateien fehlen. Trotzdem ist es wirklich toll, dass es vollständige Webkompatibilität bringt, und ich wünschte, jemand mit Rust-Kenntnissen würde es wieder aufgreifen. Als ich vor ein paar Monaten nachgesehen habe, hatte keiner der Forks wirklich Schwung

    • Im GitHub-Thread zu carbonyl fragen Leute immer wieder nach Gesundheit und Sicherheit des ursprünglichen Autors, wohl weil er Palästinenser ist
      Ich hoffe, es geht ihm gut. Ich möchte sagen, dass seine Arbeit wirklich gut war. Krieg ist insgesamt einfach schrecklich
  • @shiomiru
    Ich frage mich, welche Ressourcen du für die besten hältst, um solche TTY-bezogenen Konzepte zu lernen. Bezahlt oder kostenlos ist egal
    Zum Beispiel kenne ich https://www.linusakesson.net/programming/tty/index.php, aber das behandelt termcap/terminfo/curses nicht
    In einem der Kommentare wurde http://www.amazon.com/termcap-terminfo-OReilly-Nutshell-Lind... erwähnt, und als Online-Version findet man auch https://www.scribd.com/document/831486848/Termcap-and-Termin...

  • Wirklich gut gemacht. Ich werde es für einen Teil meiner täglichen Arbeit ausprobieren und sehen, wie weit man damit kommt. Die HN-Darstellung sieht besonders gut aus

    • Schön zu hören. Bitte vergiss nicht, gefundene Bugreports einzureichen
  • Supercool! Schön zu sehen, dass es in Nim geschrieben ist
    Wenn ich cha example.com ausführe, weiß ich nicht, wie ich Befehle wie hjkl verwenden soll. Die einzigen Tasten, die eine Wirkung hatten, waren Zahlen, und die werden unten links angezeigt. Ich weiß auch noch nicht, was man damit macht. Ich frage mich, ob ich in der Bedienung etwas Offensichtliches übersehen habe oder ob es ein Bug sein könnte
    Ich habe es unter MacOS Sequoia 15.5 auf Apple Silicon mit Nim 2.24 aus dem Quellcode gebaut. Die Seite lädt korrekt, aber die Befehlstasten funktionieren nicht

    • Ich habe es in Ghostty, iTerm2 und Terminal.app ausprobiert, überall verhielt es sich gleich
  • Ich habe es auf einem Lenovo M8 4. Generation mit Termux aus dem Quellcode kompiliert, und es musste nur Nim installiert werden. Obwohl es keinen root-Benutzer gibt, lief die Installation sauber durch

  • Nach ein wenig Nachforschen scheint es, dass Chrome und Safari inzwischen Acid2 und Acid3 ebenfalls nicht mehr vollständig bestehen

  • Ich habe immer darauf geachtet, dass meine Website auch in Links gut aussieht, und jetzt scheint es einen neuen Kandidaten zu geben
    Wenn ein Teil von CSS unterstützt wird, wird es eher etwas schwieriger. Früher hat links Margins und Padding komplett ignoriert, was man nutzen konnte, um Inline-Listenelemente wie Menüs sauberer darzustellen; jetzt werden die Abstände zwischen Elementen zum Problem

    • Die Absicht ist schlicht, dass es „funktionieren sollte“. Ich weiß, dass das manchmal nicht der Fall ist, und das kann man als Bug ansehen :)
      Wenn du trotzdem wirklich benutzerdefiniertes CSS für die Rasterdarstellung brauchst: chawan unterstützt das standardisierte grid-Media-Feature: https://developer.mozilla.org/en-US/docs/Web/CSS/@media/grid
  • Ich bin langjähriger w3m-Nutzer. Nach dem Ausprobieren glaube ich, dass mir das gefallen könnte. Sehr ordentlich
    Ich frage mich, ob das Fehlen von „URL öffnen“, also einer Adressleiste, eine bewusste Designentscheidung ist

    • Die Adressleiste sollte sich mit C-l, also Control + L, öffnen
  • Großartig
    Es scheint jetzt nicht mehr termcap/ncurses zu verwenden; ich frage mich, ob ihr die Terminal-Verarbeitung selbst macht

    • Chawan hat tatsächlich nie ncurses verwendet, sondern nur termcap. ncurses implementiert lediglich auch termcap
      Anfangs habe ich mit termcap begonnen, weil ich es durch w3m bereits kannte. Aber termcap ist eine alte Schnittstelle und kann die einzige Eigenschaft, die auf modernen Terminals wirklich nützlich ist, nämlich Truecolor, nicht beschreiben. Der einzige Vorteil war so etwas wie „funktioniert vielleicht zufällig auf Hardware-Terminals aus den 80ern“, was zwar cool ist, aber keine zusätzlichen Fehlermodi rechtfertigt
      Statt also zu terminfo zu wechseln, habe ich es vollständig auf Terminal-Abfragen umgestellt, die aus anderen Gründen ohnehin nötig waren. Eine eingebaute Terminal-Datenbank gibt es noch, um TERM-Werte zu erkennen, die bekanntermaßen nicht XTerm-kompatibel sind. Wenn ein Terminal jedoch korrekt auf die Abfragen antwortet, funktioniert es direkt, selbst wenn der TERM-Wert unbekannt ist
  • Als ich sah, dass HN in Termux beim ersten Versuch geladen wurde, blieb mir die Kinnlade offen. Tolle Arbeit