Quel navigateur internet faire tourner directement en framebuffer?

Tags: #<Tag:0x00007f574e682e08> #<Tag:0x00007f574e682bd8>

Bonjour,

Sur un vieux Raspberry Pi 2, je cherche à exécuter un navigateur internet en mode kiosk directement au démarrage et via le framebuffer de la carte graphique sans passer par un serveur d’affichage type Xorg ou Wayland.

Avez-vous un tel navigateur à me conseiller ? et idéalement disponible dans les dépôts debian. :wink:

J’ai essayé links2, mais il ne détecte pas le framebuffer :

root@rpi:~# links2 -g -driver fb https://www.debian.org/
Unknown graphics driver fb.
The following graphics drivers are supported:
x

J’ai essayé netsurf. Ça fonctionne, mais il n’affiche pas correctement les pages web. Entre autre, il ne supporte pas le format SVG or le site que je veux afficher l’utilise abondamment.
Voici la commande :

root@rpi:~# netsurf-fb -f sdl -b 16 -w 800 -h 400 http://www.debian.org/

Je n’ai pas trouvé d’autres paquets debian correspondants.
La commande :

root@rpi:~# aptitude search '?tag(web::browser) ?tag(interface::framebuffer)'
i   links2                                                     - Navigateur web à la fois en mode graphique et texte                  
p   w3m-img                                                    - utilitaires pour w3m gérant l'extension des images en ligne          

ne retourne même pas le paquet netsurf-fb, alors qu’il est bien présent dans le dépôt main car il ne comporte que le tag ‹ uitoolkit::sdl ›.

Donc si vous connaissez d’autres navigateurs utilisant directement le framebuffer, je suis preneur ! :pray:

J’ai également essayé de cross compiler Framebuffer-browser sur mon PC pour que ça compile plus vite. Ça marche en compilant avec des bibliothèques dynamiques, mais dans ce cas il faut installer un tas de paquets QT5 sur le Raspberry Pi. Et j’ai échoué à essayer de le compiler en mode statique. J’ai le message d’erreur :

[ 83%] Linking CXX executable FBrowser
/usr/bin/ld : tentative de liaison statique de l'objet dynamique `/usr/lib/arm-linux-gnueabihf/libQt5WebEngineWidgets.so.5.15.18'
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/FBrowser.dir/build.make:152: FBrowser] Error 1
make[1]: *** [CMakeFiles/Makefile2:90: CMakeFiles/FBrowser.dir/all] Error 2
make: *** [Makefile:91: all] Error 2

Il essaie de lier en statique des bibliothèques dynamiques, ce qui n’est pas faisable.

Et donc, je patauge, je patauge… :anguished:

dillo doit approcher de ce que tu recherches en compromis, avec un doute si besoin de serveur graphique ou pas, et doute sur traitement svg.

dillo  3.0.5-7.2  ●   1,5 MB
↳ Small and fast web browser
↳ https://dillo-browser.github.io/old/

Depends: wget libc6 libfltk1.3t64 libjpeg62-turbo libpng16-16t64 libssl3t64 libstdc++6 libx11-6 zlib1g

Si c’est seulement libQt5WebEngineWidgets.so qui manque pour la compilation, ce n’est pas insurmontable: Debian libqt5webenginewidgets5 trixie/armhf

/usr/lib/arm-linux-gnueabihf/libQt5WebEngineWidgets.so.5.15.18

dillo ne convient pas en effet. Il dépend bien de Xorg.

Quant à libqt5webenginewidgets5, la paquet est déjà bien installé et la compilation avec bibliothèques dynamiques a fonctionné.
Le problème de la compilation statique est que make attend des bibliothèques qui puissent être liées statiquement (je crois avec une extension en « .a »).

Compiler avec des librairies statiques présuppose bien sûr une configuration en conséquence (pas forcément trivial sans indications précises).
Framebuffer-browser est donc compilé (en dynamique) ?
Si oui, satisfait ?

Framebuffer-brower est compilé en dynamique, mais pas encore transféré sur le Raspberry Pi car j’aurais aimé éviter de devoir installer tous les paquets nécessaires aux dépendances.
Donc, pour le moment pas encore véritablement testé…

Tu peux déjà faire un ‹ ldd › sur le binaire pour voir ce qu’il réclame en librairies.
En dynamique, au moins pour tester, tu peux installer les librairies en installant que les depends (sans recommends).

apt-get --no-install-recommends install ...