Publié le

Streaming RaspberryPi avec Node.js et ffmpeg via websocket

Mise à jour: 08.2016
– ajout notes RaspberryPi 3
– amélioration de la mise en forme de l’article
– publication d’une App iOS client

Version originale: 04.2015


Sommaire

  • Le but
  • La solution retenue
  • Schéma de fonctionnement
  • Les plus
  • Vidéo du résultat final
  • Client iOS eRaspiStream
  • Configuration du RaspberryPi
    1. Mise à jour
    2. Installer Node.js
    3. Valider Node.js
    4. Compiler h264
    5. Compiler ffmpeg
    6. Le point
    7. JSMPEG
    8. WebSocket
    9. FFMPEG
    10. UV4L
    11. Rassemblement du puzzle
    12. Comment regarder?
  • A venir prochainement
  • Autres liens non cités

J’ai fais beaucoup de recherche sur le moyen de streamer la caméra du RaspberryPi avec une latence vraiment très faible. Différentes solutions sont attirantes, comme MJPEG-Streamer, ou GStreamer, mais au final pour cette utilisation je met en avant cette solution car j’ai obtenu les meilleurs résultats.

Le but 
Une vraie caméra IP en « temps réel » ou presque, visible en html, en utilisant un RaspberryPi.
(Ce qui est le cas au final, avec moins de 0.2s de latence!)

La solution retenue:

  • Raspberry Pi model B v1 ou v2 ou v3
  • PiCam (peut aussi fonctionner avec d’autres types de webcam)
  • ffmpeg
  • UV4L
  • Node.js
  • Websocket
  • Nginx

Voici comment est-ce que tout ceci fonctionne, un petit schéma vaut mieux que des mots:

eRaspiStream linux part

Les plus:

Une vidéo du résultat final:

 

Client iOS eRaspiStream:
J’ai développé une petite app pour iOS, « eRaspiStream », qui permet de visualiser et ajouter plusieurs caméra.

Update 29.06.2015
L’application n’est toujours pas validée par Apple, mais une version 1.2 est en préparation, le tout en swift2.

Update 15.08.2016
L’application iOS est validée! Vous pouvez la télécharger gratuitement ici:
https://appsto.re/ch/99sX6.i


