Coffre fort à mots de passe

On doit manipuler de plus en plus de mots de passe, ceux qui servent pour accéder à des sessions logicielles, aux sites ou  à des périphériques divers. Certains sont beaucoup plus sensibles que d’autres comme ceux pour accéder aux comptes bancaires par exemple. Il est évidemment fortement déconseillé de placer vos mots de passe sur le « cloud » ou de faire confiance à je ne sais quel site ou même à votre navigateur pour stocker les mots de passe surtout s’ils sont stockés sur internet, c’est le meilleur moyen de se les faire pirater, le stockage local qu’on maîtrise est conseillé pour une meilleure sécurité.

Partant de ce constat, mettre les mots de passe en clair dans un fichier n’est pas non plus la meilleure solution. Une solution simple consiste à créer un fichier texte contenant vos mots de passe et de chiffrer le tout avec GnuPG. Cela donne cela:

gpg2 -sear olivier motpasse.txt

quelques commentaires

s pour certifier, en effet comme votre clé est publique n’importe qui pourrait se faire passer pour vous en vous empruntant votre clé publique, dans ce cas il faut passer par l’étape de certification des clés publiques pour déchiffrer les données.
e pour chiffrer,
a pour créer un fichier .asc prêt à être envoyé en fichier attaché par email
r suivi du destinataire du message, en l’occurrence moi même

maintenant dans mon fichier .bashrc, je rajoute l’alias suivant

alias coffre=’gpg2 -d /home/olivier/Documents/motpasse.txt.asc’

je supprime évidemment le fichier motpasse.txt et on évitera d’oublier la passphrase qui permet de débloquer l’archive. Il suffit ensuite de taper coffre pour visualiser les mots de passe.

That’s all folks !!

Navigation en baie de Morlaix

De retour d’une courte croisière d’un week end en baie de Morlaix à 2 Voiliers. Le moins qu’on puisse dire est que les parages sont très mal pavés et la navigation requière une préparation et une attention de tous les instants. Par contre c’est toujours intéressant de naviguer entre les ilots et autres fortifications et ce n’est pas ce qui manque dans la baie comme le château du taureau qui porte assez mal son nom puisque c’est en fait un petit fort dans le style architectural du fort Boyard.

16-05-14-chateau-taureauOn peut également observer la tourelle du plateau des Duons qui date de 1793, construire à l’origine comme refuge pour naufragés et balise.

olivier_hoarau_baie-morlaix-tourelle-des-duons

Voilà la trace GPS de la première journée, départ du port de plaisance du port de Roscoff et on profite des conditions favorables de marée et de vent pour prendre la direction de l’embouchure de la rivière de Morlaix pour mouiller devant Dourduff en mer. Le retour est plus sportif avec un vent qui forci à 5 bft.

2016-05-14-croiseur-baie-morlaixDeuxième journée, on va mouiller devant la plage du Kelenn à Carantec.

olivier_hoarau_baie-morlaix-mouillage-plage-kelenn

dans un vent faiblounet et un froid de canard pour un mi mai on traverse le chenal de l’île de Batz au moteur.

2016-05-15-croiseur-baie-morlaixLa suite de la galerie photo est par ici.

kdenlive 16.04.0

J’ai installé la dernière version de kdenlive, à savoir la 16.04.0. Elle est présentée comme étant une version majeure de ce logiciel de montage vidéo. Elle corrige un certain nombre de bogues et autres instabilités.

Lors de l’installation j’ai remis à jour l’ensemble des bibliothèques, j’ai juste eu une incompatibilité entre la version 3.0.2 de ffmpeg et OpenCV 3.1.0 qui m’a obligé à rester à la version 3.0.0 d’OpenCV. Je suis passé également à la version 6.2.0 de mlt. A voir donc la page sur les bibliothèques vidéo ainsi que celle sur le montage vidéo sur mon site FUNIX.

Voilà un projet chargé avec cette dernière version:

kdenlive16-04Les évolutions marquantes sont:

