Si Mac OS X bénéficie du portage de nombreuses applications venues du monde Unix (auquel le nouvel OS d’Apple appartient), certains logiciels Open Source très pratiqués chez nos cousins unixiens demeurent fermés à Quartz, le puissant moteur graphique de Mac OS X.
L’intérêt de l’application X11 d’Apple est de pouvoir installer des applications Unix en principe non-compatibles Mac, et d’utiliser leur interface graphique prévue pour fonctionner avec le X Window System, véritable standard du monde Unix.
Des applications sans GUI
Avant de comprendre ce qu’est X11 ou un "système d’affichage graphique", il est impératif de s’attarder sur le fonctionnement d’un logiciel (surtout dans un système Unix).
Toutes les applications ne disposent pas d’une GUI, Graphic User Interface - ou "interface graphique". Vous pouvez en avoir la démonstration grâce au Terminal : ouvrez-le et tapez ftp. Le client FTP intégré à Mac OS X se lance alors en lignes de commande (tapez quit pour quitter le FTP...).
Avec l’excellent Fink, vous avez peut-être déjà installé quelques applications issues du monde Unix et dépourvues d’interface graphique, tels yafc (un client FTP), links (un navigateur web en lignes de commande, si si !) ou encore ircii (un client IRC).
X Window System, Window Manager, Desktop : ça veut dire QUOI ?
Avec un système d’exploitation comme Free-BSD (sur lequel repose Mac OS X) ou Linux, il faut également distinguer le coeur du système de son interface graphique.
La distinction est un petit peu plus subtile, puisque la gestion de l’interface graphique s’opère à trois niveaux.
Il y a, tout d’abord, le système d’affichage graphique - le plus répandu dans les contrées unixiennes porte le doux nom de X Window System, ou encore X11 pour faire plus court. Le système d’affichage graphique permet aux applications d’afficher des graphiques (eh oui), c’est-à-dire des images, des lignes ou même des textes à l’écran. Pour faire cela, X11 utilise une architecture dite "Client-Serveur", qui distingue fondamentalement X11 de Windows, par exemple. En effet, X11 fait intervenir (pour simplifier) un "X Server" et des "X Clients". Il ne faut pas entendre serveur et client dans le sens courant : le client et le serveur sont fréquemment installés sur la même machine, comme c’est le cas lorsque vous installez X11 et The Gimp sur votre mac. Les X Clients sont tout simplement les logiciels, qui demandent au X Server d’afficher des graphiques.
X11 est, en outre, accompagné d’un "wm", c’est-à-dire un Window Manager - ou "gestionnaire de fenêtres". Dans le cas du X11 d’Apple, il s’agit de quartz-wm. Le gestionnaire de fenêtres est chargé de l’affichage des fenêtres (encore une tautologie) et permet de personnaliser l’affichage des boutons, du cadre des fenêtres, de la barre des titres, etc. En d’autres termes, le gestionnaire de fenêtres s’occupe de la décoration de l’environnement graphique.
Enfin, le troisième niveau correspond au bureau (desktop). La distribution de X11 d’Apple n’en inclut pas, mais il est possible d’en installer un. Sous Mac OS X, le bureau est l’application nommée Finder, que vous utilisez tous les jours. Attention, OS 9 fonctionnait de façon complètement différente, puisque le Finder était une composante indissociable du système d’exploitation.
XFree86 et X11
Si vous décidez d’utiliser le X11 d’Apple, vous risquez d’entendre parler de XFree86. Leur relation peut paraître un petit peu compliquée, mais il est préférable de savoir ce qu’ils sont respectivement. Il faut, tout d’abord, bien distinguer X11 et Apple X11.
X11 est le diminutif, on l’a vu, de X Window System, qui désigne non pas une application en tant que telle mais tout ce qui fait la relation entre le X Server et les logiciels clients. Bien avant qu’Apple ne s’en mêle, un projet visant à adapter X11 sur Mac a vu le jour. Le résultat de ce projet s’appelle XFree86. XFree86 est ainsi le portage de X11 sur Mac.
Apple s’en mêle alors et crée un logiciel sur la base de XFree86... Pour ne pas simplifier les choses, Apple décide de nommer son nouveau soft X11. Pour résumer, Apple X11 est conçu sur la base de XFree86 qui est lui-même un portage de X11 sur Mac. Ouf.
L’idée du projet XFree86 était de porter X11 sur Darwin, la base de Mac OS X disponible en Open Source (sa partie dépourvue d’interface graphique, donc, à laquelle l’utilisateur a accès par le Terminal).
Pourquoi utiliser X11
X11 est, nous l’avons évoqué, une ouverture sur des milliers d’applications du monde Open Source.
Ces applications sont gratuites, développées par des passionnés. Il faut rendre hommage à tous les développeurs de la communauté Open Source (car c’est bien une communauté).
Aujourd’hui, KWord concurrence sans rougir avec Microsoft Word (Microsoft a, en revanche, de quoi rougir). De même, The Gimp est un concurrent sérieux de Adobe Photoshop. Si la philosophie de l’Open Source est très différente du secteur marchand, les produits sont, eux, très proches, y compris en termes d’expérience utilisateur et d’ergonomie.
Pour certains utilisateurs spécifiques - je pense ici aux scientifiques - X11 est indispensable, car il donne accès à des applications qui n’existent que pour Unix.
Apple, avec X11, poursuit sa reconquète du marché de l’informatique professionnelle.
Installation de Apple X11
L’installation est extrêmement simple.
Il suffit de télécharger l’installeur de X11 (en beta 3 au moment de la rédaction de cet article) ici :
http://www.apple.com/macosx/x11/download
Deux éléments doivent impérativement être téléchargés puis installés, dans l’ordre il s’agit de :
X11 (eh oui)
X11 SDK (Software Developer Kit), indispensable pour que X11 soit bien pris en compte par Fink.
Il est fréquemment recommandé d’installer l’intégralité des Dev Tools qui incluent X11 SDK (à condition de personnaliser l’installeur des Dev Tools en ce sens...). Libre à vous de le faire.
Une fois la courte installation terminée, un nouveau logiciel a fait son apparition dans le dossier Applications : X11.
Utiliser des logiciels avec X11
Au lancement de X11, par défaut, c’est une fenêtre de Terminal qui s’affiche. Il s’agit ici de l’application XTerm, fournie avec X11 (XTerm n’est donc pas X11 !). Elle permet de lancer une application en ligne de commande, tout simplement en indiquant le chemin du fichier ad hoc (il faut que ledit fichier ait des droits d’exécution, mais cette question sera évoquée dans un autre article).
Les applications installées avec Fink sont placées dans le dossier de Fink. Par exemple, si vous avez installé l’excellent KWord, il faudra taper :
En réalité, la plupart des applications installent un alias de commande, qui permet de lancer le logiciel depuis n’importe quel endroit juste en tapant son nom. C’est le cas avec Kword ou, comme nous l’avons expérimenté plus tôt, avec ftp. Au sujet des alias de commande, Gunjin a fait (un autre) article indispensable.
Les logiciels peuvent également être ajoutés au très pratique menu Applications de X11. Pour cela, il suffira d’en indiquer le chemin dans la fenêtre Customize, accessible depuis ledit menu Applications.
Fink, le meilleur copain de Apple X11
Ce n’est pas parce que X11 est installé sur un Mac que ce dernier peut utiliser les installeurs du monde Linux, par exemple. Un travail minimum de compilation des applications doit être opéré afin que Darwin (OS X) les exécute convenablement.
Fink intervient ici. Il permet en effet de télécharger les sources des logiciels et de les compiler afin d’en faire des logiciels compatibles avec Darwin. Fink fonctionne en lignes de commande (de même que apt-get, bien connu des utilisateurs de Debian), mais il est possible d’utiliser Fink Commander pour les allergiques du Terminal (c’est un peu comme les Packages Managers sous les différentes distribution de Linux). Cependant, Fink n’est pas toujours nécessaire, car il existe, sur le web, des binaires déjà compilés permettant d’installer des logiciels directement - c’est le cas pour The Gimp. Ces binaires compilés sont comparables aux RPM des distributions courantes de Linux et ont le suffixe .pkg.
Une fois que vous avez installé Fink, tapez :
Fink répondra que vous avez déjà une version de xfree86 installée (c’est Apple X11)... Mais il fallait lui signaler, faute de quoi Fink pourrait vous refuser toute installation de logiciel nécessitant une GUI. Redémarrez la machine ou tapez "rehash" dans terminal avant de tenter toute installation.
N’oubliez pas de lire l’article de Gunjin à propos de l’installation et de l’utilisation de Fink.
A suivre...
Cet article avait pour objet de présenter X11, son principe et son fonctionnement de base. D’autres articles suivront, traitant par exemple de l’installation de KDE ou de Gnome (des bureaux pour X11) et de leurs conséquences diverses, notamment pour le Window Manager.
Pour plus d’informations sur X11 en général, je vous recommande le site officiel : http://www.x.org.
P.S.
Je dédie cet article à xdjuj, le meilleur ami de mon chien, et à Gunjin, le meilleur ami de la Suisse. Je n’oublie pas non plus Skalp, le meilleur ami des amis de la Suisse.
Bien le bonjour. Désolé de poser une question de néophyte, mais votre site semble être réalisé dans le but d’aider les utilisateurs, alors j’y vais... :
En vue d’installer un logiciel nécessitant X11, j’ai effectué l’installation du X11 d’Apple, puis de Fink, puis des DevTools.
Par ailleurs, j’avais déjà installé LaTeX. Je me suis dit qu’un bon test était d’installer xdvi par Fink, ce qu’il a bien fait. Les problèmes commencent là : dans le terminal Darwin, xdvi —version renvoie ce qui est attendu, mais xdvi fichier.dvi me renvoie "Can’t open display". Pas de panique : je me dit que c’est pour cela qu’on installe X11 et que vais dans le XTerm. Et là, oh surprise, xdvi est inconnu au bataillon des commandes bash, ainsi d’ailleurs que fink ou encore latex...
Le fichier des PATH n’est pas à jour, me dis-je. J’édite avec pico le .profile qui contient naturellement les lignes du PATH LaTeX ainsi que /sw/bin/init.sh de Fink (normal, puisque ça marche dans Darwin.). Editer un fichier .cshrc dans le XTerm ne change rien : et là, j’ai atteint mon seuil d’incompétence (je m’étonne moi-même d’être allé si loin !).
Résumons-nous :
1°) Que dois-je faire pour que XTerm prenne en compte latex, fink, xdvi (et donc les packages futurs installés par Fink...) ?
2°) Est-il normal (comme je le pense) d’obtenir le message "Can’t open display" quand j’utilise xdvi sous le terminal Darwin (avec dans le fichier crash.log la mention "X11R6/dylib.7.dylib : no such file or directory", alors que c’est violemment faux : l’installation du X11 d’Apple ayant créé ces fichiers...) ?
Je pense que pour des connaisseurs le problème n’est pas très compliqué (j’espère). Je remercie par avance les personnes qui voudront bien s’y atteler pour me faire une réponse.
Salut Alex,
pourrais copier ta question dans le "vrai" forum du site, parce que là ça devient plus pointu :)
http://www.xrings.net/xrings/forum
Bonjour j’ai beaucoup apprécié cet article et j’ai profité de toute ces infos pour installer Fink. Cela a été simple.
Ceci dis j’avais déjà installer le Gimp avec une application, il marche trés bien. Puis j’ai installé OOO...et la c’est le drame, en effet je n’arrive pas à le lancer malgré les bon conseil touver sur diverse site.
Bon je cherche alors un autre logiciel pour ecrire des formules, je trouve texmacs sur le site de Fink et je l’installe avec toute les recommendations que l’on peut avoir en tant que newbi. L’installation s’effectue sans probleme, mais une fois de plus en lançant le programme je ne vois rien... il n’y a plus que le Gimp qui marche.
Ma question est donc, par evidence, comment faire marcher le Gimp et OOO avec d’autres logiciels, le tout sous X11 d’Apple.
Il existe toujours la version pour 10.2 :
http://chemistry.ucsc.edu/%7Ewgscott/temp/xwindows.dmg.gz
J’ai tout lu et tout suivi mais rien n’y fait et j’obtiens toujours le même message a propos de gcc_select 3.3
quelqu’un peyt m’aider ?
bonne année à tous
Use of uninitialized value in substitution (s///) at /sw/lib/perl5/Fink/PkgVersion.pm line 1002,
sudo gcc_select 3.3
You may need to install a more recent version of the Developer Tools to be able to do so.
[magatst : ] magatst% sudo gcc_select 3.3 sudo : gcc_select : command not found [magatst : ] magatst%
Deux questions : X11 apple est il "meilleur" et "plus compatible " que Xdarwin avec OroborX ?
Pourquoi certains logiciels (IDL) fonctionnent avec XFree86 et très mal avec Apple X11 ?
Je n’ai pas testé Orobor OS X. Sauf erreur de ma part, il faut installer XFree86 dans sa version "non-Apple" pour le faire fonctionner (notamment pour avoir la XDarwin.app). Ce n’était pas mon objectif dans le cadre de cet article, mais pourquoi pas essayer...
Au sujet des performances d’Apple X11, je ne peux donc pas comparer avec le couple XDarwin/XFree86. L’avantage du X11 d’Apple, outre le support d’Apple qui assure la viabilité du projet, X11 permet l’utilisation de quartz-wm, qui est théoriquement optimisé OpenGL. J’aurais tendance à penser que Apple X11 est potentiellement plus performant (j’ai bien "aurais tendance à penser" et "potentiellement" !).
Cela dit, Apple X11 a des défauts que je trouve un peu agaçants, notamment le fait qu’il est exclusivement utilisable en rootless et pas en rooted (c’est-à-dire en plein écran). Or cela pose problème dès qu’on utilise un autre WM (comme avec KDE). Mais c’est encore un autre sujet qui fera l’objet d’un article spécialement consacré à KDE...
Rien à dire, un beau tableau, bien dressé, belle illustration de la multicompétence de notre système favori, Unix malgré tout !
Tous les atouts d’une agréable et stable interface, et toute la puissance d’un Unix, toutes les solutions spécifiques (le terminal, apt-get, fink, la notion de package...), l’ouverture vers des logiciels sous licence GPL (Open Source) qui rivalisent de mieux en mieux avec des solutions logiciels bien souvent hors de prix...
Regardez votre mac autrement, et prenez conscience de la réelle double compétence qu’apporte X11.
La possibilité d’utiliser des interfaces de travail comme le très puissant R compilable sous X11 (pour gérer des matrices de données de très grosse taille, impossible sous Excel par exemple), la rapidité de gnuplot pour les scientifiques coutumier de l’exploitation graphique de grosses quantités de données (dépassant encore largement les capacités offertes par Excel ou autre).
C’est donc là un réel outil professionel qui s’offre aux utilisateurs mac, ou tout simplement une alternative aux offres logiciel qui vous sont faites, une ouverture vers le monde GNU... le développement libre !
Merci à Bazaar d’introduire ici les bases, et merci à lui de prévoir la publication d’une suite, certainement aussi bien menée !
XD.
oh oui ! on en veut encore.
la suite, la suite ...
avec nos encouragements,
un mac user qui ne veut pas mourrir idiot dans son champs de pommes.
Yep ! La suite please ! L’utilisation d’X11 sur Mac manque cruellement de doc simple.
J’aurais juste voulu preciser une chose sur XFree86. Celui-ci existait bien avant Mac Os X, le but etait de creer une implementation de X11 Open Source et pour Linux particulierement (Je crois...). Et cette implementation a ete portee depuis sur plusieurs plateformes. Donc XFree86 sur Mac est un portage de plus d’une application Open Source sur notre plateforme cherie.
Apres ca, Apple a decide de sortir une implementation de X11 a sa sauce. Ce qui fait qu’il y a 2 serveurs X11 "concurrents" pour Os X ajd : XFree86 et Apple X11.
D’ailleurs, un article sur leurs differences, leurs incompatibilites, etc m’interesserait !
Je vous souhaite bon courage et bonne continuation. Ce site est un des plus interessants que je connaisse dans son domaine.
Il y a également XTools qui me semble très très intéressant - notamment parce qu’il gère le mode rooted (plein écran)...
A suivre :p
Si le hack est bien en cause, il faut faire un choix...
Peut-être que la version finale 1.0 de X11 intégrée à Panther 10.3 réglera ton problème.
En attendant, à moins de contacter directement l’auteur du hack que tu as installé, je ne vois pas de solution.