À propos

XBMC est un média center libre initialement prévu pour fonctionner sous un Xbox. Récemment, les développeurs ont décidé de le porter sous GNU/Linux. Le but de cet article est montré comment installer XBMC sous une distribution Debian ligth. C'est-à-dire qu'on n'installera pas un gestionnaire de fenêtres.

Bien que je parle de XBMC dans ce mini tuto, il est tout à fait possible de l'adapter pour d'autres média center ou toutes autres choses. D'ailleurs, je voulais transformer un vieux PC en média center malheureusement XBMC était trop lourd. Avec quasiment les mêmes manip, j'ai réussi à installer Mythtv plus léger que XBMC.

Pré-requis

Toutes les manipulations présentes dans ce document se font en mode texte (sans interface graphique avec des boutons à cliquer ou des cases à cocher). Ce document n'est sûrement pas complet. Et selon votre configuration hardware, il peut être nécessaire d'effectuer d'autres manipulations pour avoir au final un système fonctionnel.

Installation de Debian

Debian de base

Pourquoi avoir choisir Debian au lieu d'une autre distribution GNU/Linux? Contrairement aux distributions grand public (tel Ubuntu ou Fedora), Debian permet d'installer que l'outil de base (c'est-à-dire, le minimun pour faire fonctionner l'ordinateur). Ainsi, on peut par la suite installer que ce qu'on a besoin. Je ne détaille pas ici l'installation de Debian. D'autres personnes font sûrement mieux que moi. Vous pouvez aussi vous référez au manuel d'installation de Debian. Dans mon cas, j'ai choisi Lenny.

Il est aussi possible de faire une installation minimale d'Ubuntu. Un tutoriel est disponible sur le forum de passion-xbmc.

Attention!!! Après l'installation du système de base (vers la fin de l'installation de l'installation générale), lorsque l'installateur vous propose d'installer des paquets supplémentaires, n'oubliez pas de décocher les cases (avec la barre d'espace).

Remarque : Certaines commandes nécessitent le droit de root. Ainsi, dans ce document, lorsqu'une commande est précédée de #, il faut le lancer en root. Si elle est précédée de $, il faut le lancer en tant que simple utilisateur. Pour switcher entre les deux, vous pouvez ouvrir une session chacun dans deux tty différents (Pour passer d'un tty à l'autre, il faut utiliser la combinaison des touches Alt+F<numéro>. Par exemple, Alt+F1 pour aller dans la session root et Alt+F2 pour aller dans la session de l'utilisateur.)

X.org

X.org est un serveur X libre. C'est un système de fenêtrage qui gère l'interaction homme-machine par l'écran, la souris et le clavier.

Attention!!! Ne pas confondre système de fenêtrage et gestionnaire de fenêtres (cf schéma ci-dessous).

Schéma en couches d'une interface graphique (schéma tiré de Wikipédia).

L'objectif est de ne pas installer ni un gestionnaire de fenêtrage ni un environnement graphique.

Installons donc X.org avec ses dépendances avec apt :

# aptitude install xorg

Après l'installation de X.org, lancer le serveur X :

$ startx

Si tout va bien, vous devrez voir apparaître votre souris (taper exit dans le terminal pour quitter le serveur X). Sinon, vous pouvez reconfigurer le serveur X avec la commande suivante :

# dpkg-reconfigure xserver-xorg

Sous X, si vous vous trouvez avec un clavier QWERTY au lieu de AZERTY, il suffit d'éditer le fichier /etc/X11/xorg.conf et ajouter les lignes suivantes :

Section "InputDevice"
        Identifier        "Generic Keyboard"
        Driver            "kbd"
        Option            "XkbRules"            "xorg"
        Option            "XkbModel"            "pc105"
        Option            "XkbLayout"            "fr"
        Option            "XkbVariant"        "latin9"
EndSection

Alsa

Alsa (ou Advanced Linux Sound Architecture) est un composant du noyau linux pour le support des cartes son. Installer alsa avec la commande suivante :

# aptitude install alsa-base alsa-utils

Ensuite tester si votre carte son a été reconnu automatiquement :

$ speaker-test

Si vous entendez une sorte de grésillement, votre carte son a été reconnu. Sinon, vérifier les réglages de volumes avec la commande suivante :

$ alsamixer

Augmenter le volume si nécessaire et re-tester avec speaker-test. Si ça marche vous pouvez sauvegarder les réglages avec la commande suivante :

# alsactl store

Pour restaurer les réglages par défaut :

# alsactl restore

Si par contre, vous n'avez toujours pas de grésillement, essayer de reconfigurer alsa avec la commande suivante :

# alsaconf