dans le champ moniteur

  • un champ timecode (le curseur de temps) a fait son apparition dans la fenêtre de moniteur de clip et de projet. Ça peut être utile pour se repérer finement d’autant qu’on peut faire bouger le curseur par unité de 50eme de seconde.
  • les marqueurs de début et de fin de zone du moniteur de clip peuvent maintenant être déplacés à la souris.
  • on peut choisir un effet dans le champ correspondant (cf. copie d’écran) et le glisser dans la fenêtre de moniteur (clip ou projet) pour que celui-ci soit appliqué.
  • dans le champ moniteur on peut voir le niveau audio du clip ou du projet
  • on peut également afficher le nombre d’images par seconde (fps) par le menu accessible avec le bouton droit de la souris (Current Monitor Overlay->Monitor Overlay Timecode)

dans le champ de la timeline

  • rajout d’une fonction « match frame », si vous placez le curseur sur la timeline et en choisissant dans le menu accessible avec le bouton droit Clip in project bin le moniteur renvoie directement sur la même image du clip original

dans le champ effet

  • rajout d’un bouton « split compare », c’est assez génial car il permet dans le moniteur d’avoir la moitié de la vue avec l’effet et l’autre moitié sans effet, très pratique !
  • maintenant on a enfin du son quand on joue avec l’effet de ralentissement/accélération de la vidéo. Auparavant j’étais obligé de passer par OpenShot Video pour pouvoir le faire en réimportant ensuite ma séquence vidéo.
  • on peut mettre les effets qu’on utilise le plus souvent en favoris facilement accessibles en le sélectionnant puis à partir du bouton droit de la souris Add Effect to Favorites.

dans le menu project

  • apparition d’une fonction intéressante pour pouvoir intégrer un compteur à sa vidéo (Project->Generator->Counter)counterde la même manière on peut rajouter une mire TV ou du bruit de fond, utile pour créer un générique.
  • dans les titres, on peut rajouter un gradient de couleur, ainsi qu’une ombre portée.
  • à noter également qu’on peut maintenant copier un clip (Duplicate Clip), très utile pour les titres.

Performous et autres logiciels libres

J’ai découvert récemment performous qui est un clone sous linux du logiciel de karaoke SingStar qu’on peut trouver sur console de jeu, mais pas seulement puisqu’il possède également des fonctionnalités similaires à Guitar Hero et Dance Dance Revolution qu’on peut également trouver sur console. Les périphériques de ces derniers logiciels sont reconnus par performous.

Seul inconvénient il ne comprend pas de manière native les fichiers .kar ou .mid mais seulement les fichiers au format ultrastar. Il existe des bidouilles pour convertir de l’un à l’autre, mais ça reste complexe et surtout coûteux en temps. Dommage car niveau interface c’est quand même plus moderne que pykaraoke ou kmid. Pour plus de détail, voir ma page multimédia de mon site FUNIX que je viens de mettre à jour.

J’ai testé la fonctionnalité fond vert de kdenlive, c’est assez simple à mettre en œuvre avec la transition composite et l’effet chroma key. Par contre il est impératif d’avoir un fond vert bien uniforme, mes premiers essais n’ont pas été très concluants, je crains de devoir investir dans un mini studio photo si je veux aller plus loin.

A part ça je me suis rendu compte que j’avais oublié de mettre en ligne la page pour sécuriser un poste linux que je n’avais pas mise à jour depuis des années. Je l’ai adaptée avec l’arrivée de systemd et d’outils comme shorewall ou MSEC pour mageia.

Croisière en mer d’Iroise

Je viens de déposer mon sac suite à une petite croisière en mer d’Iroise sur un Bénéteau Oceanis 323. 148km parcourus au total ou plutôt je devrais dire 80 nautiques en 3 jours au départ de Brest.

2016-04-14-croiseur-croisierePremière journée avec un vent très faiblounet qui nous a permis de nous traîner péniblement jusqu’à Morgat dans la baie de Douarnenez. Puis le lendemain, direction l’île de Sein, au milieu des cailloux pour un mouillage au chausse pied pour le repas de midi.

16-04-13-grand-phare-seindans l’après midi on trace jusqu’à la pointe du Toulinguet sous spi sous le soleil et avec un vent bien établi de 12 à 15 nœuds.

16-04-13-spi-iroiseOn passe la nuit à Camaret et le lendemain retour sur Brest avec des conditions plutôt sportives avec un vent établi à 25 nœuds et des rafales à plus de 30 nœuds.

