Atténuer la lumière bleue sur les écrans

Salut tout le monde!

Je voulais partager avec vous trois outils pour trois plateformes, dont je ne peux plus me passer. Leur finalité est la même: réchauffer (ajouter du jaune/rouge) la couleur de l’écran pour limiter l’émission de lumière bleue. La lumière bleue est connue notamment pour fatiguer les yeux avoir des effets sur la qualité du sommeil (http://www.lapresse.ca/vivre/sante/201412/02/01-4824576-la-lumiere-bleue-et-notre-sante.php)

J’utilise au quotidien trois programmes donc:

  • A la maison, sous Linux: redshift
  • Au bureau, sous Windows: f.lux
  • Sous Android, pour lire sur la tablette le soir: twilight
  • Sous iOS et OSX… Je plaisante.

Alors bien évidemment, pour faire de la retouche photo, c’est nul parce que les couleurs sont altérées; mais pour aller sur le net, lire ou développer, je peux vous garantir que c’est le top.

D’ailleurs, si vous voulez tester un de ces programmes, essayez-le un moment, puis désactivez-le pendant 30 secondes et vous sentirez bien la différence!

Mésaventures graphiques linuxiennes

facepalm

Comme dirait mon ami Gégé, avec son accent languedocien : « putaing, ça m’a cassé les couilleu! »

Je ne crois pas vous en avoir déjà parlé ici, mais depuis que j’étais sous Linux Mint 17.2 j’avais parfois des problèmes au démarrage de mon pc . Dans l’ordre normal, Grub s’affiche, puis le logo de Mint, puis un écran noir avec un curseur en haut à gauche, et enfin l’écran de login.

Hé bien il arrivait que ça se bloque à l’écran noir, avec le curseur en haut qui ne clignote pas. Et là, rien à fait, il fallait éteindre l’ordi à la sauvage, et réessayer. Et au bout de 2 ou 3 fois, ça finissait par passer.

A un moment, j’ai bien cru que j’avais réglé le problème, je ne sais plus comment d’ailleurs, mais tant pis car c’est revenu.

Alors nouvelle année oblige, je me suis dit « Bon ça me prend vraiment la tête, je vais tenter une autre distribution. »

Je pars sur Fedora, mon premier amour. On en est à la 23. Oh la vache, ça a bien changé! Gnome 3, accroche toi, on ne peut pas réduire une fenêtre… Bref, j’étais prêt à adopter Fedora 23 malgré tout, lorsque tout à coup… ça a recommencé. MERDE!

Alors pas exactement de la même manière, car là j’arrivais en mode graphique, et l’écran restait vide et gris, avec la souris au milieu. Nous voilà bien barrés… Et pareil, en redémarrant à la cochon 3 ou 4 fois (oui ça a augmenté…) j’arrivais à ouvris ma session.

J’ai alors pensé à Patrick de bloguelinux.ca, qui a passé des années sous Debian et en a toujours vanté les mérites (sauf récemment, puisqu’il a décidé de passer à ArchLinux. Bonne chance à toi d’ailleurs Patrick, car j’ai essayé d’installer Arch sur une VM avant histoire de voir, j’ai vomi et j’ai dû dire quelque chose comme « ah oui… »)

Déprimé à l’idée de Arch donc, va pour Debian!

J’installe Debian, qui me force à monter à l’étage et à me brancher en ethernet sur la box (oui, comme le driver de la puce wi-fi n’est pas libre, il faut l’installer après coup… Chez tous les autres le wi-fi est reconnu direct…)

Bref, sous Debian je la fais courte mais j’ai de nouveau été emmerdé. Cette fois j’avais accès à l’écran de login, mais une fois validé, j’avais juste un écran vert Debian, ma souris, et… C’est tout. Et la même, tous les 4-5 reboot c’était bon.

Alors là j’aime autant vous dire que c’est devenu très relou, et j’ai commencé à creuser… En mode console, j’ai fait le tour des logs de démarrage, et je les ai comparés à ceux du live cd qui lui, démarre bien.

Ma carte graphique, une AMD Radeon HD 8870M, était détectée comme intel i915 sur le live cd, et comme radeon sur mon installation.

J’ai édité le fichier /etc/X11/xorg.conf pour changer le driver de radeon à intel et plus de problème de démarrage… Non mais j’te jure…

Par contre je me retrouvais avec un e Debian, et ce qui me fatigue chez Debian, c’est son côté extrémiste du libre… Le driver du wifi, flash player (même si bon… ok…)

Il y a aussi le magasin d’applications qui est moins friendly que celui de Mint.

Alors j’ai réinstallé Mint! Soyons fous!

Après plusieurs démarrages « nomodeset » dans grub, j’ai réussi à paramétrer mon fichier xorg.conf pour qu’il utilise le driver intel, et ma foi… On a l’air pas mal…

C’est pas simple tous les jours, je vous assure…

Mon (re)passage à Linux

Grande nouvelle aujourd’hui : je vais parler de ma migration vers Linux comme OS principal!

C’est quelque chose que j’avais déjà fait il y a quelques années (au début de ce blog d’ailleurs) avec Ubuntu 12, si mes souvenirs sont bons.

Mais comme j’utilise quelques logiciels disponibles exclusivement sur windows (éventuellement mac os), je me suis retrouvé un peu gêné. J’avais alors fait un dual boot pour finalement rester sous windows, parce que la flemme de rebooter à tout bout de champ… J’ai donc vécu sous Windows 7 pendant quelques années et j’avoue que je m’en portais très bien, mes outils de prédilection étant Visual Studio (community), Eclipse, Solidworks et Ableton Live. Je joue aussi pas mal et j’aime les FPS et jeux d’aventure en 3D. J’aime quand c’est beau et que ça tourne 🙂

Ça reste Windows, diront certains, mais ma foi, ça tourne bien et à mes yeux Windows 7 est une bonne version.

Puis, il y a quelques mois de ça, j’ai commencé à écouter des podcasts, et tout particulièrement NipSource (de la communauté NipTech), Parole de Tux (une bonne équipe de Belges, qui ont hélas arrêté le podcast) et Bloguelinux.ca (une bonne équipe de Québécois, réguliers et très très compétents).

Je suis opensource-ophile (c’est comme ça qu’on dit?) depuis longtemps, et l’écoute de ces podcasts m’a redonné envie de passer sous Linux. De plus, les déboires récents liés à la sortie de Windows 10 m’ont bien conforté dans cette idée.

Alors hop! J’ai sauté et j’ai installé Linux Mint 17.2. Ça a commencé très fort, dès le boot sur ma clé usb :

kp
Même pas peur!

A priori, c’était causé par un micmac entre UEFI et BIOS. J’ai réécrit mon image de Mint avec l’outil Rufus, et tout est passé comme papa dans maman.

J’ai installé VirtualBox et créé une machine Windows 7. Mises à jour, snapshot.

Après quelques essais d’applications 3D en virtuel, VMWare s’avère bien plus performant.

Par contre pour Ableton Live, avec ma carte son externe, je ne sais pas mais je n’y arrive pas. J’ai eu beau la relier « nativement » à la machine virtuelle, mais je n’ai pas de son…

Alors pas de problème me dis-je, car j’avais prévu 300Go de libre sur mon disque dur pour y coller un Windows natif!

Je vais pour installer Windows, et oh malheur, j’ai pété. Pardon: GPT. Je ne connaissais pas, mais il s’agit du nouveau système de gestion de la table des partitions (successeur de MBR), et hélas Windows 7 ne veut pas s’installer là dessus… La solution trouvée sur le net : virer toutes les partitions et réinstaller tout le système… C’est un peu radical, mais que voulez-vous…

Comme mon système était tout frais, j’ai opté pour cette méthode. On efface tout et on recommence.

  1. Booter sur l’installateur de Windows
  2. Virer toutes les partitions
  3. Installer Windows.
  4. Booter sur l’installateur de Linux Mint
  5. Pleurer parce que le partition manager de Mint ne voit pas ma partition Windows, et me propose simplement d’écraser le tout!

En fait, mon disque dur contenait un bout de MBR et un bout de GPT, et visiblement c’est ce qui causait cette invisibilité de ma partition Windows.

Je suis tombé sur cet article: http://www.rodsbooks.com/gdisk/wipegpt.html

Grâce à gdisk j’ai pu supprimer tout ce qui était lié à GPT et retomber sur un MBR qui va bien.

Et en relançant l’install de Mint, ô miracle j’ai pu retrouver ma partition Windows et partitionner l’espace libre restant (650Go) pour Linux Mint.

Maintenant je me retrouve donc avec Grub au démarrage, qui me propose soit Mint, soit Windows 7. Ouf!

Grâce à ça je vais pouvoir installer tout mon bazar musical dans mon Windows natif, et vivre le reste de ma vie sous Linux Mint. CQFD.

Installer OwnCloud sur un Raspberry Pi

owncloud_logo raspberrypi_logo

Salut les gens!

Aujourd’hui nous allons travailler sur l’installation d’un serveur OwnCloud sur un Raspberry Pi.

Pour ceux d’entre vous qui auraient été dans le coma ces deux dernières années, voici une présentation rapide:

  • Raspberry Pi : c’est un tout tout petit ordinateur (format carte de crédit). Dans sa version B+, que j’utilise pour ce projet, le processeur est cadencé à 700MHz et la machine dispose de 512Mo de RAM. Il n’y a pas de périphérique de stockage intégré, il faut insérer une carte microSD dans le lecteur du Raspberry. Enfin, il dispose d’une sortie HDMI, de 4 ports USB, une sortie jack pour le son et un port ethernet. Il est alimenté via un port micro USB.

  • OwnCloud : c’est un projet open source qui permet (entre autres) d’avoir sa propre dropbox à la maison. C’est à dire que mes fichiers ne sont pas stockés sur un serveur quelque part aux USA ou je ne sais où, mais bien chez moi. Et il y a un programme côté client qui assure la synchronisation des fichiers du serveur avec un dossier local. OwnCloud fournit aussi une gestion de contacts, un calendrier, et d’autres applications potentiellement développées par vous ou moi (c’est modulaire).

    Prérequis

    Je vais passer l’installation de Raspbian sur le Raspberry Pi (http://www.raspberrypi.org/help/noobs-setup). Je suppose aussi que vous avez des rudiments d’utilisation de l’éditeur Vi.

    1. Installation d’Apache

    Dans le terminal, tapez

    Test de l’installation : dans un navigateur, essayez d’accéder à http://adresse_du_raspberry/index.html. Si vous avez une page qui dit « It works », bravo!

Sinon, revoyez votre copie 🙂

2. Installation de PHP et de ses modules nécessaires pour OwnCloud

Test de l’installation : créer un fichier /var/www/index.php, contenant ceci: [code]

<?php echo « Ca roule! »; ?>

[/code]

Chargez dans un navigateur http://adresse_du_raspberry/index.html. Vous voyez écrit « Ca roule! » et rien d’autre? Alors on continue!

3. Installation de MySQL

A l’installation, on vous demandera d’entrer un mot de passe pour l’utilisateur root de MySQL.

Pour tester l’installation, tapez dans le terminal :

Vous devriez voir une bannière qui dit à peu près ceci :

Puisqu’on y est, nous allons créer maintenant la base de données qui sera utilisée par OwnCloud (le point-virgule est important à la fin de la commande) :

Pour quitter la ligne de commande MySQL, tapez exit.

Un peu de configuration

1. Apache

Les fichiers de configuration d’Apache se trouvent dans /etc/apache2.

On va créer un virtual host pour l’accès via notre domaine afraid.org (DNS dynamique, qui nous permet d’accéder depuis l’extérieur à notre Raspberry).

Pour cela, ouvrez le fichier de configuration des Virtual Hosts:

Ajouter le bloc :

 2. Installation de OwnCloud

Positionnons nous dans /var/www, et téléchargeons l’archive (lien vers la dernière version disponible sur https://owncloud.org/install)

Maintenant nous trouvons un répertoire owncloud dans /var/www. Les deux dernières commandes redéfinissent le propriétaire des fichiers owncloud à www-data (c’est l’utilisateur d’Apache) pour que les répertoires soient accessibles en écriture.

Tans qu’on est dans les parages, nous allons créer le répertoire des données de OwnCloud à l’extérieur du dossier /var/www. Cela permet de protéger les fichiers d’un accès direct par http.

Connectons-nous de nouveau avec notre navigateur : http://adresse_du_raspberry

Vous devriez voir quelque chose comme ça :

owncloud_installer_1

Nous allons ici créer notre premier utilisateur OwnCloud, qui sera également administrateur.

En dessous, on nous demande d’entrer les infos de connexion à notre base MySQL (celle qu’on a créée un peu plus haut, vous vous souvenez?) et le chemin vers le dossier de données (/var/owncloud-data).

owncloud_installer_2

Cliquons sur le bouton Terminer l’installation. L’opération dure un certain temps (1 à 2 minutes, le raspberry n’est pas une machine de haute compétition), et au terme de l’installation nous nous retrouvons avec ceci (tiens,il manque un r à « sur »):

owncloud_installer_3

Encore un dernier poil de configuration

Allons faire un tour dans le menu en haut à droite > administration, et descendons vers la configuration de Cron. OwnCloud a besoin d’effectuer des tâches régulières, et on a le choix entre les effectuer soit lors de l’interaction avec les pages (Ajax ou Webcron, ce qui peut ralentir les temps d’accès), ou bien au niveau du système (Cron).

Nous allons opter pour la solution Cron niveau système :

Insérons la ligne suivante à la fin du fichier :

Elle va exécuter la commande toutes les 15 minutes.

Installation du programme client

On touche au but!

Il ne reste plus qu’à installer le programme client, disponible sur cette page : https://owncloud.org/install

owncloud_client_1
Saisissez l’URL de votre OwnCloud

 

owncloud_client_2
Identifiants de connexion

 

owncloud_client_3
Dossier de destination et filtrage de la synchronisation

 

owncloud_client_4
Et voilà!

 

Mon dossier local synchronisé
Mon dossier local synchronisé

Alors voilà, nous y sommes arrivés! Nous disposons maintenant d’un serveur de fichiers et d’un client de synchronisation.

Je vous conseille de creuser plus loin, car OwnCloud, ce n’est pas seulement un serveur de fichiers, mais il permet aussi de gérer vos contacts, votre calendrier, musique, photos, documents façon google docs, et de partager tout ça tout en restant maître de vos données!

Surveillance vidéo avec le Raspberry Pi

Petit interlude vidéo surveillance…

Comme je le disais dans un précédent article, j’ai maintenant un module caméra connecté à mon Raspberry Pi. Pour la connexion et le paramétrage de base, rendez-vous ici.

Côté logiciel, nous allons utiliser une version modifiée de Motion, spécialement adaptée pour la caméra du Raspberry Pi par dozencrows. Comme il a pas mal de dépendances, nous allons quand même installer la version standard, pour que les dépendances soient satisfaites:

Maintenant, installons la version spéciale de Motion dans notre répertoire utilisateur:

Note : le lien initial pointe sur https://www.dropbox.com/s/xdfcxm5hu71s97d/motion-mmal.tar.gz, mais n’est pas directement téléchargeable avec wget.

Dans le fichier de configuration, on peut modifier la taille de l’image capturée :

On peut aussi décider ou pas de streamer la vidéo en http sur le port de notre choix (par défaut, c’est le port 8081). Si on met ce port à zéro, le streaming sera désactivé.

Voilà pour les réglages de base, maintenant il ne reste plus qu’à démarrer le service:

Depuis un navigateur (attention, aux dernières nouvelles ça ne marche pas avec Chrome; j’utilise Firefox), ouvrez la page http://adresse_du_raspberry:8081

Vous devriez voir la vidéo en live!

Et chaque mouvement devant la caméra génèrera une image jpeg dans le dossier target_dir du fichier de configuration.

Merci à http://rbnrpi.wordpress.com/project-list/setting-up-wireless-motion-detect-cam/

Merci Ubuntu 11.10 d’avoir cassé mon système. Onirique, onirique…

Je n’ai jamais aucune inquiétude habituellement lorsque je mets à jour mon Linux (je parle d’upgrade du système, pas des mises à jour ponctuelles).

Ben là, je me suis bien fait avoir. Je passant à la 11.10, Oneiric Ocelot, je me suis retrouvé, après le reboot, face à un écran noir. Je ne me démonte pas, je reboot à nouveau en mode récupération, pour voir ce que raconte mon fichier de config X11 (j’ai un 2ème écran connecté sur le portable, je me suis dit que le problème pourrait être causé par cette particularité).

Donc, je vais pour restaurer l’ancien fichier par la console, quand… je m’aperçois que le mode récupération charge le système de fichier en lecture seule! Trop pratiiique!

Je commence à m’agacer gentiment, finalement je suis obligé de downloader l’ISO d’Ubuntu, de le graver, et de booter dessus. Bon…

Je démarre sur le live CD, je fais mes bidouilles et finalement ça ne marche toujours pas. Gnarf!!! Mais je ne vais quand même pas le réinstaller! Si…

Je n’ai pas confiance dans la réinstallation douce « par dessus l’existant », alors je sauvegarde mes dossiers importants sur un disque externe.

BIEN M’EN A PRIS! Parce que la récupération « douce » du système m’a peut être épargné les fichiers dans /home/nico, mais le /var/www a été tout nettoyé. Non mais franchement… Pareil, mes applications ont été supprimées, mes tâches cron, et je vais en découvrir d’autres…

Bon alors certains vont me dire « ben c’est le fonctionnement normal… »

C’est pas une raison!

 

Fabriquer son propre DynDns (ou presque)

Le but initial de ma manœuvre est de pouvoir connaitre l’IP externe de la maison à tout moment, afin d’accéder à un service quelconque sur une machine de mon réseau local.

Le concept est assez simple :

  1. j’ai un script PHP sur le serveur qui héberge ce blog.
  2. j’envoie régulièrement (disons toutes les 10 minutes) une requête http sur ce script depuis la maison.
  3. le script côté serveur récupère l’IP qui l’appelle, et la stocke quelque part (base de données, fichier…)
  4. depuis une page du serveur, je peux désormais accéder à l’IP de chez moi !

Côté serveur, basiquement voici la chose. Je l’ai appelé ping.php.

C’est tout… Pour le moment. Parce que si jamais un petit rigolo s’amuse à ouvrir cette page, c’est son IP qui va être mémorisée, et du coup ce n’est pas top. Avec une bonne vieille authentification HTTP, le problème sera résolu.

 

Côté client, on va avoir besoin d’un script shell qui va appeler ping.php à intervalles réguliers. Quelque chose comme :

Notez qu’on pourrait tout aussi bien créer une tache cron pour lancer le wget.

A partir de là, nous avons tout ce qu’il faut pour effectuer une redirection vers la maison, depuis une page de notre serveur.

Un peu de PHP :

Et sur la même page, un peu de HTML pour charger la page dans un iframe:

Et en plus, ça fonctionne ! on peut même envisager une redirection http avec un en-tête Location.

Bon, ce n’est pas vraiment du DNS dynamique, car le système se limite à un accès par navigateur. Mais en tout cas, cela me permet de connaître à tout moment l’IP de la maison, et à partir de là, je peux établir une connexion arbitraire (ssh, ftp, ou ce que je veux).

Mettre en place une surveillance vidéo à la maison avec Ubuntu et Motion

Nous avons adopté un chat il y a 3 semaines. Les 2 premières semaines, nous étions en vacances, ce qui lui a permis de s’habituer à nous et à participer aux travaux.

Niveau bouffe, il restait quelques croquettes dans sa gamelle jusqu’à 22h, heure où nous refaisions le plein.

Mais comme toutes les bonnes choses ont une fin, il a bien fallu reprendre le boulot, et depuis, quand on rentre à la maison, vers 19:30, la gamelle est déjà vide. Morfale,va.

Alors on s’est dit que ce serait bien de savoir à quelle heure il la termine, pour savoir depuis combien de temps il a faim.

D’où ce billet.

Belle introduction, n’est-ce pas ?

En cherchant un peu, j’ai trouvé sous Ubuntu le package Motion, qui permet de faire de la détection de mouvement à partir d’une ou plusieurs webcams, et de sauvegarder les images capturées dans un répertoire.

Facile à installer, on peut adapter le fichier de configuration (motion.conf) pour en faire à peu près ce qu’on veut.

On peut ajuster la résolution (largeur et hauteur doivent être des multiples de 16, sinon ça gueule), le répertoire de sortie (target_dir), la qualité de l’image, luminosité, constraste…

Quand le fichier de configuration est prêt, il ne reste qu’à démarrer le programme :

motion -c /home/nico/motion.conf

Le programme va enregistrer toutes les captures dans target_dir.

Dans la console d’exécution, on peut remarquer qu’un serveur web a démarré sur le port 8081 (par défaut). Alors ça, c’est le top!

Ouvrons un navigateur sur http://localhost:8081

Rodriiiiguez! Nous pouvons voir la caméra en live! Alors ça, c’est très intéressant, ça signifie que non seulement le système capture des images selon la détection de mouvements, mais qu’en plus on peut suivre la caméra en live depuis le réseau.

Un paramètre du fichier motion.conf indique si cet accès doit être restreint à localhost : webcam_localhost. Il suffit de le passer à off si on veut accéder au flux depuis n’importe quelle machine du réseau.

Si vous avez une adresse IP externe fixe, il suffit de router le port externe 8081 vers la machine Linux, sur le même port.

Si vous avez une IP dynamique, comme moi, il faut se démerder avec DynDns, NoIp… ou bien une solution maison, que je vais présenter dans le prochain billet, et qui marche très bien.

 

Merci à http://doc.ubuntu-fr.org/motion pour les infos sur motion.conf !

 

Unity

Ouahou,

Du coup, j’ai mis mon Ubuntu à jour avec la version 11.04, ce qui m’a permis de tester le nouveau gestionnaire de bureau : Unity.

A la place du vieux launcher tout pourri de l’ancien bureau Gnome, on a maintenant droit à une barre comparable au dock de MacOs, ou à la nouvelle barre des taches de Windows 7, avec les mêmes fonctionnalités (épingler, voir les différentes fenêtres d’une application). C’est appréciable.

En revanche, les programmes ne sont plus rangés au même endroit, ce qui est un peu déroutant. Ils ont intégré une recherche à la Spotlight style pour lancer les programmes, ou accéder aux fichiers.

Et sinon, j’ai cherché comme un con les programmes de gestion du système, impossible à trouver. Jusqu’à ce que je me rende compte en éteignant l’ordi qu’elles étaient planquées derrière le menu « éteindre »… Ah, les garnements !

Blender sous linux

Hey, j’ai testé hier soir Blender sous Linux, en suivant le Getting started.

Ca a l’air plutôt bien fait et utilisable, malgré le fait qu’il faille apprendre de nouveaux raccourcis clavier…

Je ne sais pas pourquoi, j’en avais le souvenir d’un logiciel hyper barbu, mais il me semble finalement accessible. A moins que ce soit ma barbe qui s’allonge…