Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 08/10/2019, à 21:45

RZ90

programation graphique sans bureau (armbian ubuntu)

Bonjour.
je souhaite réaliser une interface graphique légère qui se lance au démarrage sans installer de bureau.
mon souci c'est que je ne sais pas par ou commencer.

Dans un premier temps j'aimerais donc pouvoir faire des affichage graphique ;
et ensuite rajouter le curseur de la souris (et le déactivé lorsqu'il n'est pas utilisé)
et également rajouter du texte dans certaine zone .


Si je me trompe pas, normalement il faudrait que je commence par installer  Xorg mais vu que je ne suis sûr de rien et que je risque de lire plein de truc qui ne m’intéresse pas je préfère vous demander de l'aide afin de savoir quelle sont les étapes que je devrais franchir et les ressource que je devrait étudier.

Coté programmation j'ai fait du C , python, java, html, de assembleur OCAM VHDL... mais sans pouvoir prétendre en être spécialiste. j'ai fait un peu de système et de réseau mais pas beaucoup de pratique.

A terme j'aimerais faire l'affichage sur un écran HDMI de quelque pouce dans le but de piloté un robot, c'est donc pour cela que je souhaite réaliser ma propre interface

Les objectifs de ma démarche sont :
- apprendre par la pratique
- pouvoir avoir une interface personnalisé
- avoir une interface qui utilise le moins de ressource possible

Je vous remercie d'avance pour votre aide

Cordialement
Rachel

Hors ligne

#2 Le 09/10/2019, à 00:06

Roschan

Re : programation graphique sans bureau (armbian ubuntu)

Je suis loin d'être expert en informatique embarquée (et je pense que peu de gens ici le seront), mais à ma connaissance les possibilités existantes incluent :

1 - utiliser un simple gestionnaire de fenêtres pour X11

Installer un simple gestionnaire de fenêtre (ceux qui fonctionnent par pavage notamment) est largement plus léger qu'un environnement complet. Ils sont généralement tous très configurable. Tu aurais donc juste à coder ton application, et au démarrage du système tu lancerais Xorg avec le gestionnaire de fenêtre correctement paramétré pour avoir du plein écran, et l'appli y démarrerait par défaut assez simplement

2 - utiliser weston

Weston était (est toujours ?) l'implémentation de référence du protocole Wayland, qui est supposé simplifier les choses comparé à X11. Les versions des dépôts Ubuntu ne sont guère à jour, et tout ne m'a pas l'air très clair, mais de ce que j'en comprends, Weston propose 4 possibilités :
- [hors-sujet] le "desktop-shell" qui est un bureau basique (un panneau chiant à configurer, des applis de démo, un fond d'écran, une vue en exposé des fenêtres, des raccourcis claviers, etc.) plutôt bien documenté
- [hors-sujet] le "ivi-shell", je sais pas comment le faire tourner mais ça fait comme un genre d'ordi embarqué pour voiture, avec je suppose des applis ("gps", "musique", etc.) (je ne sais pas si c'est un logiciel réellement utilisé ou si c'est juste conçu pour faire la démo technique de Wayland)
- implémenter ton propre "shell" au-dessus de libweston (aucune idée de la difficulté de la tâche, mais je trouve peu d'exemples de tentatives encore maintenues). Alternativement, implémenter ton propre shell au-dessus de wlroots, qui fait à peu près pareil mais a l'avantage d'avoir une communauté active. (Selon moi, vu ton usage, ce serait prendre un bazooka pour tuer une mouche)
- le "fullscreen-shell", qui ne peut accueillir qu'une seule appli prévue à cet effet ; point positif c'est ce que tu veux, point négatif ya zéro documentation, et zéroun seul exemple fonctionnel en ligne.

3 - utiliser mir https://mir-server.io

Selon moi le plus simple, les motivations sont un peu similaire à Weston, mais c'est bien davantage utilisé dans l'IoT, je vois notamment des choses comme ça https://discourse.ubuntu.com/t/mir-kios … s-mir/7246 J'ai pas tout lu, mais méfie-toi des snap, ils prennent du volume disque et ça peut être gênant dans ton cas

Dernière modification par Roschan (Le 09/10/2019, à 08:18)

Hors ligne

#3 Le 09/10/2019, à 08:16

DonutMan75

Re : programation graphique sans bureau (armbian ubuntu)

Bonjour,

RZ90 a écrit :

avoir une interface qui utilise le moins de ressource possible

Si ton interface se limite juste à du texte et des menus, pourquoi ne pas utiliser ncurses dans ce cas ?
Ca permet d'exploiter toutes les possibilités du terminal (écrire en couleur et en des endroits spécifiques) et ça gère en natif le clavier et la souris.
Le site officiel
Un tuto pas mal

Concernant la deuxième partie de ta question, ça se fait mais j'ai jamais testé personnellement.
En farfouillant un peu, je suis tombé là-dessus, mais c'est peut-être obsolète ?

Bon courage pour la suite, et tiens nous au courant de tes avancées smile

Donut

Dernière modification par DonutMan75 (Le 09/10/2019, à 08:17)

Hors ligne

#4 Le 09/10/2019, à 08:54

NicoApi73

Re : programation graphique sans bureau (armbian ubuntu)

Bonjour,

+1 pour ncurses si ça répond à ton besoin.

Sinon, si tu veux une interface purement graphique, tu peux regarder vers la SDL : https://www.libsdl.org/

Hors ligne

#5 Le 11/10/2019, à 09:14

RZ90

Re : programation graphique sans bureau (armbian ubuntu)

Merci je suis en train de regardé cela (même si j'avoue que je en sais pas par ou commencer)

étant donné que j'ai également besoin d'affiché des graphique  et des image je ne retient pas ncurses.
mon besoin n'est pour le moment pas encore bien indéfinie donc il faut que je puisse rajouté des fonction après ( lecture de vidéo, visualisation de fichier PDF, d'images, de fichier HTML..)

Au final je devrais peut être choisir plusieurs solution,
démarrage sur un environnement SDL  et selon les besoin je basculerais sur un environnement bureau

je pense donc plus partir sur la  solution SDL qui semble proposer plusieurs tuto. après concernant le gestionnaire de fenêtre je reste a la case départ car je ne sais pas par ou commencé  pour ne serais qu'avoir une image et un curseur qui s'affiche a l’écran.

concernant le SDL je ne sais pas n'ont plus si il va fonctionné sous armbian et si il est nécessaire d'installer Xorg dessus... sans parlé de faite que j'ai encore jamais fait de C++


Bref j'ai encore beaucoup de chose a voir même sis j'ai déjà un peu plus de donnée d'entrée donc merci a vous

Hors ligne