Ce n’était pas qu’une croisière d’agrément, elle avait également une vocation d’apprentissage pour appréhender la vie à bord sur plusieurs jours, apprendre à manœuvrer le bateau au moteur dans les ports, faire diverses manœuvres (mouillage, embossage, …) ou faire une navigation (relèvement, calcul de marée, etc.). Bref, une bonne expérience pour apprendre à être plus autonome.

kodi 16.0 Jarvis

J’ai installé la dernière version du mediacenter kodi 16.0 Jarvis, je n’ai pas vu de grandes évolutions, on trouvera le ChangeLog (en anglais) par ici. J’en ai profité pour installer l’extension vidéo youtube, mais celle par défaut ne fonctionne pas. Du coup il faut récupérer une autre extension youtube qu’on trouvera par . Elle se nomme plugin.video.youtube-master.zip et on la garde dans un coin.

Dans kodi, on  va maintenant dans Vidéos->Extensions->En obtenir plus… 2 fois on clique sur la flèche de retour (en bas à droite) jusqu’à la page Extensions puis Installer depuis un fichier zip et là on va chercher le fichier précédemment récupéré.

Quand on lance l’extension youtube, il faut d’abord cliquer sur Connexion pour l’associer à un compte youtube, et voilà ce que ça donne quand l’association est terminée.

avec mes playlists

j’en ai profité pour mettre à jour la page correspondante sur mon site FUNIX.

BEE Ile d’Oléron A610

Sur mon site perso, j’ai rajouté quelques pages sur le bâtiment d’essais et d’expérimentation BEE Ile d’Oléron, code A610. Ce navire a une histoire incroyable, construit par les allemands en 1939 en tant que cargo, il est reversé à la Kriegsmarine, capturé intact à la fin de la guerre il devient prise de guerre pour la marine nationale en pleine reconstruction. Il sert ensuite de transport de troupes et relie les différents colonies françaises de l’époque comme l’Indochine et l’Afrique noire où à une occasion il rapatrie 400 tonnes d’or du Sénégal. En 1958 il est profondément transformé pour servir de plateforme d’essais de missiles et il sert ainsi jusqu’à son retrait du service en 2002 après 63 années de bons et loyaux services.

Dans une autre vie, j’ai passé une année à bord, j’étais bouchon gras comme les marins aiment à appeler les mécanos. Contrairement à sa réputation de bateau qui navigue à la journée, cette année d’embarquement a été riche en jour de mer au point que j’ai pu être lâché chef de quart à la machine. Quand on a 20 ans, c’était un beau privilège et une sacré responsabilité.

Bien que le bateau ait été profondément modifié, sa machine est restée dans son jus des années 30 avec pilotage des moteurs principaux 2 temps MAN directement aux pieds des machines dans une atmosphère chargée en gazole, huile, odeur de combustion, de cigarette et de cuisine et un bruit infernal.

Bref, je vous en dis pas plus, je vous invite à consulter ces pages sur le BEE Ile d’Oléron A610.

Freeride Saint Pabu

D’habitude par vent de nord-est, par marée basse, je vais naviguer du côté de Lampaul-Ploudalmézeau, on m’a conseillé de tester Saint Pabu. Bien m’en a pris,  sous le soleil c’était fantastique, on tire quelques bords et on se retrouve à naviguer dans l’Aber Benoît en longeant un long banc de sable avec un plan d’eau plat comme un billard et une eau transparente façon lagon, un vrai régal.

Voici ma trace GPS, en fait on est entre les spots des dunes de Sainte Marguerite de Landéda au nord et à l’ouest Lampaul-Ploudalmézeau et Tréompan. Cette après midi, c’était marée basse avec un coefficient de 99, au sud ouest de ma trace dans l’Aber Benoît, c’est un immense banc de sable.

2016-03-13-gps-fun-saint-pabuj’ai fait un petite vidéo vite fait, ce n’est pas ma meilleure.

Thème WordPress Twenty Fourteen

Je suis passé au thème wordpress twenty fourteen histoire de changer un petit peu le look de mon blog. J’ai donc repris toutes mes bannières qui sont issues des photos qu’on peut trouver dans ma galerie photo. Pour activer les articles à la une,  il faut choisir et éditer l’article, au niveau de la cartouche Publier, on développe Visibilité et on coche « Mettre cet article en avant sur la page d’accueil ».

