Le film fréquence interdite à une version française assez merveilleuse dans le passage où deux gens en costume discutent à la télé de comment fonctionnent les aurores boréales:
« C’est ce que nous apprend la théorie des chaînes de caractère »
ou bien, string theory en VO, ce qui voudrait plutôt dire théorie des cordes.
Les strings sont un type de variable bien connu pour tout développeur ayant étudié le typage. C’est une variable dans laquelle on ne peut pas stocker de slips ou de caleçons, que des strings. Enfin presque.
C’est ainsi que Je me suis un peu trop bidonné devant cette traduction innatendue.
Bon, à part ça c’est un chouette film que je vous recommande si vous aimez la SF policière tournée avec peu de moyens.
distributions .img et sauvegarde de carte SD
Si vous avez un raspberry pi vous n’avez que l’embarras du choix pour y installer des distributions linux.
Téléchargez donc une ou des distributions linux au format .img sur votre ordi.
Pour installer un fichier .img sur une carte SD, on va se servir de la commande dd.
et pour créer un fichier .img à partir d’une installation, ce sera également la commande dd dont on va se servir.
si votre carte SD se trouve dans /dev/sdh (pour le savoir, faites la commande df -h) et votre distribution Pidora-2014-R2-1.img dans votre dossier ~/distribs/ , il faudra faire comme ceci:
sudo dd if="~/distribs/Pidora-2014-R2-1/Pidora-2014-R2-1.img" of="/dev/sdh"
et patienter quelques minutes que la copie se fasse, selon la vitesse de votre lecteur de carte SD.
Dans l’autre sens, la commande pour créer une image système compressée à partir de la carte SD se trouvant sur /dev/sdh avec compression gzip dans le dossier courant sera:
sudo dd if=/dev/sdh |gzip -9 > ./raspberry_backup_20141108.img.gz
Vouala, enjoyez bien et si vous avez une préférence pour une distribution, dites moi donc pourquoi 🙂
anti hack de NFC
Vous avez la joie d’être possesseur d’une carte bleue avec une puce sans contact, ce qui vous permet de régler de petits montants jusqu’a 20€ sans avoir à taper votre code.
Mais saviez vous que cette puce peut se révéler bien bavarde et qu’il est possible avec un smartphone équipé de lecteur NFC de lire ce que cette puce a à raconter?
Heureusement, rien n’est plus simple pour se prémunir d’une lecture non souhaitée, par exemple dans un métro bondé ou dans un supermarché: utiliser une feuille d’aluminium dans votre porte feuille/ porte carte / poche /etc.
Vous pouvez procéder de même avec votre carte navigo / vélib / votre not-stupid-phone.
ça vous évitera que quelqu’un d’autre ne paie avec vos identifiants de carte, ça ne coute rien et ce n’est même pas encombrant. Enjoyez!
installer une distribution linux sur une carte SD pour le raspberry pi
Possédant un raspberry Pi je voulais essayer plusieurs distributions linux de poche dessus.
Ce microcontrolleur ne pouvant pas démarrer sans carte SD à l’intérieur je devais donc installer un fichier .img dessus à partir d’un autre ordi.
vous aurez besoin de:
- une carte SD (de type sdhc) avec au moins 1Go de place dessus.
- un fichier .img d’une distrib. le site officiel vous en propose pas mal à télécharger.
- un ordi avec un lecteur de carte SD.
Cette opération supprime les données de la carte SD.
insérez votre carte SD dans le lecteur de votre ordi.
ouvrez un terminal.
repérez le nom de la partition de votre carte SD avec la commande df -h
qui liste les disques de votre système de fichier
(vous la trouverez en comparant son nombre de Gigas)
par exemple, ma carte a deux partitions physiques dessus /dev/sdg1 et /dev/sdg2
Nous choisirons donc /dev/sdg , l’appellation commune à toute la carte SD.
Vous n’avez pas besoin de démonter la carte SD pour pouvoir installer votre distrib, et c’est ce que nous allons faire avec la commande suivante.
vous aurez besoin de connaitre le chemin de votre fichier .img que vous voulez installer, par exemple /home/tykayn/téléchargements/raspbian.img
et zou, dd (convertir et copier un fichier) va nous permettre l’install et la création des partitions requises en lui renseignant l’input file (if= »/home/tykayn/téléchargements/raspbian.img ») et l’output file (of= »/dev/sdg »). Sacré dédé!
sudo dd if="/media/ntfsman/ArchLinuxARM-2014.06-rpi.img" of="/dev/sdg"
(il faudra entrer le mot de passe sudo)
Si vous avez bien choisi vos fichiers ça prendra quelques minutes pour une distribution de 200Mo et votre terminal vous dira ce qu’il a fait. Par exemple:
3829760+0 enregistrements lus
3829760+0 enregistrements écrits
1960837120 octets (2,0 GB) copiés, 513,805 s, 3,8 MB/s
Et voilà, si votre fichier .img était bon, vous n’avez qu’a mettre votre carte SD dans le raspberry pi, (avec ses autres cables), brancher le courant et hopla magie ça démarre.
Des alternatives à plein de softwares
Vous aimez avoir le choix quand un seul logiciel se monte en monopole comme c’est le cas avec photoshop, ou que vos collègues ne jurent que par redmine pour faire du suivi de bugs? AlternativeTo.net est ce qu’il vous faut. C’est une mine d’or où l’on peut choisir des plateformes, partir d’un nom de programme et découvrir de nombreux concurrents. à vous ensuite de faire des essais et de découvrir la perle rare.
FOSUserBundle could not convert database value to doctrine type array
Si lorsque vous tentez de faire un ajout ou suppression de role en ligne de commande pour FOSUserBundle (FOSUB) vous obtenez un message d’erreur de conversion de Doctrine,
could not convert database value to doctrine type array
c’est parce que dans votre base de données, dans la colonne « role » de vos utilisateurs, vous avez des valeurs vides, au lieu d’avoir des sérialisations de tableaux vides.
Pour remédier à cela vous pouvez définir par défaut la chaine correspondant à un Array vide, et remplir les vides a coup de commande SQL.
UPDATE table SET column="a:0:{}" WHERE column = "";
(en remplaçant les noms de table (ma_table_des_utilisateurs) et de column (role)
Vos commande de promotion de rôles fonctionneront alors comme par magie!
php app/console fos:user:promote jojo ROLE_ADMIN
Role "ROLE_ADMIN" has been added to user "jojo".
sources: Trouvé et traduit depuis stackoverflow , image
Redimension d’image en ligne de commande avec imagemagick
imagemagick permet de faire plein de manipulations sur les images, redimension, conversion, assemblage, c’est magique.
J’ai régulièrement besoin de redimensionner des images pour les présenter sur mes sites. mogrify est très utile pour la redimension de masse.
cette commande permet de faire des copies redimensionnées en 800px de large sur 600 px de haut, de tous les fichiers jpg du dossier courant vers autre_repertoire.
mogrify -resize 800x600 -path autre_repertoire *.jpg
il faut juste vous assurer que « autre_repertoire » est inscriptible par votre script, et que vous avez bien des fichiers jpg à redimensionner dans votre répertoire courant.
Vous pouvez aussi choisir de ne faire des sorties d’images dans un seul format précis (jpg, ou png …), avec l’option format.
mogrify -resize 800x600 -path autre_repertoire -format jpg *.jpg
En bonus, pour ouvrir un terminal à partir de votre explorateur de fichier, si vous êtes sous KDE vous pouvez faire F4, autrement avec nautilus vous pouvez installer nautilus-open-terminal
sudo apt-get install nautilus-open-terminal
de la doc pour imagemagick
http://doc.ubuntu-fr.org/imagemagick
(en illustration, Rincevent du Disque Monde, de la lecture parodique fantastique qui poutre)
WordPress, comment ne plus demander les détails FTP pour mettre à jour
dans wp-config,
repérez la ligne
require_once(ABSPATH, 'wp_settings.php');
rajoutez ceci:
define('FS_METHOD','direct');
sauvegardez, et voilà, quand vous demanderez une mise a jour dans l’interface d’admin, wordpress ne vous demandera pas vos login et mots de passe FTP ou SSH.
Symfony et APC
APc, formidable truc qui permet la mise en cache de plein de choses résultant de PHP ne vide pas forcément son cache.
Aussi, je ne comprenais pas, même après vérification de la similarité des fichiers entre ma machine et l’environnement de démo, vidage de cache de symfony, régénération des entités, mise a jour de la base de donnée, il subsistait des erreurs résolues en environnement de dev. jusqu’à ce que je tente une opération de vidage du cache de doctrine.
Rappel des commandes doctrine par la commande « php app/console » abrégée en alias personnel « sf ».
(...) doctrine doctrine:cache:clear-metadata Clears all metadata cache for an entity manager doctrine:cache:clear-query Clears all query cache for an entity manager doctrine:cache:clear-result Clears result cache for an entity manager (...)
APC, ce petit malin ne voulait pas vider son cache à moins qu’on ne le lui demande poliement par commande php. Voici qui pourrait vous évider bien des échevelages et auto mutilations inutiles:
en console, faites cette commande:
php -r "apc_clear_cache();"
et vouala, tout rentre dans l’ordre!
Raspberry Pi case en papier
heh, y’a des jours où le DIY marche du premier coup, et des jours où on a la flemme 😀