Configuration du RaspberryPi
C’est parti pour la configuration, heu, armes-toi de patience, certaines parties sont…longuettes, vive la compilation…
(Ceci n’est plus le cas avec la 3ème révision de la framboise. En 1h tout est configuré!)

  1. Mise à jour du RaspberryPi, revoir les notes
  2. Installer Node.js dernière version pour arm:
    sudo apt-get install nodejs npm node-semver

    Vérification, on affiche les versions des deux outils qui nous intéressent:

    node -v
    npm -v

    devrait vous afficher respectivement quelque chose comme v0.12.1 et 2.5.1 et nous indique que node est bien installé

  3. Optionnel: valider Node.js
    Un tout petit script qui se comporte comme un serveur web.
    Je ne décortiquerai pas ici le scripts, d’autres l’ont fait avant moi.Copier ce qui suit dans un fichier monpremiernode.js, que l’on édite avec vi, nano, etc

    # monpremiernode.js
    # 20150504 - eddy martignier
    # serveur web qui écoute le port 8080
    var http = require('http');
    var server = http.createServer(function(req, res) {
      res.writeHead(200);
      res.end('Mon premier script node.js fonctionne');
    });
    server.listen(8080);

    Depuis un navigateur, entrez l’adresse de votre framboise suivi de :8080, exemple:

    http://192.168.1.34:8080

    doit afficher:

    mon premier script node.js fonctionne.
  4. Compiler h264
    On démarre les différentes compilations.x264

    cd /usr/src
    git clone git://git.videolan.org/x264
    cd x264
    ./configure --host=arm-unknown-linux-gnueabi --enable-static --disable-opencl
    make
    sudo make install
  5. Compiler ffmpeg
    qui met plus ou moins long à compiler suivant votre configuration:
    – RaspberryPi 1, 4h10
    Oui oui, je l’ai fait! C’est long, 4h10 de compilation, à regarder des lignes défiler :p
    – RaspberryPi 2, 1h02
    C’est plus acceptable.
    – RaspberryPi 3, 17 min!
    On à un vainqueur!

    cd /usr/src
    git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg
    cd ffmpeg
    sudo ./configure --arch=armel --target-os=linux --enable-gpl --enable-libx264 --enable-nonfree
    make
    (NOTE: Si vous utilisez une version 2 ou 3 du RaspberryPi, vous pouvez utiliser "make -j4" pour tirer avantages du multi-processeur)
    sudo make install
  6. Le point:
    OK, on fait le point vite fait. On à node.js, et ffmpeg fonctionnel.
    Il va falloir s’occuper maintenant de la partie serveur, je vais pas non plus m’allonger sur le sujet, d’autres s’en sont occupés largement.
    Voici la solution que j’ai adopté, en tombant sur cet article que je t’invites grandement à lire!

    http://phoboslab.org/log/2013/09/html5-live-video-streaming-via-websockets

    C’est l’article qui m’a permis de tout rassembler.

    Voici donc la suite:

  7. JSMPEGest une suite de scripts javascript juste top pour ce qu’on veut faire.
    Tu peux la télécharger ici:

    https://github.com/phoboslab/jsmpeg

    – copie le fichier « stream-server.js » sur ton raspberry, par exemple dans /Scripts/streamtest/ (par scp ou what else, samba, ssh, etc… 😉 )
    – copie « jsmpg.js » et « stream-example.html » dans un dossier « raspistream » sur ton bureau ou ailleurs, tant que tu le retrouves.

  8. WebSocket pour node.js
    Sur le raspberry, aller dans /Scripts/streamtest/ (là ou tu à copié « stream-server.js »)

    npm install ws

    Lancer le serveur de stream:

    node stream-server.js un-mot-de-passe
  9. FFMPEG pour capturer et encoder notre RaspiCam
    Toujours sur notre raspberry, on va lancer la commande ffmpeg qui s’occupera de la capture et encodage de notre PiCam.

    ffmpeg -s 320x240 -f video4linux2 -i /dev/video0 -f mpeg1video -b 800k -r 30 http://localhost:8082/un-mot-de-passe/320/240/

    Et là… c’est le drame… on ne trouve pas de device dans /dev/video0… grrrrr, encore quelques recherches et! Yes, solution!

  10. UV4L 
    http://www.raspberrypi.org/forums/viewtopic.php?f=43&t=74949
    cet article m’apporta la solution sous forme de lien suivants:
    http://www.linux-projects.org/modules/sections/index.php?op=viewarticle&artid=14On installe!

    curl http://www.linux-projects.org/listing/uv4l_repo/lrkey.asc | sudo apt-key add -

    Ajouter cette ligne à /etc/apt/sources.list

    deb http://www.linux-projects.org/listing/uv4l_repo/raspbian/ wheezy main
    NOTE: Si vous utilisez raspbian jessie, remplacez wheezy par jessie main!

    On peut relancer apt-get update pour lister la nouvelle source:

    sudo apt-get update
    sudo apt-get install uv4l uv4l-raspicam
    sudo apt-get install uv4l-raspicam-extras

    Normalement, » ls /dev/video0 » devrait être présent.

    On peut prendre une photo via la PiCam pour valider:

    dd if=/dev/video0 of=snapshot.jpeg bs=11M count=1
  • On à toute les pièces, on rassemble le puzzle:
    Le serveur node.js tourne et attends les connections de la caméra (via ffmpeg) mais aussi du client.
    C’est la petite limitation, il faut que le client (le navigateur donc) supporte le protocole WebSocket.
    Mais bon, petite limitation, car Safari, Firefox et Chrome sont compatible.
    Il est temps de lancer la commande ffmpeg qui va capturer notre PiCam et envoyer le flux à notre script node.js:

    ffmpeg -s 320x240 -f video4linux2 -i /dev/video0 -f mpeg1video -b 800k -r 30 http://localhost:8082/un-mot-de-passe/320/240/

    Le serveur node.js doit indiquer « Stream Connected: »

  • Et on regarde comment alors?
    Au point 8, tu as dû copier des fichiers dans un dossier « raspistream » sur ton bureau ou documents…
    Edite le fichier html, et modifie l’adresse du serveur ws:// avec l’adresse ip de ton raspberry.
    Ouvre ensuite le fichier HTML dans un des naviguateurs compatible.
    Le serveur node.js va indiquer « New WebSocket Connection« 

