# [HOWTO] Installer Metisse à partir des sources CVS

## DidgeriDude

[EDIT 09/06/2009]

Mise à jour

------

J'utilise Metisse quotidiennement depuis plusieurs mois... Voici donc de quoi faire pareil !

Boujour à tous.

Ce sujet fait suite à celui-ci dans lequel je donnais des ebuilds pour installer la version 0.4.0-rc1 de Metisse, un gestionnaire de fenêtres basé sur OpenGL et FVWM.

Il est vrai qu'avec l'utilisation de plus en plus répandue de compiz-fusion ou autres ecomorph, certains d'entre vous ne verront pas forcément l'utilité d'un autre gestionnaire lui-aussi basé sur OpenGL et qui possède, du moins je pense, des possibilités ou fonctionnalités moins étendues, ou tout du moins différentes et peut-être moins recherchées. Néanmoins, l'atout majeur de Metisse (cet avis n'engage que moi d'ailleurs  :Wink:  ) réside dans sa très haute configurabilité (je sais, ce mot n'existe pas !) étant donné qu'il est basé sur FVWM.

Quelques vidéos et captures d'écran comme mises en bouche !!

Entrons maintenant dans le vif du sujet :

Je mets à jour ici les étapes de mon premier tutoriel, en partant de la base. Libre à vous de sauter les étapes qui ne vous concernent pas. J'essaie juste de faire un tutoriel qui soit accessible au néophyte (mais l'est-on vraiment avec Gentoo ?!) comme aux autres.

Etape 1 :

Mettez PORTDIR_OVERLAY="/usr/local/portage" dans /etc/make.conf.

(/usr/local/portage n'est qu'un exemple, vous pouvez parfaitement choisir un autre répertoire !!).

Puis, si ce n'est pas déjà fait, créez ce répertoire !!

Par la suite, j'utiliserai toujours /usr/local/portage...

Etape 2 :

Téléchargez metisse-nucleo-cvs.tar.gz.

J'ai imposé dans l'ebuild de Metisse de l'installer dans /usr/local afin de ne pas créer de conflit avec une installation possible de FVWM.

Etape 3 :

Décompresser l'archive (en tant que root) :

```
tar -xvzpf metisse-nucleo-cvs.tar.gz -C /usr/local/portage
```

Etape 4 :

Ajoutez les lignes suivantes dans /etc/portage/package.keywords :

```
x11-libs/nucleo -*

x11-wm/metisse -*
```

Etape 5 :

```
emerge metisse
```

Etape 6 :

On peut utiliser Metisse seul comme session X, à partir d'un autre gestionnaire de fenêtres ou par-dessus un environnement de bureau tel Gnome ou KDE. Personnellement, je l'utilise à partir d'une session "over-mega-very" light de FVWM afin de gérer facilement les applications OpenGL ou les vidéos plein écran que je lance dans la session FVWM derrière.

Voici mon fichier de lancement :

metisse.sh

```
#!/bin/sh

Xmetisse -ac -dpi 85 -geometry 1280x1024 -depth 24 :1 >& $HOME/.fvwm-metisse/.Xmetisse.log &

$HOME/.bin/metisse-start-fvwm.sh >& $HOME/.fvwm-metisse/.metisse.log
```

Le fichier metisse-start-fvwm.sh est une version allégée de l'original /usr/local/bin/metisse-start-fvwm

Je complète ce tutoriel avec plus ou moins quelques remarques de mon précédent sujet :

La configuration

Au premier démarrage, Metisse crée un répertoire ~/.fvwm-metisse avec tout ce qu'il faut dedans. Etant basé sur FVWM, on peut refaire toute la config !

Celle-ci fonctionne sur la lecture du fichier ~/.fvwm-metisse/config qui lit le fichier metisserc qui se charge de lire tous les autres fichiers de configuration (mais si vous refaites une config, tout peut se trouver dedans !). Le fichier config est modifiable mais attention il contient la partie fondamentale, c'est à dire le lancement de FvwmCompositor et la définition de fonctions ABSOLUMENT nécessaires au système.

De plus, à chaque lancement de Metisse, un test est fait sur la présence de ces 2 fichiers : si config n'est pas présent, il est créé ; si metisserc n'est pas présent, alors toute la configuration de base est copiée dans le répertoire ~/.fvwm-metisse, écrasant vos éventuels fichiers !!

Un second test est également effectué et compare les révisions de ces fichiers (écrites à la 1ère ligne de chacun) avec celles courantes de la dernière installation. Si celle du fichier config diffère, le fichier est remplacé tandis que si celle de metisserc diffère, alors un simple avertissement apparaît dans les logs. Ma version allégée du script de lancement évite tous les tests et les changements automatiques de config !!