article-uneCe n’est pas fini, il faut associer maintenant une photo qui apparaîtra dans le bandeau des articles mis en avant. Toujours dans l’édition de l’article au niveau de la cartouche Image à la Une, on va choisir une photo dans la bibliothèque d’image d’une taille suffisante pour remplir la zone des articles à la une de la première page.

image-unemaintenant au niveau de la configuration du thème j’ai choisi diaporama plutôt que grille.

contenu-uneIl y a quand même un petit défaut dans le thème, les pages avec un affichage plein écran ne remplissent pas tout l’écran. Elles sont limitées à 474 pixels. Pour rectifier cela, il faut éditer le fichier style.css qu’on trouvera sous wp-content/themes/twentyfourteen. Au lieu de

.site-content.entry-header,
.site-content .entry-content,
.site-content .entry-summary,
.site-content .entry-meta,
.page-content {
margin: 0 auto;
max-width: 80%;
}

on écrit

.site-content.entry-header,
.site-content .entry-content,
.site-content .entry-summary,
.site-content .entry-meta,
.page-content {
margin: 0 auto;
max-width: 474px;
}

et le tour est joué. Maintenant pour modifier les couleurs du thème j’ai installé l’extension fourteen colors. La configuration se passe au niveau de la personnalisation de la couleur du thème.

fourteen-colorsDans la personnalisation du thème j’ai activé la barre latérale de contenu et j’ai rajouté un widget nextcellent gallery avec des photos en vignettes. Puis j’ai mis des vidéos issues de ma page youtube tout simplement en rajoutant le code d’insertion des vidéos dans un widget texte HTML.

widget-text

Développer des applications Android sous linux

J’ai eu une envie subite pour le fun de voir comment programmer une application Android sous linux. En fait ça vient du fait que je suis incapable de trouver une bête application, évidemment gratuite, pour écouter de la musique où on puisse créer une liste de lecture en cochant des titres trouvés sur la carte SD ou dans sa mémoire interne et qu’on puisse trier sur la base de critères assez simples. Alors tant qu’à faire on n’est jamais mieux servi que par soi même.

Je me rends compte que tout est fait pour faciliter ce développement, l’environnement de développement (Software Development Kit SDK) est très simple à installer, y compris sous linux. Ensuite il faut évidemment avoir quelques bases de programmation. On trouve sur internet, un tas de sites qui expliquent comment faire votre propre application, mais ils ne vont vraiment pas loin, ils se contentent d’aller jusqu’au Hello World et puis c’est tout ! J’ai repéré ce site francophone sur OpenClassRooms qui est vraiment excellent en approfondissant de manière très didactique le sujet. Ce post en anglais est également très fouillé et réellement utile.

Niveau programmation ça m’a rappelé ma jeunesse quand je pissais du code en C en utilisant les toolkits Motif/X11 pour construire son interface graphique, ça ne doit pas dire grand chose aux jeunes mais c’est la bibliothèque graphique de la grande époque d’UNIX qui a inspiré GTK+ et Qt, les bibliothèques de base respectives de Gnome et de KDE. On retrouve les mêmes principes, on définit des widgets dans un environnement de développement wysiwig, puis les évènements (callbacks) qui vont avec.

En attendant une page dédiée sous mon site Funix, pour en revenir à l’installation sous linux, on récupèrera le SDK android par , ainsi qu’un moteur JAVA dans sa version 7 par ici. On commence par installer java en tapant

urpmi jdk-7u79-linux-x64.rpm

Pour le SDK on décompresse l’archive zip en tapant

unzip android-studio-ide-141.2456560-linux.zip

cela donne le répertoire android-studio on lance l’exe qui sous bin

./studio.sh

si vous avez cette erreur

Please ensure JAVA_HOME points to JDK rather than JRE

Éditez votre fichier .bashrc et rajoutez (il faut mettre le chemin absolu de JAVA)

export JAVA_HOME=/usr/java/jdk1.7.0_79

et pour prendre en compte la modification on tape source ~/.bashrc

Pour la suite des opérations et de configuration, il y a tout un tas de sites qui décrivent très bien la configuration initiale d’Android Studio par exemple toujours celui d’OpenClassRooms ici. A un moment on se rend compte que pour lancer un périphérique virtuel (Android Virtual Device) il faut disposer de KVM (Kernel-based Virtual Machine) et d’un noyau linux compatible permettant de faire tourner plusieurs systèmes d’exploitation sur la même machine, c’est également ce qu’on appelle de la virtualisation. Pour savoir si votre noyau est compatible, on tape:

egrep ‘^flags.*(vmx|svm)’ /proc/cpuinfo

voilà le résultat avec un noyau compatible

flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm ida arat epb pln pts dtherm tpr_shadow vnmi flexpriority ept vpid xsaveopt

maintenant sous Mageia 5 on installe KVM en tapant simplement urpmi kvm. On relance le PC, ce n’est pas fini ! Il faut aller dans le bios, sur mon portable ThinkPad x220 j’ai une option Virtualization et j’ai mis à enabled les options Intel (R) Virtualization technology et Intel (R) VT-d Feature. Voilà à quoi ressemble l’environnement de développement

Voilà le programme que j’ai tapé, je suis parti des sources du programme Hello World par défaut et je me suis inspiré des sites cités plus haut. Les puristes et ayatollahs de la programmation m’excuseront, mais ça fait des années (pour ne pas dire des décennies) que je n’ai pas programmé et en plus je découvre totalement la programmation Android ! J’ai tout simplement construit une interface qui permet de saisir un chiffre qu’on multiplie par 2 ensuite, c’est tout bête ! Voilà le fichier principal avec l’implantation des callbacks

import android.os.Bundle;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnKeyListener;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.RadioGroup;
import android.widget.TextView;
import android.widget.Toast;
import android.text.TextWatcher;
import android.text.Editable;

public class MainActivity extends AppCompatActivity {

private final String defaut = « Vous devez cliquer sur le bouton pour obtenir un résultat. »;
Button envoyer = null;
EditText nombre = null;
TextView result = null;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);

// On récupère toutes les vues dont on a besoin
envoyer = (Button)findViewById(R.id.button);
//calcul = (Button)findViewById(R.id.button);
nombre = (EditText)findViewById(R.id.editText);
result = (TextView)findViewById(R.id.textView4);

// On attribue un listener adapté aux vues qui en ont besoin
envoyer.setOnClickListener(envoyerListener);
nombre.addTextChangedListener(textWatcher);

nombre.setOnKeyListener(modificationListener);
}

// Se lance à chaque fois qu’on appuie sur une touche en étant sur un EditText
private OnKeyListener modificationListener = new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
// On remet le texte à sa valeur par défaut pour ne pas avoir de résultat incohérent
result.setText(defaut);
return false;
}
};

private TextWatcher textWatcher = new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
result.setText(defaut);
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
@Override
public void afterTextChanged(Editable s) {
}
};

// Uniquement pour le bouton « Calcul »
private OnClickListener envoyerListener = new OnClickListener() {

@Override
public void onClick(View v) {
// On récupère le nombre
String t = nombre.getText().toString();
float tValue = Float.valueOf(t);
// Puis on vérifie que le nombre est pas égal à 0
if (tValue == 0)
Toast.makeText(MainActivity.this, « Hého, pas de zéro ! »,                                                        Toast.LENGTH_SHORT).show();
else {
float resultat = tValue / 2;
result.setText(« Le résultat est  » + String.valueOf(resultat));
}
}
};

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();

//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}

return super.onOptionsItemSelected(item);
}
}

Je vous invite à parcourir OpenClassRooms pour comprendre ces quelques lignes. Maintenant pour tester le programme, il faut créer un périphérique virtuel, j’ai pris par défaut le Nexus 5 avec Android 4.2 Jelly Bean puisque mon téléphone portable physique Acer Z130 fonctionne avec la version 4.2.2.

Sur le screenshot ci-dessus, je n’avais pas encore configuré KVM d’où le message en rouge, cela semble facultatif, sauf que l’émulateur ne se lançait pas sans… Cela donne cela ensuite avec un Nexus 5 virtuel.

Je ne vous cache pas qu’il faut avoir une machine bien puissante, la compilation et la virtualisation demandent pas mal de ressources, et je ne parle pas quand on passe en mode debogage. Maintenant pour pouvoir le faire tourner sur un vrai portable, il y a quelques manips à mener au niveau, dans les options pour les développeurs, il faut activer le débogage USB et passer en mode PTP (appareil photo) et non mass storage. Et voilà le résultat !