On peut aussi dédier la tâche serveur sur une autre machine, il suffit ensuite de jouer avec la config des différentes ip 🙂

Voilà, pour la suite, je te laisse faire, les possibilités sont grandes, have fun! 😉

Have fun!

A venir prochainement:

  • scripts automatisé pour lancer node.js, ffmpeg, un serveur web nginx qui distribue le client html « jsmpeg »
    (il est prêt, il me reste à le commenter avant de vous le transmettre)

D’autres ressources non-citées:

Publié le

Raspbian, apt-get upgrade plante sur dpkg

Après je pense 2heures de recherche, enfin j’ai trouvé la solution pour un problème d’update de mon Raspberry Pi sous Raspbian.

Le problème:
A chaque update avec apt-get upgrade, la commande se plante après le téléchargement des mise à jour.
Aucun message, mais au bout d’un temps certain et d’un ctrl-c, voici le message que j’ai eu:

debconf: apt-extracttemplates failed: No such file or directory

J’ai essayé en mode console en pensant que la session ssh plantait ou qqch comme ça, même problème.

La solution:
Après beaucoup de recherche, je tombe sur la solution, enfin, merci!

sudo dpkg –clear-avail

Ensuite, apt-get upgrade passe tout droit 😉

Une aide utile:
Un petit script qui permet d’exécuter apt-get upgrade mais packet par packet et ainsi « débuguer » un peu mieux la chose dans ce cas.

DATA=$(apt-get upgrade -s -y -q | grep "Inst " | cut -d ' ' -f 2)

