Category Archives: Linux

Mini système de son réseau: Raspberry Pi + MPD

Raspberry_Pi_LogoVous voulez un petit système de son réseau pas cher?

Hé bien, voici comment…

Première étape: Achetez un petit Raspberry Pi (info : http://www.raspberrypi.org/).

J’ai trouvé le mien sur Canakit avec une carte SD pour 60$ livré. Mon but était de récupérer mon ensemble de haut-parleurs Logitech. Si vous n’en avez pas, n’importe quel ensemble de haut-parleurs pour ordinateur fera l’affaire.

Deuxième étape (une fois le Pi reçu): Installez l’OS

Vous pouvez utiliser la distribution que vous voulez. La carte SD de Canakit vient avec le logiciel Noobs qui vous permet facilement d’installer l’un des OS disponible pour le Pi (La carte en a 5 de disponible). J’ai personnellement pris raspbian.

Troisième étape: Accédez à vos partages réseaux

J’utilise NFS. Donc en vrac:

$> ssh pi@pi.dns
$> sudo apt-get update
$> sudo apt-get upgrade (et peut-être un petit reboot)
$> sudo apt-get install rpcbind nfs-common mpd alsa-utils autofs ncmpc
$> sudo service start rpcbind
$> sudo nano /etc/auto.master
ajoutez cette ligne à la fin :
/mnt/myshare /etc/autofs.nfs.myshare –timeout=600 –ghost
sauvegardez / quittez
$> sudo nano /etc/autofs.nfs.myshare
ajoutez cette ligne:
musique -fstype=nfs,soft,intr,rsize=32768,wsize=32768 votreserver:/VotrePartage
remplacez votreserver et VotrePartage par les bonnes valeurs…
sauvegardez / quittez
$> sudo mkdir /mnt/myshare
$> sudo service restart autofs

Vous pouvez vérifier si votre musique (ou autres partages) est monté avec un simple ls.

Quatrième étape: Configurez MPD (Music Player Daemon)

Encore une fois, en ligne de commande:

$> sudo nano /etc/mpd.conf
Remplacez la valeur de music_directory par /mnt/myshare/musique
Assurez-vous que la valeur de mixer_type soit software.
sauvegardez / quittez
$> sudo service mpd restart

Si tout c’est bien passé, vous pouvez tester en ssh avec ncmpc ou installer un client MPD sur un autre ordinateur. Ma recommandation personnelle est QMPDClient (Linux / GUI), ncmpc (Linux / console) et MPDroid pour Android.

Étape facultative: ménage et root powaa!

Attention avec les commandes plus bas. Surtout si vous êtes nouveau sous Linux ou si vous compter utiliser une interface de bureau sur le Pi au lieu de ssh.

$> sudo passwd root
Choisissez vous un mot de passe root
Une fois fait, testez avec la commande su
$> su
#> service ntp stop
#> service triggerhappy stop
#> service dbus stop
#> killall console-kit-daemon
#> killall polkitd
#> killall dbus-daemon
#> killall dbus-launch

Profit!!!

Debian + maven: WTF?

Ok, il y a rien de mieux qu’un example :

##:> aptitude install maven
The following NEW packages will be installed:

ant{a} ant-optional{a} aspectj{a} bsh{a} bsh-gcj{a} ca-certificates-java{a} default-jre{a} default-jre-headless{a} fop{a} gcj-4.7-base{a} gcj-4.7-jre-lib{a} icedtea-6-jre-cacao{a} icedtea-6-jre-jamvm{a} icedtea-netx{a} icedtea-netx-common{a} java-common{a} java-wrappers{a} junit{a} junit4{a} libaether-java{a} libantlr-java{a} libaopalliance-java{a} libapache-pom-java{a} libasm3-java{a} libaspectj-java{a} libasync-http-client-java{a} libatinject-jsr330-api-java{a} libatk-wrapper-java{a} libatk-wrapper-java-jni{a} libavalon-framework-java{a} libbackport-util-concurrent-java{a} libbatik-java{a} libbsf-java{a} libcdi-api-java{a} libcglib-java{a} libclassworlds-java{a} libcommons-beanutils-java{a} libcommons-cli-java{a} libcommons-codec-java{a} libcommons-collections-java{a} libcommons-collections3-java{a} libcommons-configuration-java{a} libcommons-digester-java{a} libcommons-httpclient-java{a} libcommons-io-java{a} libcommons-jexl-java{a} libcommons-jxpath-java{a} libcommons-lang-java{a} libcommons-logging-java{a} libcommons-net2-java{a} libcommons-parent-java{a} libcommons-validator-java{a} libcommons-vfs-java{a} libdom4j-java{a} libdoxia-java{a} libdoxia-sitetools-java{a} libeasymock-java{a} libexcalibur-logkit-java{a} libfop-java{a} libganymed-ssh2-java{a} libgcj-bc{a} libgcj-common{a} libgcj13{a} libgeronimo-interceptor-3.0-spec-java{a} libgeronimo-jpa-2.0-spec-java{a} libgeronimo-osgi-support-java{a} libgoogle-collections-java{a} libguava-java{a} libhamcrest-java{a} libhttpclient-java{a} libhttpcore-java{a} libitext1-java{a} libjackrabbit-java{a} libjaxen-java{a} libjaxme-java{a} libjaxp1.3-java{a} libjdom1-java{a} libjetty-java{a} libjline-java{a} libjsch-java{a} libjsoup-java{a} libjsr305-java{a} libjtidy-java{a} liblog4j1.2-java{a} libmaven-parent-java{a} libmaven-plugin-tools-java{a} libmaven-reporting-impl-java{a} libmaven-scm-java{a} libmaven2-core-java{a} libmodello-java{a} libnekohtml-java{a} libnetbeans-cvsclient-java{a} libnetty-java{a} libnss3-1d{a} liboro-java{a} libosgi-compendium-java{a} libosgi-core-java{a} libosgi-foundation-ee-java{a} libpcsclite1{a} libplexus-ant-factory-java{a} libplexus-archiver-java{a} libplexus-bsh-factory-java{a} libplexus-build-api-java{a} libplexus-cipher-java{a} libplexus-classworlds-java{a} libplexus-classworlds2-java{a} libplexus-cli-java{a} libplexus-container-default-java{a} libplexus-containers-java{a} libplexus-containers1.5-java{a} libplexus-i18n-java{a} libplexus-interactivity-api-java{a} libplexus-interpolation-java{a} libplexus-io-java{a} libplexus-sec-dispatcher-java{a} libplexus-utils-java{a} libplexus-utils2-java{a} libplexus-velocity-java{a} libqdox-java{a} libregexp-java{a} librhino-java{a} libsaxon-java{a} libservlet2.5-java{a} libsisu-guice-java{a} libsisu-ioc-java{a} libslf4j-java{a} libwagon-java{a} libwagon2-java{a} libwerken.xpath-java{a} libxalan2-java{a} libxbean-java{a} libxerces2-java{a} libxml-commons-external-java{a} libxml-commons-resolver1.1-java{a} libxmlgraphics-commons-java{a} libxom-java{a} libxpp2-java{a} libxpp3-java{a} maven openjdk-6-jre{a} openjdk-6-jre-headless{a} openjdk-6-jre-lib{a} rhino{a} tzdata-java{a} velocity{a}

0 packages upgraded, 145 newly installed, 0 to remove and 29 not upgraded.
Need to get 129 MB of archives. After unpacking 255 MB will be used.
Do you want to continue? [Y/n/?] n
Abort.

145 packages?! Rien que ça.

Non merci, je vais l’installer à la main…