Browser en Chromium
FAQ › EUZOS Desktop › Browser en Chromium · English
Wat is het?
EUZOS Browser ("Websites bekijken, zonder sporen op deze pc") is de webbrowser van EUZOS Desktop. Hij heeft een eigen engine (libs/web: HTML en CSS, bewust geen JavaScript) en een eigen HTTP(S)-client met TLS 1.3. Voor sites die JavaScript nodig hebben, kan dezelfde browser per tabblad Chromium als engine gebruiken: een Chromium-pagina wordt een tabblad in de eigen tabbalk van EUZOS, getekend door Chromium via de eigen Wayland-compositor in de kernel. De knop Probleem melden (BrowserFeedback) stuurt een melding over een pagina naar de profielserver.
Hoe doe ik…?
Hoe open ik een webpagina?
Open EUZOS Browser in het megamenu (dat opent about:start, de ingebouwde startpagina, met het adresveld meteen klaar om te typen), of typ in de console browser <url> (bijvoorbeeld browser nl.wikipedia.org/wiki/Amsterdam). browser new [url] opent een nieuw venster; zonder new laadt het bovenste venster het adres.
Hoe zoek ik vanuit de adresbalk?
Typ in de balk (Ctrl+L of Tab). Met een schema gaat hij naar dat adres. Met een spatie, zonder punt, of met ? ervoor zoekt hij met de gekozen zoekmachine. Anders komt er https:// voor (nos.nl, localhost:8080). Kies de zoekmachine op about:browser: DuckDuckGo (HTML, standaard), Mojeek, Qwant, Ecosia of Startpage. Qwant en Ecosia geven alleen resultaten met JavaScript.
Hoe gebruik ik tabbladen, favorieten, zoeken en zoomen?
- Tabbladen: + of Ctrl+T nieuw; ×, Ctrl+W of middelklik sluit; Ctrl+Tab wisselt; een link in een nieuw tabblad met middelklik, Ctrl+klik, of het contextmenu (rechtsklik / lang drukken) › Openen in nieuw tabblad. Hooguit 8 tabbladen; alleen de recentste houden hun opgemaakte pagina.
- Meerdere vensters, tabbladen dupliceren en verplaatsen: Ctrl+N (of het browsermenu › Nieuw venster) opent een tweede browservenster naast het eerste (de twee helften van het scherm). Rechtsklik op een tabblad: Tabblad dupliceren (een kopie rechts ervan, zelfde adres en engine), Naar nieuw venster verplaatsen, Tabblad sluiten. Sleep een tabblad uit de tabbalk om het een eigen venster onder de aanwijzer te geven, of laat het los op de tabbalk van een ander browservenster. De pagina blijft doorlopen (geen herlaad). Slechts één venster tegelijk toont een levende Chromium-pagina (een klik op het Chromium-tabblad van het andere haalt hem erheen).
- Favorieten: de ster in het adres, of Ctrl+D; zichtbaar op de startpagina; hooguit 40; bewaard in je profiel.
- Zoeken in pagina: Ctrl+F.
- Zoomen: Ctrl+plus / Ctrl+min / Ctrl+0, 25–200 %.
Wat staat er in het browsermenu (⋮)?
De knop ⋮ helemaal rechts in de balk (rechts van "Probleem melden") opent het browsermenu, in eigen tabbladen en in Chromium-tabbladen: Nieuw tabblad (Ctrl+T), Nieuw venster, Zoomen (−, het percentage (klik: terug naar 100 %), +; in een Chromium-tabblad zoomt Chromium zelf), Zoeken op pagina (Ctrl+F), Geschiedenis (Ctrl+H), Downloads (opent Mijn bestanden › Downloads in de verkenner), Browsergegevens wissen (Ctrl+Shift+Delete) en Instellingen (about:browser). Afdrukken is er niet (de browser kan niet afdrukken).
Waar is mijn geschiedenis?
Op about:history (menu ⋮ › Geschiedenis, of Ctrl+H): de bezoeken van beide engines (de eigen en Chromium) per dag (Vandaag, Gisteren, daarna de datum), met tijd, titel en host, een zoekveld, Verwijderen per bezoek en Browsergegevens wissen. Hooguit 10 000 bezoeken en 90 dagen. Standaard alleen voor deze sessie, in het geheugen. Zet je Browsergegevens bewaren op deze pc aan (Instellingen › Privacy, of de link op de geschiedenispagina of about:browser; standaard uit), dan wordt ze versleuteld bewaard in je eigen profielmap op deze pc (systeem/browser/geschiedenis, elke 30 s na een wijziging opgeslagen). Nooit naar de profielserver.
Hoe wis ik browsergegevens?
Menu ⋮ › Browsergegevens wissen, Ctrl+Shift+Delete, of de knop op de geschiedenispagina (about:clear-data). Kies een periode (afgelopen uur, 24 uur, 7 dagen, 4 weken, alles) en wat: browsegeschiedenis, cookies en andere sitegegevens, afbeeldingen en bestanden in de cache. Het wist beide engines:
| Keuze | Eigen engine | Chromium |
|---|---|---|
| Geschiedenis | de bezoeken in de periode (ook in de bewaarde kopie) | zijn eigen geschiedenisbestanden (History, Visited Links, Top Sites, …) helemaal, in het geheugen en in de bewaarde kopie |
| Cookies en sitegegevens, alles | alle cookies (in het geheugen) | draait: Storage.clearCookies + Storage.clearDataForOrigin voor elke bezochte site; draait niet: de bewaarde cookie- en sitebestanden in je map |
| Cookies en sitegegevens, een periode | de cookies van de sites die in die periode zijn bezocht | Storage.clearDataForOrigin voor die sites (draait Chromium niet: bij de volgende start) |
| Cache | de pictogrammencache | Network.clearBrowserCache (de cache wordt nooit bewaard) |
Gedownloade bestanden zelf blijven in Mijn bestanden › Downloads.
Hoe open ik een site met Chromium?
Gebruik de engineknop in de adresbalk (links van de ster, alleen bij http/https): Openen met Chromium (deze keer), Altijd met Chromium voor <host>, of Altijd met EUZOS voor <host>. Vanuit een tabblad met een pagina van de eigen engine opent Chromium in een nieuw tabblad ernaast. Op about:browser kies je de standaard-engine en verwijder je regels per site. Vanuit de console: chromium open <url>.
Waarom staat er "Chromium is niet beschikbaar op deze pc"?
Er is geen Chromium-pakket (niet geïnstalleerd in apps/ op partitie 2 en niet in het geheugen geladen), er zit geen programma chrome in, starten mislukte, of Chromium stopte binnen 4 seconden. De pagina toont de reden en de knoppen "Openen met de eigen engine" en "Opnieuw proberen met Chromium". Chromium draait alleen op x86-64.
Hoe krijg ik Chromium op mijn pc?
Vink de Chromium-optie aan in het installatieprogramma (stap Apps; zie Installatieprogramma). Dat schrijft chromium=yes in \EOS\FW\APPS.TXT; bij elke start kijkt de pc of Chromium in apps/ staat, en zo niet, dan vraagt hij de appcatalogus van de profielserver (GET /api/apps/chromium) en installeert hij het ondertekende pakket op de achtergrond, met een downloadtoken als de catalogus een downloadserver noemt. Met de hand: apps install chromium (zie Bureaublad en apps).
Hoe download ik een bestand?
Rechtsklik op een link of afbeelding › Link opslaan als…, Afbeelding opslaan als…, Bestand opslaan als… of, op een lege plek, Pagina opslaan als…. De download loopt op de achtergrond (de tabbalk toont "Downloaden: naam (40%)"), daarna opent het venster Opslaan als, dat begint in Mijn bestanden › Downloads. Hooguit 64 MB en 4 downloads tegelijk. Downloads van Chromium gaan zonder venster naar Mijn bestanden › Downloads.
Wat zijn browserprofielen?
Elk browservenster hoort bij een profiel; er is altijd het standaardprofiel. Een profiel heeft een eigen startpagina, favorieten, geschiedenis, cookies en, in Chromium, opgeslagen aanmeldingen, zodat niets door elkaar loopt. Open er een met Nieuw venster voor ander profiel in het browsermenu (⋮) of het taakbalkmenu van de browser: kies een profiel of maak er een. Een profiel kan beveiligd zijn: openen vraagt dan om je EUZOS-wachtwoord of QR-code (Esc gaat terug). De naam staat rechts in de tabbladenbalk. Een tabblad kan niet naar een venster van een ander profiel. Elk profiel heeft een eigen Chromium, en die draaien naast elkaar; crasht er een, dan stoppen alleen de tabbladen van dat profiel. chromium stop stopt ze allemaal, chromium stop <naam> één. Afmelden sluit alle profielen.
Hoe meld ik een probleem met een pagina?
Druk op Probleem melden rechts in de balk. Kies wat er aan de hand is (Opmaak klopt niet, Laadt niet, Te traag, Werkt niet zonder JavaScript, Anders), voeg een opmerking toe, vink eventueel "Volledig adres meesturen" en "Schermafbeelding van deze pagina meesturen" aan (standaard uit), en druk op Versturen. Kan alleen na het inloggen en alleen op een http(s)-pagina. Je krijgt "Bedankt! Je melding heeft nummer N."
Details
De eigen engine
- HTML (
libs/web/src/html.rs): tokenizer en boomopbouw volgens WHATWG voor de gangbare gevallen, foutherstel zonder panic, grenzen (200.000 knopen, 4 MiB HTML); tekenset uitContent-Typeof<meta charset>. - CSS (
css.rs,style.rs): selectors, cascade,@media,@import, custom properties,calc(); flex- en grid-opmaak (zie docs/BROWSER.md "CSS layout"). - Geen JavaScript: scripts worden overgeslagen,
<noscript>wordt getoond. - Netwerk (
net::web): HTTP/1.1 met keep-alive, gzip/deflate, omleidingen, cookies en HSTS alleen in het RAM, cookies alleen van de site zelf; alleen TLS 1.3, certificaten gecontroleerd tegen\EOS\FW\ROOTS.PEM. Gemengde inhoud gaat via https of helemaal niet; een formulier van https naar http krijgt eerst een waarschuwing. - Grenzen: HTML-pagina 3 MiB, een stylesheet 768 KiB, alle stylesheets samen 2 MiB, opmaakwerk
max_steps1.500.000, paginahoogte 400.000 px, geschiedenis 50 per tabblad. - Privacy: wat in formulieren wordt getypt komt nooit in het log; adressen alleen als schema en host (het pad alleen met
browser debug on). Bij afmelden worden favorieten, enginekeuzes, geschiedenis, cookies, pictogrammen en geopende lokale bestanden gewist (browser::logged_out). - (Nog) niet: JavaScript, HTTP/2 en HTTP/3, brotli, een cache, TLS 1.2, PDF bekijken, AVIF/BMP-afbeeldingen, inhoud van
::before/::after.
Interne pagina's
| Pagina | Wat | Opdrachten |
|---|---|---|
about:start | startpagina met favorieten en zoeken | — |
about:browser | de browserinstellingen: standaard-engine bovenaan, engines per site (verwijderen), zoekmachine, geschiedenis en privacy, daaronder over deze browser (build, toestand van Chromium) | ?search-engine=<sleutel>, ?engine=euzos|chromium, ?site-remove=<host>, ?keep-data=on|off (oud ?zoekmachine=, ?site-weg= wordt nog geaccepteerd) |
about:history | geschiedenis per dag, zoeken, verwijderen (oude naam about:geschiedenis) | ?q=<tekst>, ?n=<aantal>, ?remove=<tijd>.<hash> (oud ?wis wist alles) |
about:clear-data | het venster "Browsergegevens wissen" | ?range=hour|day|week|4weeks|all&history=on&cookies=on&cache=on&go=1 |
about:bestand?<n> | een HTML-bestand dat uit de verkenner is geopend (in het geheugen, alleen <style>, geen opdrachten) | — |
about:engine?euzos=<adres> / ?chromium=<adres> | alleen vanaf de knoppen op de pagina "opent met Chromium" | — |
Opdrachten in about:-pagina's werken alleen vanuit de browser zelf of een andere about:-pagina, nooit vanaf een link op een webpagina (BNET-8).
Chromium in de browser
- Eén Chromium-proces voor alle Chromium-tabbladen, in kioskmodus; volgende tabbladen zijn targets (
Target.createTarget). - Besturing via het DevTools-protocol over een pipe (
--remote-debugging-pipe, fd 3 en 4), geen netwerkpoort (kernel/src/chromium/control.rs,libs/devtools). De balk vertaalt naarPage.navigate,Page.navigateToHistoryEntry,Page.reload,Page.stopLoading; een tabblad sluiten:Target.closeTarget. - Weergave: het Wayland-oppervlak van Chromium wordt door de compositor in de kernel in het paginagebied gezet (
kernel/src/screen/wayland.rs,kernel/src/screen/chromium.rs); invoer in het paginagebied gaat naar Chromium, Ctrl+T/W/L/D en Ctrl+Tab blijven bij de browser. - Pakket: uit
apps/op partitie 2 (ondertekend) of uit het RAM (package receive chromiumvia SSH); draait via de Linux-vertaallaag (alleen x86-64). - Profiel:
--user-data-dir=/data/chromiumin de/datavan de app (de profielmap van de gebruiker, of het RAM). Wat zonder "Browsergegevens bewaren" niet wordt bewaard, staat ineuzos_vfs::mirror::BROWSER_DATA. - Downloads:
Browser.setDownloadBehaviornaar/tmp/downloadsvan de app, daarna naar Mijn bestanden › Downloads, of zonder profielmap naar Opslaan als. - Stoppen:
chromium stop(en afmelden) stopt alle processen van Chromium.
Probleem melden (BrowserFeedback)
Het paneel is libs/web/src/report_panel.rs; het versturen gebeurt in kernel/src/browserfeedback.rs, in een eigen thread. Gaat mee: het adres (zonder user:password@, #fragment en, tenzij aangevinkt, ?query), de categorie, de opmerking (≤ 2000 tekens), browserversie, build, architectuur, taal, paginagebied, zoom, HTTP-status, laad- en opmaaktijd, grootte, tot 20 foutregels uit het browserlog over deze pagina, en eventueel een schermafbeelding van alleen het paginagebied (≤ 1280 px breed, PNG ≤ 512 KB). Nooit cookies, headers of formulierinhoud. De id is een waarde per sessie, afgeleid van het pc-token, zodat meldingen niet aan de hardware-inventaris te koppelen zijn.
Naslag
Consoleopdrachten
| Opdracht | Argumenten | Wat het doet |
|---|---|---|
browser | — | Uitleg over het gebruik |
browser | <url> | Een webpagina tonen in het bovenste browservenster (http://, https://, about:start, about:browser) |
browser new | [url] | Een nieuw browservenster (zonder url: de startpagina). Oude alias: browser nieuw |
browser debug | on|off | Tijden van tekenen, kopiëren en gebeurtenissen per frame in het log, en volledige paden van adressen. Oude aliassen: aan, uit |
chromium | [status] | De toestand van Chromium |
chromium open | <url> | Het adres openen in een Chromium-tabblad van de browser (zonder schema: https:// ervoor) |
chromium stop | — | Alle processen van Chromium stoppen (wist ook zijn profiel in het RAM) |
chromium trace | on|off | Trace van het DevTools-protocol in het log (x86-64). Oude aliassen: spoor, aan, uit |
browserfeedback test | [small|large] | Een testmelding versturen (ingelogd; in een testbuild zonder login wordt een 401 verwacht). large voegt een ruis-PNG van ~350 KB toe. Oude aliassen: klein, groot |
perf start / perf yt / perf net on|off / perf play | — | Metingen aan Chromium, zie Diagnose |
linuxtrace | off|errors|all | Systeemaanroepen van Linux-programma's (Chromium) in het log, zie Diagnose |
package | zie Diagnose | App-pakketten in het RAM (zo wordt Chromium met de hand geladen) |
Functies en modules
| Functie / module | Rol |
|---|---|
crate::browser::command | De consoleopdracht browser |
crate::browser::start_address | about:start voor het megamenu |
crate::browser::profile_loaded / logged_out | Favorieten, zoekmachine en engines uit het profiel; wissen bij afmelden |
crate::browser::keep_data / set_keep_data / save_data / profile_dir_open | "Browsergegevens bewaren op deze pc" en de versleutelde geschiedenis |
crate::browser::Browser, BrowserWindow, CrTab | Een browser, een venster met tabbladen, een Chromium-tabblad |
crate::browser::Browser::choose_engine | Eigen engine of Chromium voor een nieuwe pagina |
crate::favicon::begin / forget | Sitepictogrammen in een eigen thread, per host per sessie bewaard |
crate::download::start / tick / logged_out | Downloads op de achtergrond naar Opslaan als of het klembord |
crate::images | Afbeeldingen, na het laden in eigen threads opgehaald |
crate::chromium::{open_tab, send_command, link, close_target, wipe, state, status, command} | Chromium als engine |
crate::chromium::control::{begin, stop, open, attach, command, set_trace, status} | De DevTools-pipe |
crate::chromium::downloads::event | Downloads van Chromium |
crate::screen::chromium::{open_url, new_tab, gone, stopped, download_notice} | Het gebied van Chromium in het venster |
crate::browserfeedback::{send, png, command} | Probleem melden |
crate::app_install | Chromium op de achtergrond installeren uit de appcatalogus |
libs/web (html, css, style, layout, tabs, favorites, find, zoom, address_bar, engine, pages, report_panel, contextmenu) | De engine en de logica van de browser-UI |
libs/browserfeedback | Het meldingsformaat (schrijven in de kernel, strikt lezen op de server) |
libs/devtools | Berichten van het DevTools-protocol |
Configuratiebestanden en profielinstellingen
| Bestand / instelling | Sleutel | Waarden | Betekenis |
|---|---|---|---|
\EOS\FW\APPS.TXT | chromium | ja | Chromium na de installatie op de achtergrond installeren |
\EOS\FW\APPS.TXT | chromium_url | URL | Override voor tests: het pakket van deze URL halen in plaats van uit de catalogus |
\EOS\FW\ROOTS.PEM | — | PEM-certificaten | Rootcertificaten voor TLS |
| profielinstelling | browser-zoekmachine | duckduckgo, mojeek, qwant, ecosia, startpage | Zoekmachine |
| profielinstelling | browser-engine | euzos, chromium | Standaard-engine |
| profielinstelling | browser-site | <host> TAB <engine> (één per site, max. 32) | Engine per site |
| profielinstelling | browser-favoriet | één regel per favoriet (max. 40) | Favorieten |
| profielmap | systeem/instellingen/browsergegevens | on, off (oud aan, uit wordt nog gelezen) | Browsergegevens bewaren op deze pc |
| profielmap | systeem/browser/geschiedenis | tekst | De bewaarde geschiedenis (alleen met bewaren aan) |
Sinds 27-10-2026 schrijft EUZOS Engelse namen voor configuratiebestanden, sleutels, waarden en bevestigingswoorden (bijvoorbeeld
WIPE-…,environment=inPROFILE.TXT); de oude Nederlandse namen (hier oud genoemd) worden nog gelezen en geaccepteerd (docs/ENGLISH.md).
API-eindpunten (aangeroepen door de kernel)
| Methode | Pad | Gebruikt voor |
|---|---|---|
POST | /api/browserfeedback/melding?token=<pc-token> | Probleem melden. Dit is de oude Nederlandse route, die de kernel nog aanroept; de Engelse route is /api/browserfeedback/report (zie API) |
GET | /api/apps/chromium | Vermelding van Chromium in de appcatalogus (zie Apps en downloads) |
Protocolberichten en formaten
BrowserFeedback-melding (versie 1): een kop van regels, een lege regel, dan de PNG (of niets). De veldnamen zijn draadformaat en blijven Nederlands:
browserfeedback=1
id=<sessie-id>
build=<build>
arch=x86_64
browser=<versie>
taal=<taal>
adres=<adres>
volledig=0|1
categorie=opmaak|laadt_niet|traag|zonder_js|anders
viewport=<b>x<h>
zoom=<procent>
status=<http-status>
laadtijd=<ms>
opmaaktijd=<ms>
bytes=<grootte>
opmerking=<opmerking, ge-escaped>
fout=<foutregel> (0..n keer)
afbeelding=<lengte van de PNG>
<PNG-bytes>
Antwoord: ok + id=<nummer>, of fout + reden met 400, 401 (niet ingelogd), 404 (meldingen uit), 408, 413, 429 (te vaak), 503. Grenzen: kop 16 KiB, PNG 512 KiB; 10 per uur per netwerk, 20 per dag per account. Volledige regels: docs/BROWSERFEEDBACK.md.
DevTools over de pipe: JSON-berichten van het Chrome DevTools-protocol (Target.createTarget, Target.closeTarget, Page.navigate, Page.navigateToHistoryEntry, Page.reload, Page.stopLoading, Browser.setDownloadBehavior), op fd 3 (naar Chromium) en fd 4 (van Chromium).
Zie ook
- docs/BROWSER.md: de browser en zijn engine
- docs/CHROMIUM.md: Chromium op EUZOS
- docs/WAYLAND.md: de compositor in de kernel
- docs/BROWSERFEEDBACK.md: Probleem melden
- docs/APPS.md: apps en de appwinkel
- FAQ: Verkenner, Bureaublad en apps, Diagnose
EUZOS