PACKAGES=(${DATA// / })
Z=0

for package in "${PACKAGES[@]}";
do
    echo ""
    echo ""
    echo "apt-get install -y -q $package"
    bash -c "nice apt-get install -y -q $package"
    bash -c "nice apt-get clean -y -q"

    Z=$((Z+1))

    # update only first 50 packages, just to be sure that we won't kill pi by running this script
    if [[ $Z -eq 50 ]];
    then
        break
    fi
done

 

Have fun.

Références:
https://debian-facile.org/viewtopic.php?pid=156148#p156148
http://raspberrypi.stackexchange.com/questions/27819/command-apt-get-upgrade-crashes-raspbian

Publié le

Création d’une app iOS pour mon Raspberry pi

eRaspiStream

Suite à mon article sur le streaming du Raspberry Pi et de sa Picam (lire l’article),
j’ai décidé de créer une petite application iOS pour visualiser mes caméras directement depuis mon iPhone.

Elle permet d’enregistrer sous forme de liste plusieurs sources, rien de compliqué, mais fortement utile.

Cette application est gratuite et à votre disposition sur l’AppStore:

eRaspiStream
https://appsto.re/ch/99sX6.i

Have fun!

Publié le

MacOSX 10.10.4 gère également le trim!

Apple à mis à disposition la mise à jour de Yosemite 10.10.4

Ce dernier gère enfin le trim pour les SSD non-Apple

Pour activer le support du trim pour les SSD non-Apple sur 10.10.4, il suffit de:

  1. Ouvrir un terminal
  2. Taper la commande suivante:
    sudo trimforce enable
  3. Confirmer avec la touche « y » les avertissements, après en avoir pris connaissance

trim_elcap

Une fois que le Mac redémarre, une rapide vérification dans le « Rapport système » nous confirme que le trim est activé!
Youpie! Merci Apple! Enfin!!! 😉

 

Publié le

MacOSX 10.11 et Adobe CreativeSuite 6, java, solution

Depuis mes tests en MacOSX 10.11 « El Capitan« , je suis confronté à quelques petits problèmes.

En voilà un nouveau.
Adobe Creative Suite CS6 – illustrator en tout cas – ne démarre plus et me demande Java.

En appliquant la méthode de Yosemite, ca ne fonctionne plus sous El Capitan.

Mais comme tout problème à sa solution….

Voici une petite solution très simple pour faire fonctionner tout ça:

  1. Télécharger Java SE 8 depuis cette url:
    http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
    et installer le paquet.
  2. Ouvrir un terminal
  3. Désactiver la pretection rootless (temporairement)
     sudo nvram boot-args="rootless=0"

    et redémarrer

  4. Ouvrir un terminal puis:
    sudo mkdir -p /System/Library/Java/Support/Deploy.bundle
  5. Activer la protection rootless:
    sudo nvram boot-args="rootless=1"

    et redémarrer une fois encore.

  6. Fin. Illustrator va se démarrer correctement!
  7. Have fun 🙂
Sources:
http://forums.macrumors.com/threads/adobe-cs5-and-el-capitan.1891325/
Publié le

MacOSX 10.11 « El Capitan » gère (enfin) le trim!

Apple à annoncé et mis à disposition des développeurs la nouvelle mouture de son futur OS, Mac OS X 10.11 « El Capitan »

Ce dernier gère enfin le trim pour les SSD non-Apple

J’ai pu faire l’essai sur mon MacMini équipé d’un « ancien » SSD Kingston V200+

Pour activer le support du trim pour les SSD non-Apple, il suffit de:

  1. Ouvrir un terminal
  2. Taper la commande suivante:
    sudo trimforce enable
  3. Confirmer avec la touche « y » les avertissements, après en avoir pris connaissance

trim_elcap

Une fois que le Mac redémarre, une rapide vérification dans le « Rapport système » nous confirme que le trim est activé!
Youpie! Merci Apple! Enfin!!! 😉

trim_elcapitan

Publié le

Raspbian, notes pour les nuls…

« Les nuls », c’est moi en l’occurence :p

Un petit pense-bête plus qu’un réel article, voici quelques commandes utiles pour la mise en route d’un Raspberry Pi sous Raspbian:

Publié le

Changer l’ip d’un serveur smtp, check-list…

Petite note à moi-même et pourquoi pas à toi, si elle peut t’être utile, tant mieux :p

Lors d’un changement récent de l’ip publique d’un serveur smtp, j’ai été confronté à quelques menus soucis de DNS résultants de NDN de certains serveurs destinataires.

Continuer la lecture de Changer l’ip d’un serveur smtp, check-list…

Publié le

Microsoft, à la limite du malhonnête…

Je reçois souvent des mails sans intérêts, ou avec un intérêt limité, car on pense souvent que ceux-ci soient du spam…

J’ai reçu ce joli mail de Microsoft ce jour, et, je vous promet, ce n’est pas une blague… mais c’est à la limite du malhonnête voir même à la limite du légal:

Le mail en question:

Cher Madame / Monsieur

Pourriez-vous nous indiquer l’état d’avancement de votre document intitulé « Synthèse des licences déployées »

Nous avons envoie  le formulaire requis il y a quelques semaines et jusqu’à présent on n’a pas reçu une réponse par vous.

Je vous envoie une fois de plus le formulaire et s’il vous plaît me donner le plus tôt possible modestes jusqu’à quand je peux attendre votre réponse.

Il est extrêmement important que vous soyez actif dans ce domaine et nous répondons aux questions requises.

N’hésitez pas à me contacter pour plus d’informations concernant le document.

Meilleures salutations

Simon Radi

SAM Engagement Manager

Microsoft Schweiz GmbH | Richtistrasse 3 | CH-8304 Wallisellen
( +41 43 456 60 74 | * a-siradi@microsoft.com

Je veux bien que Microsoft m’explique leur méthode plus que douteuse.
En tout cas, ceci va me faire réfléchir profondément dans le choix de mes éditeurs de logiciels!

Publié le

Mountain Lion est de sortie…

Et oui, Apple à publié son dernier système d’exploitation estampillé 10.8, nom de code « Mountain Lion ».

Cette version est disponible sur l’AppStore pour CHF 20.-

Voici un article ou je posterai quelques astuces ou bon trucs pour Mountain Lion.

La première: Hiss
Ou comment se passer de Growl!
En effet, cette petite application va se charger de transmettre les notifications Growl au centre de notification du nouveau félin! Génial!
http://collect3.com.au/hiss/

Publié le

Apple, une smart tv? Vraiment?

Je suis tombé sur cet article en voulant rester dans le coup en me renseignant sur la fièvre actuelle des « smart Tv ».

Ces téléviseurs (plus ordinateurs que téléviseurs, mais aujourd’hui il y a même un Linux dans ta machine à café, alors…) sont la nouveauté que les fabricants ont trouvé pour te faire saliver d’un-truc-que-t’as-pas-besoin-mais-que-tu-veux-quand-même et qui rassemble bon nombre de fonctions multimédia directement sur ton téléviseur. Par exemple, la vidéoconférence (Skype, FaceTime), avec la possibilité de faire un appel vidéo tout en regardant un match de tennis – pour rester dans l’actualité – et ainsi de « partager » ce moment sportif en live-video avec ton pote Tesson ou Kikette.

Vu que je suis adepte des produits Apple depuis que je-suis-tombé-dedans-quand-j’etais-tout-petit, j’ai un peu suivi la progression de l’AppleTV d’un œil, et il y a trois ou quatre ans je me suis même dis qu’Apple ferait sauter la banque en sortant une TV a la sauce Apple.
Mais est-ce si intelligent que ça?
Je me pose la question. Est-ce une bonne idée de se lancer dans un marché saturé, alors que le petit AppleTV se branche sur n’importe quel prise hdmi?

On peut aussi penser que tout ce blabla mediatiquo-rumeuristique ne fait que brouiller les pistes. Ce ne serait pas la première fois qu’Apple nous ferait le coup… Rappelez vous de l’annonce de l’iPhone 🙂

Cet épisode est passionnant dans le seul but de découvrir « marketinguement » quelle voie Apple prendra, et quelle(s) innovation(s) elle intégrera pour rendre ce produit incontournable…. ou pas…?

Et toi, cher visiteur, tu en penses quoi? iTV or not?

L’article en question et quelques autres qui suivront la saga:

http://fr.smart-tv.me/le-pdg-dapple-tim-cook-parle-de-sa-smart-tv-itv-et-bien-plus/

Publié le

Mac OS X Lion écriture sur du NTFS…

Je devais transférer quelques dizaines de giga sur le disque externe d’un ami, et ce dernier se trouvait formaté en NTFS. Vu que les fichiers sont plus grand que 2Go, je ne peux pas formater en FAT, ni en HFS+ car mon ami est (encore) sous Window$ 🙂

Bien obligé de trouver une solution pour écrire depuis mon Mac OS X Lion sur un disque formaté en NTFS, je lance quelques recherches google et après quelques tentatives, dont celle d’une solution gratuite qui consiterait simplement à récupérer l’Id du disque en question, pour ensuite modifier le fichier /etc/fstab et lui indiquer le système de fichier « ntfs », de redémarrer le Mac et, miracle, ben ça ne marchait pas…. Tu auras peut-être plus de chance que moi, pour moi, pas de chance 🙂

Là ou j’ai eu plus de réussite, c’est en installant deux outils pour ajouter le support en lecture et écriture sur un disque formaté en NTFS.
Voici donc les deux logiciels en question:

N.B. J’ai utilisé ces fichiers pour installer sur un Mac OS X Lion 10.7.4
Donc en cas de mise à jour il est préférable de demander à notre ami Google si une version plus récente ne serait pas disponible 🙂

  1. OSXFuse 2.3.9
  2. NTFS-3G 2010 10.2
    les dernières versions sont devenues payantes, mais cette version précise fonctionne encore bien sous Lion…
Et voilà, et en te rappelant qu’une sauvegarde de tes données avant quoi que ce soit, c’est vraiment très très très conseillé, voir obligatoire 🙂
Have fun happy visitor
Publié le

OSX: raccourcis clavier en un coup d’oeil

J’ai lu une news intéressante ce matin sur OSXDaily concernant les raccourcis clavier de notre OS préféré.

Il s’agit d’une petite application à télécharger qui va nous afficher tous les raccourcis clavier de l’application courante.

Il suffit d’être dans l’application désirée – par exemple le Finder – et de garder la touche cmd de ton clavier enfoncée jusqu’à ce que la fenêtre de raccourcis apparaisse.

Très pratique pour bien débuter sur Mac donc 😉

Télécharger CheatSheet gratuitement depuis « Media Atelier » (OS X 10.7 ou plus)

Voici une petite vidéo postée par OSXDaily sur le sujet:

Have fun happy visitor! 🙂

Publié le

PHP: une classe pour les formulaires…

Dans un soucis d’efficacité, de souplesse, de lecture et de propreté du code, je cherche depuis longtemps une classe pour gérer mes formualires pour mes développement PHP.

Je me suis même lancé un jour le défi de créer moi-même un telle classe, mais quand j’ai mis sur papier, je me suis vite rendu compte que la tâche était grande, surtout si je voulais intégrer les validations…

Bref, ce soir je relance mon ami « Google » sur la question, et j’ai droit à une belle surprise:
php-form-builder-class

Cette classe est très complète, certe elle à ces limites mais elle est très bien construite, donc facilement extensible 🙂

Je te propose donc de vite jeter un oeil au lien, tu trouveras toutes les infos que tu attends 🙂

Publié le

Recopie vidéo AirPlay sur Mountain Lion…

Une petite découverte, je ne sais pas si cela était déjà présent sur les précédentes preview de Mountain Lion, mais ce soir mon oeil fut attiré par une nouvelle icône dans ma barre de menu, et elle me dit quelque chose … 🙂

Je n’ai malheureusement pas d’AppleTV pour tester, dommage…

J’ai pourtant un logiciel qui fait offre la même fonction sur mon « MacMini-Mediacenter », il s’agit de AirServer.

Si j’arrive à faire quelque chose, je ne me priverai pas de te le rapporter aussitôt 😉

 

Publié le

Mountain Lion, gros effort sur la sécurité!

On en parle partout depuis l’évenement Flashback, le Mac aussi est vulnérable.

Avec la dernière preview de Mountain Lion, je voulais faire la mise à jour du Plugin FlashPlayer, et je m’aperçois que Apple à déjà travaillé sur ces aspect de sécurité.

Voici le joli message que l’on a quand une application non-signée essaye de s’installer sur notre nouveau futur félin:

On peut effectivement modifier ses règles de sécurité, mais cela démontre bien qu’un effort particulier est mis en place chez Apple pour rendre son système encore plus sécurisé.

 

Publié le

Faire une photo d’écran sur iPhone

Plusieurs personnes me demandent régulièrement comment faire pour prendre une photo d’écran, une capture d’écran ou encore un screenshot de leur iPhone/iPad.

Rien de plus simple, il suffit d’appuyer brièvement en même temps sur les boutons « Home » et « Power » de l’appareil.

Tu endendras alors un déclenchement d’appareil photo, et l’écran « flashera » une fois.

Capture écran / sceenshot / iPhone / iPad / iOS

Tu retrouveras ta magnifique capture écran dans ta phototèque 🙂

Have fun cher visiteur 😉

Publié le

Maintenance basique Lion – OS X

J’ai souvent quelques soucis sous Mac OS X (que ce soit leopard, snow ou lion) qui peuvent très facilement être réparés par de toute petite maintenance. C’est pourquoi je partage ceci avec toi, cher visiteur, cela pourrait bien te sortir de la panade dans bien des cas 🙂

Reconstruire les droits:

Dans les Applications, dossier Utilitaires, lancer « Utilitaire de disque »
Sélectionner le disque de démarrage sur la droite, puis « Reconstruire les droits »

Réparer les éventuelles erreurs disques:

Deux moyens pour ceci, le simple:
– Au démarrage du Mac, laisser appuyer la touche « Majuscule » de ton clavier.
Tu verras une petite barre grise lors du démarrage. Il démarre en limitant le système à son minimum, mais excécute un examen du disque. En redémarrant une dernière fois, tout sera à nouveau en ordre 🙂

Le mode manuel:
– Au démarrage du Mac, laisser enfoncer les touches « cmd+s »
Il va démarrer en mode « single user », sans interface graphique, en ligne de commande donc…
Tape ensuite:  (Attention, le clavier risque bien d’être en anglais!)
– /sbin/fsck -yf
Puis pour redémarrer le Mac:
– reboot

Vider les caches:

Nombre d’applications vous permettent de faire ceci.
Personnelement, j’utilise facilement « Lion Cache Cleaner« .

D’autres outils de maintenance pour Mac OS X:

L’incontournable ONYX
OnyX est un utilitaire multifonction pour Mac OS X qui permet de vérifier l’état du disque dur et de la structure du système de fichiers, d’exécuter les principales opérations de maintenance du système, de configurer un grand nombre de paramètres cachés du Finder, du Dock, de QuickTime, de Safari, de Mail, d’iTunes, de la fenêtre d’ouverture de session, de Spotlight et de certaines applications Apple, de vider les caches, de supprimer un certain nombre de fichiers et dossiers devenus encombrants et bien plus encore.

Le très bon CleanMyMac
Véritable boîte à outil pour ton mac, il à plusieurs fonctions clés intéressante, seul petit point négatif, il est payant, à partir d’une vingtaine de francs.
Il permet de nettoyer et de supprimer tout ce qui n’est pas nécessaire, comme les fichiers de localisation des applications, et bien plus encore. Une verison de démo est disponible sur le site de l’éditeur.

J’alimenterai cet article au fil du temps avec mes nouvelles découvertes 🙂

N’hésite pas à nous faire part de tes expériences dans les commentaires 🙂

Have fun happy visitor!

Publié le

SVN sous SLES11, Authentication Failed

Après avoir cherché un bout de temps, je vais partager ceci avec toi, cher visiteur.

Sous SuseLinuxEnterpriseServer 11, j’ai installé et configuré un serveur SVN
(ici les instructions que j’ai suivies)

Mais à chaque fois que je voulais envoyer des données à mon SVN en faisant un commit, le serveur me retournais:

Authentication Failed

J’ai vérifié les droits du dépôt, mais tout à l’air en ordre.

Pour régler le problème, il suffit d’éditer le fichier /etc/sysconfig/svnserve et enlevez le switch « -R« , enregister et relancer SVN.

En espérant que ceci te feras perdre moins de temps et de cheveux que pour moi 🙂

Source:
nabble.com