GNU/Linux >> Tutoriels Linux >  >> Linux

Interface graphique Linux personnalisée :par où commencer ?

Vous souhaitez créer votre propre DE (environnement de bureau). Des exemples courants sont GNOME et KDE, bien que plusieurs d'entre eux étaient populaires. Il était en fait très populaire de créer votre propre DE, et des outils de script dédiés étaient souvent créés.

Vous aurez généralement besoin de combiner plusieurs outils :un gestionnaire de fenêtres, un programme de barre d'outils, un gestionnaire de bureau (icônes), un gestionnaire de session, éventuellement plus. En dehors de cela, seul un gestionnaire de fenêtres est une partie requise (cela n'a généralement aucun sens de ne pas exécuter de WM à l'intérieur du serveur X), et les autres sont facultatifs. Vous n'écrirez généralement pas ces outils à partir de zéro (c'est beaucoup de travail), mais utiliserez des composants déjà disponibles.

Notez que GNOME et KDE sont en fait constitués de ces éléments (bien intégrés). Par exemple GNOME consiste en un gestionnaire de fenêtres (metacity ), barres d'outils (gnome-panel ), gestionnaire de bureau (nautilus ) etc. Vous pouvez changer un élément en un autre si vous le souhaitez :il était courant d'utiliser sawfish en tant que gestionnaire de fenêtres au lieu de metacity , en gardant tous les autres éléments intacts. Maintenant, il est courant d'utiliser compiz au lieu de metacity .

J'avais l'habitude d'utiliser FVWM, qui est un gestionnaire de fenêtres avec des capacités de script supplémentaires (assez bonnes) qui pourraient être utilisées pour créer des barres d'outils, des menus et d'autres choses. L'un des bons exemples est FVWM-Crystal, qui est un DE complet construit sur FVWM et quelques autres outils, écrit dans un mélange de scripts FVWM et Python. Vous pouvez en fait modifier n'importe quel type de comportement au moment de l'exécution en ouvrant simplement la console de script de FVWM et en tapant des commandes. FVWM-Crystal peut être un bon point de départ si vous souhaitez partir de quelque chose de déjà utilisable; FVWM nu est bon si vous voulez construire votre DE à partir de zéro.

[MISE À JOUR :il semble que gnome-shell soit très similaire à cet égard à FVWM . La plupart de son comportement est scripté à l'aide de JavaScript (au lieu d'un langage personnalisé dans FVWM) et est très facile à modifier. Il est également très activement développé, car c'est une partie importante de GNOME3, avec un très bon support pour la composition. C'est le paradis des hackers;-)]

[UPDATE2 :il semble donc que j'avais raison sur gnome-shell. Il y a un Cinnamon, qui utilise le même framework (mutter gestionnaire de fenêtres) comme gnome-shell , mais construit un bureau qui fonctionne différemment de gnome-shell .]

Il y avait un site web qui était une bonne source d'idées à mettre en place :lynucs.org. Il est en panne depuis deux ans maintenant, mais il a été archivé.

Attention :beaucoup de ces composants ne sont plus maintenus, surtout depuis que GNOME/KDE a commencé à devenir réellement utilisable. Le développement dans ce domaine est généralement davantage motivé par les exigences spécifiques des appareils embarqués :téléphones ou netbooks.

Maintenant, pour répondre à vos vraies questions :

  • Flaver Linux/OS :tout ce qui est facilement personnalisable :Debian, Arch, Gentoo, LFS...
  • Outils/cadres :cela dépend de ce que vous voulez réaliser. Si vous souhaitez écrire une barre d'outils personnalisée, vous pouvez simplement utiliser des langages de script (comme FVWM), des outils personnalisés comme adesklets, ou écrire le vôtre dans Qt (si la plupart de vos autres composants sont dans Qt) ou GTK (si la plupart de vos autres composants est en GTK).
  • Interfaces utilisateur personnelles :il y en avait beaucoup, et des sites comme lynucs.org en étaient une belle compilation (lynucs listait les composants utilisés dans chaque bureau).
  • Effets de transparence complexes :les outils plus anciens ne les gèrent généralement pas de manière native, ou font des choses simples comme simplement réutiliser une partie du papier peint du bureau comme son propre arrière-plan (ce que l'on appelle la fausse transparence). Vous aurez probablement besoin d'écrire votre propre code, par ex. en tant que plugin pour compiz .

Si vous avez une interface utilisateur rapide et cool, je suggérerais de regarder dans Enlightenment. C'est plus ancien que Gnome et je l'ai trouvé extrêmement rapide et consommant peu de ressources.


Je commencerais probablement par une installation d'Ubuntu et du gestionnaire de fenêtres OpenBox et je développerais à partir de là.

OpenBox est très minimal mais vous pouvez ajouter des applications (par exemple Docky, Awn, etc.) pour fournir des éléments d'interface de bureau ou écrire les vôtres.


Linux
  1. Comment démarrer l'interface graphique sur Ubuntu Linux Machine

  2. ODrive - Client d'interface graphique Google Drive pour Linux Desktop

  3. Korembi 2 - Un gestionnaire de bureau et de papier peint parfait pour Linux

  4. Où est défini ssize_t sous Linux ?

  5. Quel gestionnaire de fenêtres ou environnement de bureau se trouve dans cette image ?

Bureau Fluxbox parfait sur Kali Linux

Comment créer des raccourcis sur le bureau Linux

Espaces de travail de bureau sous Linux

Telegram Desktop 1.0 est sorti ! Installez-le sous Linux

Utiliser l'équivalent du gestionnaire de tâches sous Linux

5 environnements de bureau Linux légers