A mon avis, ce soft est à (re)découvrir...

Merci encore à Olivier Chapuis pour son aide et son efficacité.Last edited by DidgeriDude on Tue Jun 09, 2009 8:34 pm; edited 4 times in total

----------

## DidgeriDude

Même si cela ne concerne pas grand monde ici (peut-être même suis-je le seul à l'utiliser régulièrement   :Very Happy:  ), je vous signale la mise à jour des ebuilds afin de fonctionner avec automake 1.10.

J'ai fais un truc de gros cochon en modifiant un fichier à coup de sed, mais c'est en attendant de contacter le développeur pour le lui signaler...

Les ebuilds seuls pour Metisse et nucleo sont ici, ainsi que les overlays cités plus haut.

Une config (quoique datant un peu maintenant) de Olivier Chapuis pour Metisse est disponible ici

++Last edited by DidgeriDude on Sat Feb 10, 2007 2:30 pm; edited 1 time in total

----------

## Darkael

Arf dommage que Metisse ne fonctionne pas sous amd64... à moins que ça ait changé depuis?

Sinon ça aurait été une occasion pour moi de revenir un peu à FVWM...

----------

## DidgeriDude

Salut

Metisse a profondément changé depuis mes derniers posts...

Plus de FvwmAmetista, Xwnc renommé...

Je vous engage donc à aller voir les liens sur la page de Metisse :

Building Metisse

Running Metisse

Using and configuring the Metisse compositor

Les ebuilds CVS présents ici fonctionnent bien avec la nouvelle mouture.

Par contre l'ebuild pour Metisse utilise encore un truc de cochon à coup de sed car le fichier bootstrap ne gère pas encore automake 1.10. Mais comme celui pour nucleo est OK, ça ne devrait pas tarder. Je modifierai l'ebuild en conséquence à ce moment-là...

Ils existe des releases de nucleo (version 0.6) et Metisse (version 0.4.0-rc4) disponibles ici mais n'ayant pas réussi à compiler nucleo, je n'ai pas créé d'ebuild pour ces versions-là...

@KarnEvil : Ceci serait-il succeptible de t'intéresser ??

----------

## Darkael

 *DidgeriDude wrote:*   

> 
> 
> @KarnEvil : Ceci serait-il succeptible de t'intéresser ??

 

Oui effectivement c'est ce que je cherchais... En fait en regardant ces patches ça rejoint ce que j'avais conclu la dernière fois que j'avais jeté un oeil aux sources de Metisse (les objets sont identifiés par leur adresse mémoire, ce qui casse la portabilité), mais j'avais pas le temps/les compétences pour corriger ça. C'est bien que quelqu'un se soit décidé à le faire  :Smile: 

Bon sinon j'ai des erreurs de compilation au niveau de nucleo, apparement liées à un serveur DNS ou je ne sais quoi (!?), je regarderais ça de plus près quand on me remettra ma connexion Internet chez moi....

----------

## Darkael

Finalement j'ai réussi à compiler nucleo en installant mDNSresponder (???), metisse compile bien aussi et apparement ça tourne bien

Bon je vais peut-être me remettre à FVWM alors...

----------

## Mickael

Vous avez des screenshots les gens s'il vous plaît.

EDIT : merci  :Wink: 

----------

## Darkael

 *MickTux wrote:*   

> Vous avez des screenshots les gens s'il vous plaît.

 

Ben tu n'as qu'à prendre des screenshots de FVWM et imaginer qu'il y a des effets 3D  :Smile: 

----------

## bouleetbil

salut,

la http://www.frogdev.info/images/metisse.png

et la http://www.hboeck.de/uploads/metisse.png

----------

## hYsTerYk

salut les gars ! sa va peut etre vous parraitre con mais j'arrive pas à installer tout sa ... snif !

J'vous explique le truc, je suis nouveau dans la communauté, donc j'y connais pas grand chose encore ... j'ai un jolie turion64 qui commence à m'énerver lol !

Bref, en parcourant le forum, j'ai utiliser la méthode décrite : http://insitu.lri.fr/metisse/docs/building.html seulement je suis déja bloqué pratiquement au début ^^

je fais un ./configuration et la je m'appercois à la fin que jes des truc qui ne sont pas installés. Je pense que le problème viens de la.

```
Núcleo configuration:

  Architecture: x86_64-unknown-linux-gnu

  ---

  glWindow backend?    GLX + Xinput glXGetProcAddress

  JPEG image support?  yes

  PNG image support?   yes

  EXIF support?        yes

  Freetype2 support?   yes

  DNS-SD support?      no (dns_sd library not found)

  ---

  FFmpeg plugin?       yes

  VNC plugin?          no (--with-vnc option not or badly used)

  Qt plugin?           no (QtCore not found by pkg-config)

  ---

  OpenCV demos?        no (opencv not found by pkg-config)

```

Au début les 3/4 étaient en no, j'ai donc chercher et j'ai reussi à en installé quelques uns, seulement le reste je ne sais pas comment faire.

voila et donc ensuite lorsque je fais un jolie make sa me donne sa à la fin :

```
sgNode.cxx: In member function 'void nucleo::sgNode::selectGraph()':

sgNode.cxx:288: error: cast from 'nucleo::sgNode*' to 'GLuint' loses precision

sgNode.cxx:288: error: cast from 'nucleo::sgNode*' to 'GLuint' loses precision

sgNode.cxx:289: error: cast from 'nucleo::sgNode*' to 'GLuint' loses precision

make[4]: *** [sgNode.lo] Erreur 1

make[4]: quittant le répertoire « /root/nucleo-0.6/nucleo/gl/scenegraph »

make[3]: *** [all-recursive] Erreur 1

make[3]: quittant le répertoire « /root/nucleo-0.6/nucleo/gl »

make[2]: *** [all-recursive] Erreur 1

make[2]: quittant le répertoire « /root/nucleo-0.6/nucleo »

make[1]: *** [all] Erreur 2

make[1]: quittant le répertoire « /root/nucleo-0.6/nucleo »

make: *** [all-recursive] Erreur 1
```

je pense que ce n'est pas utili que j'aille plus loin dans l'installation si déja j'ai quelques erreurs ...

Quelqu'un peut'il m'aider ?

----------

## DidgeriDude

 *KarnEvil wrote:*   

> 
> 
> Bon je vais peut-être me remettre à FVWM alors...

 

Hmmm, j'attends les screenshots !

@hYsTerYk :

Tout d'abord, bienvenue sur le forum !

Si tu postes ici, c'est que tu dois être sous Gentoo !  :Cool: 

Alors dans ce cas, suis la procédure que j'ai décrite plus haut en installant les overlays CVS ! Chez moi, tout s'installe comme un charme (09-02-2007) !

De plus, je crois que les versions "releasées" n'ont pas de support pour les processeurs 64 bits alors que le patch a déjà été inclu dans la version CVS.

Le support pour DNS-SD s'obtient en installant mDNSresponder. Pour QT plugin, je ne sais pas...

Essaie et renvoie les infos.

----------

## Darkael

Bon j'ai commencé à jouer un peu avec les nouvelles fonctionnalités de Metisse (enfin, nouvelles pour moi), par contre j'arrive pas à faire quoique ce soit avec les façades (je sais c'est pas officiel, mais les bindings sont bien là).  Selectionner une région ça marche, par contre j'arrive pas à créer une façade ou dupliquer une fenêtre. Apparement il y a une erreur de segmentation avec le programme facade-holder, mais je suis pas sûr...

Je vais essayer le liveCD de mandriva pour voir.

[EDIT] bon ça marche avec mandriva, surement un problème amd64 ou les aléas du CVS....

[EDIT2] tiens les façades marchent maintenant, sans raison apparente (pas d'update), je comprends plus rien

----------

## DidgeriDude

Modification des ebuilds afin de prendre en compte le fait que virtual/x11 est désormais masqué...

L'overlay pour FVWM disponible dans les liens ci-dessus est désormais maintenu par 6thpink, présent sur ce forum et sur le forum officiel de FVWM.

Merci à lui !

----------

## davidou2a

Toujours pas compatible amd64???

----------

## DidgeriDude

Je n'ai pas cette architecture, mais un patch a été appliqué il y a quelques temps déjà la concernant.

Par contre, je n'ai pas vu de retour d'expérience...

A mon avis, une seule chose à faire : tester !!

----------

## davidou2a

Bon ça marche sur mon laptop avec amd64 et carte ATI...

Seule truc ça m ouvre Metisse dans une fenetre hors je voudrais bien inserer metisse dans mon propre theme fvwm et configurer les bindkeys moi meme... j ai pas encore trouvé mais je trouverai  :Smile: 

----------

## DidgeriDude

Si tu le lances à partir de ton FVWM, c'est normal qu'il tourne dans une fenêtre.

Afin d'adapter ton thème FVWM à Metisse, je te conseille fortement de ne pas écraser certaines parties de la config de base car un test est effectué au lancement de Metisse afin de savoir si la config est OK.

Je te mets ici la manière que j'utilise (je fais d'ailleurs de même avec FVWM). Elle me permet surtout de gérer plusieurs thèmes :

Je laisse le fichier config dans $HOME/fvwm-metisse (indispensable), et j'ai modifié le fichier metisserc comme suit :

```
## Dossier du Thème en cours

#----------------------------

SetEnv current_thm $[FVWM_USERDIR]/current

## Chargement de la config

#--------------------------

Read $[current_thm]/metisserc
```

Le dossier current est juste un lien vers l'emplacement de la config, ce qui permet, à l'aide d'un script, d'en changer au démarrage...J'ai remplacé dans ma config toute référence à .fvwm-metisse, ou FVWM_USERDIR par $[current_thm]. Je l'ai également rajouté à chaque commande Read car, en l'absence d'un chemin complet, elle ne cherche le fichier que dans FVWM_USERDIR

Grâce à cette façon de faire, je n'ai pas à modifier ma config FVWM pour l'adapter à Metisse. En effet, j'utilise aussi la variable current_thm pour mon FVWM. A l'aide d'un test sur son contenu, je peux charger ou non les fonctions propres à Metisse comme cela une seule config fonctionne pour les deux WMs !!

Ensuite, afin d'utiliser les intérêts de Metisse, ben t'as pas le choix : il faut éplucher la config de base. Les "key bindings" ou "mouse bindings" sont définis par des fonctions suivant les modificateurs utilisés. C'est peut-être très pratique pour les développeurs mais j'ai trouvé cela assez casse-pied au premier abord, d'autant qu'il faut sans cesse changer de fichier de config pour bien comprendre à quoi sert tel ou tel truc !

Amuse-toi bien !

----------

## davidou2a

Ah bah merçi bien  :Smile:  en tout cas je suis surpris que ça marche parfaitement sur mon ATI Radeon Xpress 1100 IGP, j'ai utilisé les drivers dispos sur le site d'ATI et non ceux de portage et ça a toujours marché j'ai un bon debit de frames par secondes avec glx_gears et j'ai le render a yes...

Par contre truc etonnant xcompmgr utilisé seul avait des gros souçis chez moi, par contre je crois que metisse utilise composite et aparement avec les drivers boite d'ATI ça passe, sans aucunes section pour Composite dans mon Xorg.conf bref le monde numerique est parfois etrange  :Smile: 

----------

## DidgeriDude

Metisse n'utilise pas composite ! Avec lui, pas besoin de xcompmgr, transset, etc.

Le module FvwmCompositor se charge, comme son nom l'indique, de composer les différentes fenêtres et de gérer l'affichage, transparence, rotation, etc.

Il utilise une surcouche à Xorg (Xmetisse), comme, je crois, le faisait Xgl en son temps !!

Mais je crois avoir lu que Olivier Chapuis avait dans l'idée de s'affranchir de Xmestisse dans l'avenir, et de rendre Metisse un peu comme Beryl aujourd'hui, juste un WM à part entière. Mais cela necessite une grosse modification du code, et donc du temps. Un support pour Xinerama est aussi envisagé !

----------

## davidou2a

Hum sinon ça m a ajouté 3 entrées dans GDM:

FVWMI

Mini-FVWMI

Opale

Aucunes d'entres elles a le theme Metisse que j'ai lorsque je l'ouvre dans une fenetre... 

sinon a quoi sert mDNSResponder >> http://gentoo-wiki.com/HOWTO_Metisse

En fait ce que je cherche c est avoir une entrée Metisse dans GDM qui lance Metisse et son theme, et qu ensuite je puisse bricoler ça en y incluant mon propre theme FVWM... je sais pas si je suis clair enfin voila  :Confused: 

*** EDIT ***

Chose etrange mon script pour voir les wallpapers ne fonctionne pas depuis que metisse est emergé  :Confused: 

----------

## DidgeriDude

Les fichiers pour créer des sessions dans GDM sont situés /etc/X11/dm/Sessions. Ce sont des fichiers au format .desktop. Utilise ceux présents pour en créer un à ton goût pour Metisse, en regardant les scripts qui sont lancés (opale-start-fvwmi par exemple).

Concernant mDnsResponder, je n'en ai pas la moindre idée !! Le net n'est pas très bavard sur ce démon et sur ses réelles utilisation et utilité !

Ton script pour les wallpapers ne marche plus du tout, ou seulement dans Metisse ?

S'il n'est pas trop long, poste-le ici car on peut pas t'aider sans info précise  :Wink: 

----------

## DidgeriDude

Je fais simplement remonter ce topic suite à sa mise à jour.

Metisse est maintenant parfaitement utilisable malgré son défaut de DISPLAY :1 donc si certains veulent en profiter... C'est ici

----------