Re-tester à nouveau! Si ça fonctionne toujours, vérifier sur internet que votre carte son est bien supporté par linux (ou peut être il faut faire d'autre manipulation pour la faire fonctionner).

Remarque : Pour tester le son, vous pouvez aussi utiliser un lecteur en mode texte (comme Mpg123, Mpg321 et Mp3blaster).

Installation de XBMC

A partir de maintenant, on considère que le serveur X et votre carte son fonctionnent.

Cette partie est tiré du wiki officiel de XBMC (HOW-TO compile XBMC for Linux from source code). Donc, cette partie peut ne pas être à jour.

XBMC est actuellement disponible dans le dépôt multimédia de Debian. Cette partie n'est donc plus obligatoire.

Installer des paquets nécessaires

Il faut d'abord ajouter le dépôt debian-multimedia dans votre fichier sources.list pour certains paquets. Ensuite mettrez ajout les paquets :

# apt-get update && apt-get upgrade

Enfin, installer les paquets nécessaires :

# apt-get install make g++-4.1 gcc-4.1 libsdl1.2-dev libsdl-image1.2-dev libsdl-gfx1.2-dev libsdl-mixer1.2-dev libsdl-sound1.2-dev libsdl-stretch-dev libfribidi0 libfribidi-dev liblzo2-2 liblzo2-dev libfreetype6 libfreetype6-dev libsqlite3-0 libsqlite3-dev libogg-dev libasound2-dev python-sqlite libglew1.5 libglew1.5-dev libcurl3-dev g++ gawk x11proto-xinerama-dev libxinerama-dev libxrandr-dev libxrender-dev pmount libmad0-dev libtre-dev libvorbis-dev libmysqlclient15-dev libhal1 libhal-dev libhal-storage1 libhal-storage-dev libpcre3-dev subversion libjasper-dev libjasper1 libfontconfig-dev libbz2-dev libboost-dev libtool nasm libfaac-dev libenca-dev automake cmake libxt-dev libxmu-dev gperf unzip libpng12-dev libjpeg62-dev

Remarque:

  • on installe ici la liblzo2-2 et liblzo2-dev au lieu de liblzo1 et liblzo-dev (comme indiquer sur le wiki de XBMC).
  • Sous etch, il faut installer libglew1, libglew-dev, libjasper-1.701-1 et libjasper-1.701-1-dev au lieu de libglew1.5, libglew1.5-dev, libjasper1 et libjasper-dev

Obtenir le code source de XBMC

Pour obtenir le code source de XBMC :

$ cd $HOME
$ svn checkout https://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/linuxport/XBMC

Compilation et installation

$ cd $HOME/XBMC
$ ./configure
$ make
# make install

Remarque: selon la puissance de votre ordinateur, la compilation prend beaucoup de temps!

Lancement de XBMC

Avant de lancer XBMC, il faut tout d'abord lancer le serveur X :

$ startx
$ xbmc

Autologin et lancement automatique de XBMC en plein écran

Pour un autologin, il faut installer le mingetty :

# apt-get install mingetty

Ensuite, éditer le fichier /etc/inittab et ajouter la ligne suivante :

1:2345:respawn:/sbin/mingetty --autologin username tty1

Remplacer username par votre login. Dans le même fichier, commenter la ligne suivante (en mettant un # devant) :

1:2345:respawn:/sbin/getty 38400 tty1

Pour lancer XBMC automatiquement après le lancement du serveur X, il suffit d'ajouter la commande xbmc dans le fichier $HOME/.xinitrc (le créer si nécessaire).

Pour lancer le serveur X à l'ouverture de la session, éditer le fichier ~/.profile et ajouter les lignes suivantes :

tty=`tty`

# Start X only if login in tty1
if [ $tty = '/dev/tty1' ]; then
        startx
fi

Enfin, pour avoir XBMC en plein écran dès le lancement, il faut le configurer dans Paramètres→Interface→Ecran. Dans le champs Résolution, choisissez LxH (Full Screen). LxH est la résolution de votre écran. Par exemple, 1280×800 (Full Screen).

Arrêt et redémarrage

L'objectif ici est de faire en sorte lorsqu'on arrête XBMC, ça arrête aussi l'ordinateur. Et lorsqu'on choisit de redémarrer XBMC, ben ça redémarre l'ordinateur. Pour cela, nous avons besoin de sudo pour pouvoir arrêter et redémarrer l'ordinateur en tant que simple utilisateur :

# apt-get install sudo

Editer ensuite le fichier de configuration de sudo (/etc/sudoers) avec le programme visudo (Attention, il faut utiliser que ce programme pour éditer ce fichier de configuration et pas avec d'autres éditeurs de texte) :

# visudo

Ensuite, ajouter la ligne suivante :

userlogin	ALL = NOPASSWD: /sbin/halt, /sbin/reboot

Remplacer userlogin par votre login.
Enfin, ajouter dans $HOME/.xinitrc les lignes suivantes :

retour=$?
if [ $retour == 0 ]; then
  sudo halt
fi

Malheureusement, le redémarrage de XBMC provoque aussi l'arrêt de l'ordinateur car le code retour de XBMC est identique pour l'arrêt et le redémarrage :-(. ⇒ Objectif non complètement atteint! Faire une modification dans le code source de XBMC??? FIXME

Conclusion

Ce document n'est sûrement pas complet mais il y a l'essentiel pour avoir un XBMC sous un Debian minimal. Si vous avez besoin de console (pour lancer une commande par exemple pour mettre à jour votre système), sans arrêter XBMC (qui provoque d'ailleurs l'arrêt de l'ordinateur), il suffit de faire Alt+Ctrl+F2. Pour revenir, sous X, faite Alt+F7. Vous pouvez aussi installer le paquet openssh-server pour un accès ssh à partir d'un autre ordinateur.

Suite :
Configurer une télécommande bluetooth pour XBMC.

 
xbmc_sous_debian_light.txt · Dernière modification: 2010/06/07 07:45 par tuxgasy
 
Sauf mention contraire, le contenu de ce wiki est placé sous la licence suivante:CC Attribution-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki