Créer plusieurs dossiers en une seule commande

La création de dossiers peut être fastidieuse lorsqu’il faut répéter les commandes encore et encore. Heureusement, il est possible de créer de multiples dossiers en une seule commande.

mkdir -p /opt/{Signal,jetbrains/{clion,idea,pycharm}}

Il est important de ne pas oublier l’option -p puisque c’est elle qui permet cette magie. Elle permet en effet la création des dossiers parents s’ils n’existent pas.

Avec cette commande, les dossiers Signal et jetbrains seront créés dans le dossier /opt et les dossiers clion, idea et pycharm seront créés dans /opt/jetbrains.

Connaître le chemin absolu d’un script à l’intérieur de celui-ci

On utilise ici une particularité de bash donc attention si vous n’utilisez pas le même shell.

La prise de variable se fait comme ceci :

DIR_SCRIPT="$(cd "$(dirname "${BASH_SOURCE[0]}")" > /dev/null 2>&1 && pwd)"

Découpons tout ceci.

Premièrement, DIR_SCRIPT est le nom de la variable que nous pourrons utiliser ensuite.

Ensuite, $(cd "$(dirname "${BASH_SOURCE[0]}")" que nous allons découper en plusieurs parties.
– La plus importante à comprendre : ${BASH_SOURCE[0]}
C’est ici que se joue la particularité à bash de ce script. BASH_SOURCE[0] (ou BASH_SOURCE) contient le chemin (potentiellement relatif) du script qui y fait appel dans tous les scénarios d’invocation possible. Ceci inclue lorsque le script est sourcé, ce qui n’est pas le cas de $0 communément utilisé. $0 est un composant de la spécification POSIX pour les shell alors que BASH_SOURCE, comme son nom l’indique, est spécifique à bash.
– Ensuite dirname permet d’enlever le dernier composant du nom du fichier
– Finalement, cd redirige le script dans ce dossier identifié

Nous redirigeons ensuite avec > /dev/null 2>&1 toute erreur d’affichage ou tout affichage vers /dev/null.

Enfin, nous exécutons pwd dans le nouvel emplacement où nous nous trouvons afin d’en récupérer le chemin absolu. Le résultat de toutes ces opérations est ensuite stocké dans notre variable DIR_SCRIPT.

Retour de libre en fête et actualités

Voilà longtemps que je me suis fait silencieux et j’ai pourtant des milliers d’articles à écrire (Bon ok pas autant et je me suis pourtant déjà promis 20 000 fois de ne pas exagérer).

Tout d’abord un retour sur la journée Libre en Fête. La journée s’est très bien passée, de nombreux curieux et libristes étaient présents et les conférences ont, semble-t-il, intéressé beaucoup de monde. Elles sont d’ailleurs disponibles sur la chaîne Youtube du Laboratoire Linux de l’école SUPINFO à l’adresse : http://www.youtube.com/user/LaboLinux
Vous pouvez aussi retrouver les slides et les sources du projet android sur le site du laboratoire : http://clermont.labo-linux.org/

En ce qui concerne les articles, je suis actuellement à temps plein en entreprise et la motivation n’est pas toujours là après une journée de travail. Du coup ça s’accumule un peu mais je prendrais un jour de congé (un jour) pour rattraper tout ça. Si vous voulez éviter de revenir en quête de nouveauté régulièrement, le flux RSS fonctionne bien : http://www.laurentsanselme.com/feed

Programme de la journée Libre en Fête 2014

J’ai oublié d’en reparler ici mais le programme de la journée Libre en Fête est tombé. Nous avons donc :

Accueil des participants dès 9H30

10H15 : Opswork, chef dans Amazon Web Service
11H30 : La production d’une application Android
————————–————————–—-
14H00 : Raspberry Pi, un concentré de liberté
15H15 : Atelier Android / Install Party / Trivialibre
16H30 : Virtualisation avec Proxmox
17H45 : Présentation de MicroscopeJS

Autant dire une journée bien remplie et touchant à tous les domaines. Je suis en train de finaliser de mon côté la conférence sur le Raspberry Pi et j’espère qu’elle vous plaira.

N’oubliez pas que vous pouvez entrer en contact avec d’autres participants sur la page facebook de l’événement : https://www.facebook.com/events/1377039735889910

Vous pouvez aussi retrouver les conférences de l’an dernier sur le site du laboratoire Linux : http://clermont.labo-linux.org/

Enfin si ces supports ne sont pas disponibles (qui sait Facebook est peut-être tombé …), il reste la page de l’agenda du libre : http://www.agendadulibre.org/showevent.php?id=8308

En vous attendant nombreux au 37 Rue Gonod dans les locaux de l’école SUPINFO à Clermont-Ferrand.

A samedi !

Journée Libre en Fête 2014 Clermont-Ferrand

Affiche de l'événement Libre en Fête 2014 à SUPINFO Clermont-Ferrand

Voilà une petite communication pour vous parler d’un événement qui va avoir lieu le Samedi 29 Mars à Clermont-Ferrand sur le campus de l’école SUPINFO au 37 Rue Gonod.

Cet événement est la journée Libre en Fête. Initiative portée par l’April, c’est une journée de conférences et d’activités autour du logiciel libre et du monde du libre de manière générale. J’avais déjà organisé l’événement l’année dernière et ça avait été un franc succès. Vous pouvez retrouver toutes les conférences de l’an dernier pour vous faire une idée sur le site du Laboratoire Linuxhttp://clermont.labo-linux.org/blog/view/79/les-conferences-de-libre-en-fete-sont-disponibles

Le programme n’est pas encore fixé pour cette année mais vous pouvez vous tenir au courant sur les différentes pages de l’événement :

En tout cas si vous êtes sur Clermont-Ferrand le Samedi 29 Mars, vous êtes les bienvenus pour participer à cette journée et peut-être vous affranchir de quelques solutions propriétaires. En tout cas vous rencontrerez pleins de libristes qui pourront vous apporter les réponses à toutes vos questions.

Augmenter la taille maximale des fichiers à prévisualiser

Depuis l’arrivée de Linux Mint 16 Petra je suis de nouveau comme un poisson dans l’eau. Les versions MATE comme Cinnamon sont parfaitement abouties et je n’ai pas encore eu l’occasion de trouver un seul bug. Ce n’est pourtant pas faute d’avoir cherché la petite bête en poussant les configurations dans leurs derniers retranchements.

J’ai cependant pu trouver un petit élément qui pourrait être amélioré. Il concerne la taille maximale des fichiers pour lesquels un aperçu (une miniature, un thumbnail, … ) va être généré. Dans les Préférences dans l’onglet Prévisualisation, le menu de sélection en face de « Uniquement pour les fichiers de taille inférieure à :  » ne monte que jusqu’à 4Gio.

Or je voulais quand même avoir des aperçus sur mes fichiers supérieurs à 4Gio. La solution consiste à passer par l’éditeur dconf. Si vous ne l’avez pas installé vous pouvez le faire en tapant :

apt-get install dconf-editor

Rendez vous ensuite dans org -> nemo -> preferences, changer l’option thumbnail-limit par la valeur de votre choix. Pour ne pas être embêté, j’ai directement mis la valeur maximale que supporte la variable à savoir 18446744073709551616.

Je pensais pouvoir modifier la valeur depuis la console à l’aide de la commande

gsettings set org.nemo.preferences thumbnail-limit 18446744073709551616

mais curieusement je n’ai pas réussi. Si quelqu’un a une réponse à ça, je suis preneur.

En tout cas, une fois ceci fait, le menu de préférences de prévisualisations de Nemo indique 10Mio mais les aperçus sont bien faits quelle que soit la taille du fichier.

Fin de la période de test d’Ubuntu 13.10

Voilà la fin de ma période de test. Les résultats sont assez médiocres et confirment mon pronostic précédent à savoir ce n’est pas cette version d’Ubuntu qui me réconciliera avec la distribution.

Tout d’abord ceci s’est plus apparenté à une période de test normale à rallonge puisque mes tentatives de tunning ont immédiatement échouées. J’ai tout d’abord installé le bureau MATE à l’aide à de la commande

sudo apt-get install mate-common

L’installation se déroulant correctement, je ferme la session pour choisir le nouveau bureau et, magie, il ne m’est même pas pas possible de le sélectionner. Admettons. J’ai donc tenté ma chance avec Cinnamon.

sudo apt-get install cinnamon

Cette fois ci, la fermeture de session me permet bien de voir apparaître Cinnamon et Cinnamon 2D dans la sélection de LightDM. Je me connecte donc et aux premiers abords pas de soucis. Le bureau se charge et je me prépare à l’utiliser en cliquant sur le bouton Menu. Ce clic fut le dernier. Le bureau freeze ensuite en laissant la souris se balader sur l’écran ce qui est encore plus frustrant puisque ceci laisse l’espoir que la situation se débloque. Il n’en est rien. Passage sur le terminal 1 et redémarrage de l’ordinateur. Nouvelle tentative de connexion et nouveau freeze. Je tente donc ma chance avec Cinnamon 2D sans plus de résultat.

Dernière étape du test, l’installation de Gnome 3. Même si ce n’est toujours pas à mes yeux un environnement de bureau utilisable (on constate quand même de grandes améliorations au fur et à mesure des versions et j’ai bon espoir qu’il devienne une alternative réelle) je voulais voir si j’allais avoir plus de chance. Un petit

sudo apt-get install gnome-shell

et une fermeture de session. Connexion et … ça marche. On a donc, sur toutes les alternatives proposées dans les dépôts, une version qui fonctionne dès son installation. On se retrouve donc sur un Gnome 3.8.4 avec le bureau d’activé ce qui est un bon point. Le gestionnaire de fichiers a bien l’apparence de Gnome et pas celle d’Unity ce qui ajoute à la cohésion de l’interface de bureau.

A quelques défauts près que j’attribue à Gnome plus qu’à Ubuntu, le système et complètement utilisable. Le VPN openVPN que j’avais configuré avec Network Manager est bien affiché et fonctionnel, Steam se lance sans soucis.

Revenons maintenant à ma période de test rallongée sur Unity. Steam met souvent plusieurs fois à se lancer à cause de segfault totalement aléatoires. Sans que je ne comprenne pourquoi, Steam n’a jamais présenté de tels problèmes sous Gnome. L’autre gros problème que j’ai pu constater est l’arrêt inopiné de certains programmes, dont Unity à part entière après une partie de Worms Reloaded sur Steam. Je me suis donc trouvé dans la situations de Steam, Google Chrome et une fenêtre de Nautilus, ouvertes et fonctionnelles, mais ni fond d’écran ni menu ni rien. J’ai été obligé de redémarrer par le terminal.

Voilà qui marque donc la fin d’Ubuntu 13.10 sur ma machine et l’installation (très courte) de Fedora 19 en attendant la sorite de Linux Mint 16 Petra qui devrait pointer le bout de son nez dans les jours à venir.

Retour sur Ubuntu 13.10 phase de tuning

Bon et bien le test fut court. La version 13.10 d’Ubuntu en l’état, donc sans changer de configurations de bases, a enfin commencé à me péter des erreurs de programmes qui s’arrêtent au démarrage. Hier au dernier boot pas de soucis, aucune installation depuis, et ce soir dès le démarrage TADAM !

Donc cette version d’Ubuntu ne me réconciliera toujours pas avec la distribution. Toujours beaucoup trop de points négatifs en dehors de ces erreurs au bout d’une dizaines de redémarrages.

Je vais bien évidemment commencer par les lens (loupes) qui n’apportent aucune information utile, qui sont bien trop nombreuses et qui sont bien trop lentes. Les sélections de catégories sont mal faites. Je ne vois aucun intérêt à pouvoir sélectionner plusieurs catégories alors que je vois un inconvénient à devoir re-cliquer sur une catégorie pour l’enlever du filtre. Sur ça, la dernière version de Gnome 3 que j’avais testé avait au moins l’avantage de changer le filtre en cliquant sur une autre catégorie.

Ensuite, le bandeau d’Unity, Bien que pas si mal pensé sur nos écran 16/9 puisque dans le sens vertical et par conséquent consommant moins de place, manque encore affreusement d’ergonomie. Lorsque l’on clique sur une icône, le programme correspondant s’ouvre. Jusqu’ici pas de problème. Mais lorsque le focus est sur la fenêtre qui vient de s’ouvrir et que l’on clique de nouveau sur l’icône, … rien ne se passe. On s’attend à ce qu’il réduise la fenêtre. Ce serait encore la moindre des choses. Une exception à la règle et pas des moindres, l’icône de fichier qui a l’horrible particularité de rouvrir une nouvelle fenêtre à chaque clic où la précédente fenêtre de fichiers n’a pas le focus. C’est seulement lorsque l’une d’entre elle a le focus qu’il daigne nous proposer de choisir entre celles qui sont ouvertes. (EDIT : J’ai fait une mise à jour ce soir et le problème a l’air d’avoir été corrigé … Dommage je la prend quand même en compte) (EDIT 2 : Non non en fait le problème est bien toujours présent. Je ne sais pas à partir de quand il se met en place mais le comportement est toujours présent)

Enfin, je ne peux toujours pas supporter d’avoir la barre de menus de tous mes programmes dans le bandeau d’en haut. Ceci aurait une utilité de gain de place si toutes les applications que j’utilise était en plein écran mais c’est assez rare chez moi. J’utilise souvent pleins de petits terminaux et je me retrouve à faire des allers-retours entre la fenêtre et le haut de l’écran très inutilement.

Aller malgré tout des points positifs puisqu’il faut bien en trouver :

Steam fonctionne parfaitement même si j’ai eu dû le télécharger à l’aide d’un wget pour ne pas avoir à me créer de compte Ubuntu One et parce que le fichier téléchargé depuis le navigateur était corrompu. Mettons ça sur Valve et pas sur Ubuntu. Le wget résolvait le problème car au lieu de se contenter de télécharger un fichier coupé, il relançait le téléchargement pour récupérer la fin de fichier. Petite astuce pratique à savoir en tout cas.
En tout cas les jeux m’ont l’air bien portés et vu qu’ils le sont spécifiquement pour Ubuntu, il faut avouer que celui ci fait son office.

L’autre point positif est le thème qui est extrêmement agréable, à base de couleurs chaude et des fonds d’écran qui comme d’habitude valent vraiment le coup.

Je passe maintenant à la phase tuning vu que Petra n’est encore qu’en RC et que Fedora 20 n’arrive que dans 21 jours. Par ceci j’entend mettre gnome-shell, cinnamon, mate, et gratter plus profondément les modifications d’Ubuntu.

Retour sur Ubuntu 13.10

Je viens de reformater mon PC de travail pour cette nouvelle et dernière année scolaire. Je tourne depuis quelques temps déjà avec un triple boot Kali, Windows 7, Linux Mint. Cependant, j’ai aussi l’habitude de redonner sa chance à Ubuntu à chaque nouvelle sortie. Je ne peux toujours pas supporter le bureau Unity ainsi qu’un certain nombre de nouveautés que Canonical intègre (Ubuntu One et les Lens dont celle d’Amazon) mais j’ai encore plus de mal à faire une croix définitive sur la distribution Linux qui m’a réellement lancé dans le monde du libre.

En attendant la sortie de Linux Mint 16 Petra qui devrait arrivé fin Novembre, j’ai donc décidé qu’après avoir réinstallé mon Kali Linux et mon Windows 7, je testerai Ubuntu 13.10 Saucy Salamander.

Lorsque j’avais donné sa chance à Ubuntu 13.04 Raring Ringtail, je n’avais pas eu besoin de beaucoup de temps avant d’en déduire que je ne garderai pas cette version puisque juste après l’installation, au premier démarrage, j’ai eu le droit à un jolie message m’indiquant qu’un problème avait été détecté et qu’il fallait envoyer le rapport de bug à Canonical. A ce moment précis Ubuntu m’était apparu comme le Vista du Linux.

Cette fois, tout s’est parfaitement déroulé et aucun problème n’est à souligner (un petit écran noir après quelques installations mais je lui laisse cette marge).

J’envisage donc pour l’instant de conserver Ubuntu jusqu’à la sortie de Petra. De plus, j’ai bien envie de voir ce que donne Steam pour Linux qui est expressément conçu pour Ubuntu même s’il est possible de le lancer sur d’autres distributions. Comme ça, si des problèmes apparaissent, ça ne pourra venir que de Steam.

Le premier point que je remarque en tout cas c’est que les icônes et les tons de couleurs chauds d’Ubuntu sont bien plus agréables à la vue que Mint qui est un peu froid à mon goût.

La période de test commençant, il y a fort à parier que les articles des prochaines semaines tournent autour d’Ubuntu.

MySQL Workbench sous Ubuntu 12.04

Je parlais l’autre jour d’un problème lors du passage d’Ubuntu 13.04 à Ubuntu 13.10. Nombreux sont ceux qui, pour éviter ce genre de désagrément, préfèrent rester sur des versions dites LTS. La dernière en date chez Ubuntu est la 12.04. Malheureusement, même s’il y a moins de risque de rencontrer de problème sur ces versions, les paquets qui sont proposés sont souvent assez vieux ou certaines librairies absentes.

C’est notamment le cas avec MySQL Workbench. Ce logiciel de gestion de base de données MySQL est l’outil parfait pour bon nombre de tâches comme l’administration, la duplication, la conception, … de base de données. Malheureusement, à moins de se contenter de l’ancienne version disponible dans le dépôts officiel et installable en faisant

apt-get install mysql-workbench

il n’est pas possible d’installer la dernière version. Ceci prive d’un grand nombre de nouveautés particulièrement intéressantes. Ceci est tout simplement dû à l’absence de la librairie libctemplate0, celle ci ayant été remplacée par sa version plus récente libctemplate2, nécessaire au bon fonctionnement de MySQL Workbench. Heureusement, cette librairie est disponible dans les dépôts de Debian et il suffit de la récupérer et de l’installer pour pouvoir enfin jouir d’un gestionnaire de base de données efficace et fonctionnel.

La librairie est disponible à cette adresse :
http://ftp.br.debian.org/debian/pool/main/c/ctemplate/libctemplate0_0.97-1_amd64.deb

D’autres personnes suggèrent de recompiler MySQL Workbench en modifiant la référence à libctemplate0 par celle de libctemplate2, donc la nouvelle. Cette étape me semble en effet la plus pérenne et efficace mais elle demande plus de connaissances.

Source : http://bugs.mysql.com/bug.php?id=67322