{"id":1767,"date":"2013-08-30T13:02:29","date_gmt":"2013-08-30T11:02:29","guid":{"rendered":"https:\/\/www.azurs.net\/carnet\/?p=1767"},"modified":"2025-10-17T23:16:40","modified_gmt":"2025-10-17T21:16:40","slug":"xbmc-sur-raspberry-pi-sous-archlinux-installation","status":"publish","type":"post","link":"https:\/\/www.azurs.net\/carnet\/2013\/08\/xbmc-sur-raspberry-pi-sous-archlinux-installation\/","title":{"rendered":"XBMC sur Raspberry Pi sous Archlinux : installation"},"content":{"rendered":"<h2>Pourquoi installer XBMC sous Archlinux sur ma carte Raspberry Pi ?<\/h2>\n<p>Cela fait maintenant plusieurs mois que l&rsquo;un des deux <a href=\"https:\/\/www.azurs.net\/carnet\/2013\/01\/raspberry-pi-il-sappelle-framboise\/\" title=\"Il s\u2019appelle framboise\">Raspberry Pi<\/a> dont je suis l&rsquo;heureux propri\u00e9taire tourne sous <em>Archlinux ARM<\/em>, dans la version adapt\u00e9e \u00e0 ce mini-ordinateur mono-carte. Cette machine est utilis\u00e9e entre autres comme <a href=\"https:\/\/www.azurs.net\/carnet\/2013\/07\/seedbox-sur-raspberry-pi-sous-archlinux\/\" title=\"Serveur de torrents sur Raspberry Pi sous Archlinux\">serveur de fichiers Bittorrent<\/a> et comme unit\u00e9 de stockage en r\u00e9seau (j&rsquo;ai publi\u00e9 et mis \u00e0 jour il y plusieurs mois un relev\u00e9 des \u00e9tapes de mon installation d&rsquo;<a href=\"https:\/\/www.azurs.net\/carnet\/2013\/03\/arch-linux-sur-raspberry-pi-installation\/\" title=\"Arch linux sur Raspberry Pi : installation\">Archlinux sur Raspberry Pi<\/a>).<\/p>\n<p>Le second Raspberry Pi est d\u00e9di\u00e9 \u00e0 la musique et \u00e0 la vid\u00e9o. Pour la musique, j&rsquo;utilise <a href=\"https:\/\/www.azurs.net\/carnet\/2013\/04\/mpd-sous-arch-linux-sur-raspberry-pi\/\" title=\"MPD sous Arch Linux sur Raspberry Pi\">MPD<\/a>, dont j&rsquo;ai install\u00e9 un client sur mon t\u00e9l\u00e9phone mobile et sur une tablette. Pour la vid\u00e9o, j&rsquo;ai test\u00e9 <a href=\"http:\/\/www.raspbmc.com\/\">Raspbmc<\/a> avant d&rsquo;opter pour <a href=\"https:\/\/www.azurs.net\/carnet\/2013\/07\/clavier-francais-sous-openelec-sur-raspberry-pi\/\" title=\"Clavier fran\u00e7ais sous OpenELEC sur Raspberry Pi\">OpenELEC<\/a>. Pour faire coexister MPD et XBMC sous OpenELEC sur la m\u00eame machine, j&rsquo;ai pens\u00e9 utiliser <a href=\"http:\/\/www.berryterminal.com\/doku.php\/berryboot\">Berryboot<\/a> pour d\u00e9marrer la carte soit sous OpenELEC pour la vid\u00e9o, soit sous Archlinux sur lequel j&rsquo;aurais install\u00e9 MPD pour la musique.<\/p>\n<p>Je ne suis pas parvenu \u00e0 installer Archlinux ARM via Berryboot, malgr\u00e9 de nombreux essais pour contourner <a href=\"http:\/\/archlinuxarm.org\/forum\/viewtopic.php?f=31&#038;t=5229&#038;hilit=berryboot\">cette difficult\u00e9<\/a>. J&rsquo;ai donc finalement opt\u00e9 pour une installation de MPD sous Raspbian d&rsquo;une part, et d&rsquo;XBMC sous OpenELEC d&rsquo;autre part. Pour la vid\u00e9o, XBMC sous OpenELEC me donne satisfaction, apr\u00e8s avoir localis\u00e9 correctement mon clavier AZERTY.<\/p>\n<h2>Pourquoi installer MPD sur la m\u00eame carte sans utiliser Berryboot ?<\/h2>\n<p>Pour la musique et pour une raison que j&rsquo;ignore, mon convertisseur de signal audio digital (DAC) USB, <a href=\"http:\/\/hifimediy.com\/index.php?route=product\/product&#038;product_id=83\" title=\"HifimeDIY : DAC USB Sabre\">un produit modeste et pas cher<\/a> mais qui suffit amplement \u00e0 satisfaire mes besoins, fonctionne mieux dans la configuration MPD sous Archlinux que dans la configuration MPD sous Raspbian, et je trouvais frustrant de ne pas r\u00e9ussir \u00e0 installer et MPD et XBMC sur la m\u00eame machine et sous le m\u00eame syst\u00e8me d&rsquo;exploitation.<\/p>\n<p>Gr\u00e2ce aux indications trouv\u00e9es <a href=\"http:\/\/www.project-insanity.org\/blog\/2013\/07\/07\/xbmc-on-the-raspberry-pi-running-archlinux\/\" title=\"Project-insanity.org : XBMC sur le Raspberry Pi sous Archlinux (en anglais)\" target=\"_blank\">ici<\/a>, j&rsquo;y suis parvenu apr\u00e8s quelques difficult\u00e9s et moyennant quelques adaptations.<\/p>\n<p>\u00c0 toutes fins utiles, voici la mani\u00e8re dont j&rsquo;ai proc\u00e9d\u00e9 pour installer et faire tourner XBMC et MPD sous Archlinux ARM sur la m\u00eame carte Raspberry Pi.<!--more--><\/p>\n<h2>Installation d&rsquo;Archlinux sur la carte SD<\/h2>\n<p>J&rsquo;ai proc\u00e9d\u00e9 manuellement, comme expliqu\u00e9 dans un <a href=\"https:\/\/www.azurs.net\/carnet\/2013\/03\/arch-linux-sur-raspberry-pi-installation\/\" title=\"Arch linux sur Raspberry Pi : installation\">pr\u00e9c\u00e9dent billet<\/a> :<\/p>\n<ol>\n<li>Depuis un PC (dans mon cas, la machine utilis\u00e9e tourne sous Xubuntu).\n<ol>\n<li>T\u00e9l\u00e9chargement de l&rsquo;archive contenant l&rsquo;image la plus r\u00e9cente pour installer Archlinux ARM sur le Raspberry Pi depuis la page d\u00e9di\u00e9e du <a href=\"http:\/\/www.raspberrypi.org\/downloads\">site Web de la fondation Raspberry Pi<\/a>. \u00c0 la date de r\u00e9daction de ce billet, cette archive se nomme <em>archlinux-hf-2013-07-22.img.zip<\/em><\/li>\n<li>D\u00e9compression de l&rsquo;image dans un dossier (\u00e0 partir de l&rsquo;archive mentionn\u00e9e ci-dessus, on obtient un fichier <em>archlinux-hf-2013-07-22.img<\/em><\/li>\n<li>Installation de l&rsquo;image sur une carte SD de 8&nbsp;Go&nbsp;:\n<ul>\n<li>Depuis une machine tournant sous Linux, en utilisant la commande dd&nbsp;:\n<ol>\n<li>D\u00e9terminer l&#8217;emplacement de la carte SD (\/dev\/sdX, dans mon cas, il s&rsquo;agissait de \/dev\/sdf, emplacement rep\u00e9r\u00e9 avec la commande <code>lsblk -f<\/code>)<\/li>\n<li>Charger l&rsquo;image sur la carte SD : <code>dd if=\/chemin\/vers\/archlinux-hf-2013-07-22.img of=\/dev\/sdX<\/code><\/ol>\n<li>Depuis une machine tournant sous Windows, avec un utilitaire comme Win32Diskimager&nbsp;:\n<ol>\n<li><a href=\"https:\/\/launchpad.net\/win32-image-writer\">T\u00e9l\u00e9charger<\/a> et installer Win32DiskImager<\/li>\n<li>Choisir l&rsquo;image <em>archlinux-hf-2013-07-22.img<\/em>, s\u00e9lectionner l&rsquo;unit\u00e9 de disque correspondant \u00e0 la carte SD et cliquer sur <em>Write<\/em><\/li>\n<\/ol>\n<\/ul>\n<\/li>\n<\/ol>\n<li>Sur le Raspberry Pi en mode console ou \u00e0 distance depuis un PC en SSH\n<ol>\n<li>Insertion de la carte SD dans le Raspberry Pi<\/li>\n<li>Mise sous tension du Raspberry Pi<\/li>\n<li>Ouverture d&rsquo;une session en tant que super-administrateur (login&nbsp;&nbsp;root, mot de passe&nbsp;:&nbsp;root)<\/li>\n<li>Changement du mot de passe par d\u00e9faut du super-administrateur&nbsp;: <code>passwd<\/code> puis saisir deux fois le nouveau mot de passe<\/li>\n<li>Redimensionnement des partitions pour occuper tout l&rsquo;espace disponible sur la carte SD (en ligne de commande avec <code>fdisk<\/code>, directement sur le Raspberry Pi, comme expliqu\u00e9 <a href=\"https:\/\/www.azurs.net\/carnet\/2013\/03\/arch-linux-sur-raspberry-pi-installation\/#redimp2\">dans un pr\u00e9c\u00e9dent billet<\/a>, ou depuis une autre machine, <a href=\"https:\/\/www.azurs.net\/carnet\/2013\/07\/archlinux-sur-raspberry-pi-redimensionner-simplement-les-partitions-de-la-carte-sd\/\" title=\"Archlinux sur Raspberry Pi : redimensionner simplement les partitions de la carte SD\">en utilisant par exemple GParted et son interface graphique utilisateur<\/a>) puis red\u00e9marrage de la machine : <code>reboot<\/code> ou <code>shutdown -r now<\/code>.<\/li>\n<li>Initialisation du jeu de cl\u00e9s de pacman&nbsp;: <code>pacman-key --init<\/code><\/li>\n<li>Mise \u00e0 jour du syst\u00e8me : <code>pacman -Syu<\/code><\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<h3>Param\u00e9trage du clavier AZERTY et de l&rsquo;heure locale<\/h3>\n<p>Cette carte Raspberry Pi est reli\u00e9e \u00e0 un clavier USB sans fil avec <em>touchpad<\/em> <a href=\"http:\/\/www.logitech.com\/fr-ch\/support\/8276\">Logitech K400<\/a> AZERTY. Pour qu&rsquo;il puisse \u00eatre correctement reconnu et utilisable, j&rsquo;ai ex\u00e9cut\u00e9 la commande :<\/p>\n<p><code>localectl set-keymap fr<\/code><\/p>\n<p>Pour mettre la carte \u00e0 l&rsquo;heure locale, il suffit d&rsquo;indiquer (si l&rsquo;on se trouve en France) :<\/p>\n<p><code>timedatectl set-timezone Europe\/Paris<\/code><\/p>\n<p>Pour toute autre r\u00e9gion, remplacer Europe\/Paris par la paire appropri\u00e9e dans la liste consultable en passant la commande :<\/p>\n<p><code>timedatectl list-timezones<\/code><\/p>\n<p>L&rsquo;installation <em>de base<\/em> d&rsquo;Archlinux ARM sur le Raspberry Pi est d\u00e9sormais termin\u00e9e. Reste \u00e0 pr\u00e9parer l&rsquo;arriv\u00e9e d&rsquo;XBMC en optimisant certains param\u00e8tres.<\/p>\n<h2>Sur-cadencement (<em>overclocking<\/em>) du processeur<\/h2>\n<p>L&rsquo;interface graphique d&rsquo;XBMC sollicite de mani\u00e8re importante les ressources de la carte. Pour obtenir une interface suffisamment fluide et pour assurer une lecture fluide des vid\u00e9os, il est possible de sur-cadencer le processeur en introduisant des instructions sp\u00e9cifiques dans le fichier <code>\/boot\/config.txt<\/code>&nbsp;. Ces changements, qui reviennent \u00e0 solliciter le processeur de mani\u00e8re plus importante que ne le pr\u00e9voit le fabricant, peuvent provoquer une instabilit\u00e9 du syst\u00e8me, voire d\u00e9grader ou user pr\u00e9matur\u00e9ment la carte en raison notamment de l&rsquo;augmentation de tempr\u00e9rature du processeur qu&rsquo;ils peuvent entra\u00eener. Ces modifications peuvent d&rsquo;ailleurs, en fonction des param\u00e8tres modifi\u00e9s, <a href=\"http:\/\/www.raspberrypi.org\/archives\/2008\">annuler la garantie<\/a> (notamment le sur-voltage). Dans tous les cas, il convient de s&rsquo;assurer de la qualit\u00e9 de l&rsquo;alimentation \u00e9lectrique de la carte qui doit d\u00e9livrer un courant suffisant pour satisfaire aux besoins accrus en \u00e9nergie du processeur sur-cadenc\u00e9.<\/p>\n<p>Pour l&rsquo;instant, je n&rsquo;ai pas rencontr\u00e9 d&rsquo;instabilit\u00e9 manifeste du syst\u00e8me, mais les modifications d\u00e9crites ici sont aux risques et p\u00e9rils de ceux qui les essaient.<\/p>\n<p>Dans le fichier \/boot\/config.txt, j&rsquo;ai ajout\u00e9 (<code>nano \/boot\/config.txt<\/code>) les instructions suivantes :<br \/>\n<code><br \/>\narm_freq=1000<br \/>\ncore_freq=500<br \/>\nsdram_freq=500<br \/>\nover_voltage=6<br \/>\nforce_turbo=0<br \/>\n<\/code><\/p>\n<h2>Utiliser une version modifi\u00e9e de certaines fonctions concernant la gestion de la m\u00e9moire<\/h2>\n<p>Il existe une librairie qui impl\u00e9mente certaines fonctions standard du syst\u00e8me en assembleur \u00e9crit \u00e0 la main. Ceci am\u00e9liore notablement les performances g\u00e9n\u00e9rales de la machine et en particulier les performances en ce qui concerne la lecture des vid\u00e9os.<\/p>\n<p>Pour installer cette librairie, il faut ex\u00e9cuter la commande :<\/p>\n<p><code>pacman -S arm-mem-git<\/code><\/p>\n<p>Puis red\u00e9marrer (<code>reboot<\/code>).<\/p>\n<h2>Utilisation d&rsquo;une version r\u00e9cente du noyau Linux<\/h2>\n<p>Pour plusieurs raisons (et notamment pour pouvoir, par la suite, installer un certain mod\u00e8le de tuner TNT USB), j&rsquo;ai choisi d&rsquo;utiliser la derni\u00e8re version du noyau linux disponible sur le Raspberry Pi, m\u00eame si elle peut entra\u00eener des instabilit\u00e9s du syst\u00e8me.<\/p>\n<p>Pour le faire, il suffit d&rsquo;ex\u00e9cuter la commande :<\/p>\n<p><code>pacman -S linux-raspberrypi-latest linux-headers-raspberrypi-latest<\/code><\/p>\n<p>Note : lors de l&rsquo;installation, <em>pacman<\/em> indique que <em>linux-raspberrypi-latest<\/em> est en conflit avec <em>linux-raspberrypi<\/em> et propose de remplacer <em>linux-raspberrypi<\/em> par <em>linux-raspberrypi-latest<\/em>.<\/p>\n<h2>Installer la toute derni\u00e8re version d&rsquo;XBMC pour le Raspberry Pi<\/h2>\n<p>Cette version comporte des optimisations qui am\u00e9liorent sensiblement les performances.<\/p>\n<p>Pour l&rsquo;installer :<\/p>\n<p><code>pacman -S xbmc-rbp-git<\/code><\/p>\n<h2>D\u00e9marrer automatiquement XBMC au d\u00e9marrage du syst\u00e8me<\/h2>\n<p>Pour qu&rsquo;XBMC d\u00e9marre automatiquement au d\u00e9marrage de la carte, il suffit d&rsquo;activer le service :<\/p>\n<p><code>systemctl enable xbmc<\/code><\/p>\n<h3>Param\u00e9trage du clavier AZERTY dans XBMC<\/h3>\n<p>Pour que mon clavier USB sans-fil AZERTY soit correctement reconnu et utilisable dans XBMC, j&rsquo;ai ex\u00e9cut\u00e9 la commande suivante :<\/p>\n<p><code>localectl set-x11-keymap fr<\/code><\/p>\n<h2>Facultatif : cl\u00e9s de licence pour les Codecs VC1 et MPEG-2<\/h2>\n<p>Comme j&rsquo;ai fait l&rsquo;acquisition de licences pour ces deux Codecs (les licences sont attach\u00e9es \u00e0 une carte par son num\u00e9ro de s\u00e9rie), j&rsquo;ai introduit les cl\u00e9s de licence correspondantes, re\u00e7ues de la <a href=\"http:\/\/www.raspberrypi.com\/\">boutique Raspberry Pi<\/a>.<\/p>\n<p>Il suffit d&rsquo;ajouter \u00e0 \/boot\/config.txt deux lignes (<code>nano \/boot\/config.txt<\/code>)&nbsp;:<\/p>\n<p><code>decode_MPG2=CleMpg2<br \/>\ndecode_WVC1=cLeVc1<\/code><\/p>\n<h2>Installation et configuration de MPD<\/h2>\n<p>Je ne reviens pas ici sur l&rsquo;installation de MPD sous Archlinux, dont j&rsquo;ai d\u00e9j\u00e0 publi\u00e9 un relev\u00e9 d\u00e9taill\u00e9. Dans la configuration \u00e0 laquelle on arrive apr\u00e8s l&rsquo;ensemble des modifications rapport\u00e9es plus haut, MPD fonctionne parfaitement et je n&rsquo;ai eu aucune difficult\u00e9 pour l&rsquo;installer.<\/p>\n<p>Pour permettre son d\u00e9marrage automatique au d\u00e9marrage de la carte, il suffit de passer la commande :<\/p>\n<p><code>systemctl enable mpd<\/code><\/p>\n<p>[apr\u00e8s avoir v\u00e9rifi\u00e9 que le paquet <a href=\"https:\/\/www.archlinux.org\/packages\/extra\/x86_64\/xorg-xinit\/\">xorg-xinit<\/a> (qui est une d\u00e9pendance facultative de xbmc) a bien \u00e9t\u00e9 install\u00e9]<\/p>\n<h2>Conclusion<\/h2>\n<p>Apr\u00e8s ces op\u00e9rations, je dispose d&rsquo;une installation d&rsquo;XBMC dont l&rsquo;interface graphique utilisateur est plus fluide que sous openELEC et qui ne mmontre pas, \u00e0 ce jour, de probl\u00e8mes d&rsquo;instabilit\u00e9 manifestes. Je peux d&rsquo;autre part utiliser pleinement les capacit\u00e9s de mon DAC USB pour \u00e9couter de la musique, MPD fonctionnant sans aucun souci.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Explique comment installer XBMC et MPD sur la m\u00eame carte Raspberry Pi et sous Archlinux.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[395],"tags":[249,206,230,232,246,281,313],"class_list":["post-1767","post","type-post","status-publish","format-standard","hentry","category-bidouillages","tag-archlinux","tag-linux","tag-mpd","tag-musique","tag-raspberry-pi-2","tag-video","tag-xbmc"],"share_on_mastodon":{"url":"","error":""},"_links":{"self":[{"href":"https:\/\/www.azurs.net\/carnet\/wp-json\/wp\/v2\/posts\/1767","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.azurs.net\/carnet\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.azurs.net\/carnet\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.azurs.net\/carnet\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.azurs.net\/carnet\/wp-json\/wp\/v2\/comments?post=1767"}],"version-history":[{"count":39,"href":"https:\/\/www.azurs.net\/carnet\/wp-json\/wp\/v2\/posts\/1767\/revisions"}],"predecessor-version":[{"id":1811,"href":"https:\/\/www.azurs.net\/carnet\/wp-json\/wp\/v2\/posts\/1767\/revisions\/1811"}],"wp:attachment":[{"href":"https:\/\/www.azurs.net\/carnet\/wp-json\/wp\/v2\/media?parent=1767"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.azurs.net\/carnet\/wp-json\/wp\/v2\/categories?post=1767"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.azurs.net\/carnet\/wp-json\/wp\/v2\/tags?post=1767"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}