Calculer pi en ligne de commande sous linux

pi en ligne de commande bash sous linuxL’idée de départ, est de me créer un tee-shirt sur lequel il y aurait pi suivi de 311 décimales pour en faire un « truc » graphique.

Je passe sur l’aspect graphique souhaité, je vous montrerai peut-être une fois l’œuvre terminée…

Soit! C’est très futile, mais les futilités nous emmènent toujours vers des chemins imprévus, comme l’idée d’en faire un billet.

Bref! Pour ce graphisme, j’ai besoin de pi à 311 décimales derrière la virgule, soit 3,(311chiffres).
Ouvrons un terminal, certains dirons une console… et voici la ligne de commande bash avec le résultat:

echo « scale=311; 4*a(1) » | bc -l

$ echo "scale=311; 4*a(1)" | bc -l
3.141592653589793238462643383279502884197169399375105820974944592307\
81640628620899862803482534211706798214808651328230664709384460955058\
22317253594081284811174502841027019385211055596446229489549303819644\
28810975665933446128475648233786783165271201909145648566923460348610\
45432664821339360726024914127372458700660

Explications:

  • « echo » renvoie un affichage sur console (saisie, écriture, résultats)… Voir Initiation au shell (boucle for, do, done)
  • « scale=x » scale permet d’indiquer le nombre de chiffres après la virgule (remplacer x par le chiffre souhaité)
  • « 4*a(1) » a(1) se base sur la fonction Arc Tangente a(). Cette formule « 4*a(1) », permet entre autres, le calcul du nombre pi.
  • « | » «pipe» redirige le résultat d’une commande dans le flux d’entrée d’une autre commande. Ici la commande suivante sera « bc » qui est une commande de calculatrice «basic calculator»
  • « bc -l » récupère la formule « 4*a(1) » après le « pipe » pour effectuer le calcul. L’option « -l » utilise la librairie mathématique standard (Define the standard math library) qui utilise, entre autres, la fonction Arc Tangente a()… Voire « man bc »

Si l’on met à « scale » un nombre plus « gros », par exemple « 2000 » le temps de réponse est plus long, on peut « mesurer » le temps de réponse avec la commande « time », exemple:

time echo « scale=2000; 4*a(1) » | bc -l

$ time echo "scale=2000; 4*a(1)" | bc -l
3.141592653589793238462643383279502884197169399375105820974944592307\
81640628620899862803482534211706798214808651328230664709384460955058\
22317253594081284811174502841027019385211055596446229489549303819644\
(...)
74427862203919494504712371378696095636437191728746776465757396241389\
086583264599581339047802759008
real    0m2.470s
user    0m2.470s
sys    0m0.001s

Pas forcement utile au quotidien, donc nécessaire!

On ne m’y reprendra plus!

linux vieux pcJe suis persuadé que parfois on commet l’erreur de vouloir faire fonctionner, à tout prix, un vieux pc. En fin de billet, j’explique pourquoi.

Et oui, quand un collègue vient me voir et me dit : Une voisine m’a donné un vieux ordinateur portable, tu pourrais faire en sorte que je puisse l’utiliser ? Le clavier est « Américain » et la prise de courant aussi…

Alors moi, bon Prince : pour le clavier il suffit de mettre des stickers, la prise un adaptateur, et dessus je t’installe un linux…

Hé oui, je suis bon Prince, mais bon, lire la suite…

Je récupère l’antiquité, et là, je sens déjà que ce ne sera pas simple. J’en ai un, identique, au boulot qui sert de dépannage, et bien qu’il soit chargé au maximum de sa mémoire (4Go) j’ai vraiment « galéré » pour y installer un linux.

Le mystère de ce Dell, car il s’agit de cela, est que je ne sais pas pourquoi certaines distributions échouent à l’installation et que d’autres, pas plus légères, au contraire, s’installent.

Début des méandres des « installs »
Je commence par une « Mint » que j’ai déjà installé sur de vieux PC, pas aussi vieux, mais bon…
Ça s’installe, heureux je fais les mises à jour, reboot, et là je me retrouve sur un écran noir, pas de grub, pas de prompt, pas de console accessible, rien, un écran noir ! Je fais plusieurs tentatives, idem ! J’essaie d’installer d’autres distributions « toutou linux » et autres… Elles échouent toutes à l’installation. J’essaie Debian (c’est la seule distribution que j’avais pu installer sur celui de mon boulot), échec à l’installation. Hé merde !

Petit espoir !
Je regarde les dvd et cd récents qu’il me reste, et là je vois un cd freebsd 10.03 que j’avais testé sur un autre pc, j’essaie, Bingo ! Ça fonctionne super bien !
Là me vient une petite réflexion :
Je « maîtrise » mieux gnu-linux que freebsd (vous aurez remarqué les guillemets), en effet, j’ai testé plusieurs fois les freebsd mais de façon épisodique, sans jamais vraiment chercher à approfondir bien que j’ai toujours été charmé par freebsd. Alors en cas de soucis, saurais-je y répondre ? Cas de conscience !

Dernière chance !
Il me reste un dvd de xubuntu 16.04, j’y crois pas trop car sur celui de mon boulot, à l’époque, la 10.04 avait échoué… Je tente, et ça passe ! Tout tourne bien sous la xubuntu 16.04.
Sauf que ça rame vraiment.

D’où ma réflexion : Je suis persuadé que parfois on commet l’erreur de vouloir faire fonctionner, à tout prix, un vieux pc.
En effet, même si un vieux pc peut tourner sous linux, il faut savoir poser les bonnes questions avant de se lancer.
Pour quel usage ?

Si la réponse est, faire de la bureautique, aller sur internet en toute simplicité, messagerie, retoucher des photos, etc. Cela sous entend pour nombres de personnes (LibreOffice, Firefox, Thundebird, Gimp, etc.), pour la convivialité en grande partie.
Il faut prendre en considération que toutes ces applications ont évoluées et sont beaucoup plus gourmandes en ressources qu’il y a dix ans et que lancer l’une de ces applications va augmenter la lenteur du pc, en lancer plusieurs en simultanées, peut même le « planter ».

Soit, il existe d’autres applications qui peuvent se substituer. Mais seront-elles adaptées à celui qui découvre Linux ? Pas certain !

Je pense donc qu’il faut savoir dire : Ton pc est trop vieux, pour ce que tu souhaites faire, achètes-toi un nouveau pc sans système d’exploitation et installes-y ce que tu souhaites.

On ne m’y reprendra plus… en effet, un tel vieux pc, peut être très bien pour celui qui souhaite utiliser des applications moins courantes mais tout aussi efficaces, découvrir d’autres horizons (MPS-Youtube, Cmus, zathura, etc.) mais je ne pense pas que ce soit fait pour le novice qui souhaite découvrir le monde libre, du moins, pas pour tous les novices.
j’en revendique le statut, « Je ne suis pas le gentil gars qui s’y connaît en informatique.« 

Linux – De l’interface graphique à la ligne de commande

de l'interface graphique à la ligne de commandeUn peu de ma vie privée, ou plutôt de celle de mes farfadets et mes fadettes, j’en ai deux de chaque.

Tous utilisent depuis leur tendre enfance linux… Maintenant, ils l’utilisent plus ou moins en fonction de leurs besoins. Pour celui qui l’utilise le plus, même exclusivement, il s’agit d’un de mes farfadets, l’autre, étant un « gamer« , et l’utilise le moins, les Fadettes sont entre les deux.

J’en viens à l’une des Fadettes, son pc est en dual boot, pour un usage professionnel, elle utilise au maximum linux (la grande majorité du temps) via les applications graphiques qui lui sont proposées, sauf pour certains de ces travaux.

L’interface graphique, c’est bien… Mais parfois, la ligne de commande, c’est mieux ! J’y viens !

« Papa, on a plusieurs photos de divers appareils (4) et elles se mélangent dans le répertoire, on doit rendre un travail chronologique… Tu m’as dit un jour qu’avec ton écran noir (un terminal) et tes lignes, ça peut se faire facilement… Tu peux me montrer ? » (Sur son pc, une multitude de fenêtres ouvertes sur plusieurs bureaux avec divers travaux en route… Pas question de les fermer pour passer sur un autre système d’exploitation).

Quand on me parle de mes lignes, ça me rend particulièrement fier, même si au fond de moi-même, je sais que quiconque lit le « man » de « find » et « exiv2 » peut en faire autant, voire mieux, mais bon…

Je lui dis, il suffit de suivre le billet sur mon blog « Renommer les photos par lot en utilisant les métadonnées EXIF« . Et là, magie ! En quelques secondes, les centaines de photographies se renomment par ordre chronologique.

Renommer les photos par lot en utilisant les métadonnées EXIF Magique ou presque, car l’un des appareils n’était pas à la bonne date et heure…
Alors, autres lignes de commande, c’est un peu plus long, en suivant le billet « Modifier la date de vos photos« , et le résultat final est parfait !
Je suis heureux de voir que ma Fadette s’en est très bien sorti et surtout qu’elle s’est rendu compte que la ligne de commande est un parfait complément à ce qui peut se faire via une interface graphique !

Arnaque sur smartphones et à qui profite les pétitions en ligne

News et paranoDeux alertes, elles ne viennent pas de moi, mais j’en fais le relais ! Deux alertes, suivez les liens pour en être informé !

Arnaque sur smartphones
Vous, vos enfants, vos amis avez un smartphone, soudain, vous avez un message d’alerte plus ou moins similaire à l’image ci-dessous… Si vous êtes parano comme moi, vous allez réinitialiser votre téléphone et repartir de « zéro ». Si vous cliquez, vous vous retrouverez avec une facture téléphonique qui risque de dépasser l’entendement.

Pour bien comprendre, lire l’article que je souhaite relayer pour son importance (j’ai aussi pompé son image, mais il me pardonnera, j’espère).

Il s’agit d’androïde, mais on peut imaginer sur d’autres systèmes :
Sécurité des mobiles : anatomie d’une arnaque sur Android
Article très bien décrit par Philippe Macia.

arnaque_sous_android_12.jpg

À qui profitent les pétitions en ligne ?
J’ai toujours été dubitatif vis-à-vis les pétitions en ligne… Que valent les valeurs apportées à de telles signatures, certains signent parce qu’ils ont vu leurs amis des réseaux sociaux la signer, ils ont lu en diagonale, le titre plaît… Mais où est le véritable acte militant ? La pétition papier nécessite un engagement, enclenche le débat, le contact… À mon avis, 10 signatures papiers valent plus que 100 en ligne… Mais au-delà, que deviennent nos données ? Lors des pétitions en ligne, il faut mettre notre mail, nos noms et prénoms, voire notre adresse. Nos données ont une valeur… Lisez l’article :
Ce que valent nos adresses quand nous signons une pétition

Décimales – Binaires – C’est simple

conversion binaires décimalesCela ne s’adresse pas aux informaticiens dont on peut supposer que cela n’a plus de secret pour eux. Certains me diront qu’il existe des sites pour faire les conversions…

Soit ! Le but est de comprendre et savoir le faire, d’autant plus que c’est très simple.

Prenons un chiffre binaire « 1 101 101 » que l’on souhaite convertir en un chiffre décimal. Commençons par écrire le chiffre binaire de façon verticale et inversée (le dernier chiffre en haut). On ajoute le signe multiplier « X » et en face, de haut vers le bas on met 2 puissance 0, puis deux puissance 1, puissance 2 et ainsi de suite jusqu’en bas.

On fait la multiplication. Reste plus qu’à additionner tous ces chiffre et on obtient sa valeur en décimales. Exemple ci-dessous :

1 = 1 X 2⁰ =     1
0 = 0 X 2¹ =     0
1 = 1 X 2² =     4
1 = 1 X 2³ =     8
0 = 0 X 2⁴ =     0
1 = 1 X 2⁵ =    32
1 = 1 X 2⁶ =    64
  ________________
Total          109

Maintenant faisons le travail inverse, convertir 315 en binaire. Deux solutions…

Solution 1 :
Chercher la plus grande puissance de 2 contenue dans 315 (2⁸ = 256, 2⁹ = 512) 2⁹ est trop grand, on prend donc 2⁸ la différence est de 59 (voir plus bas pour les puissances 2)
Donc 315 = 2⁸ + 59
La plus grande puissance (pgp) contenue dans 59 est 2⁵ (32) reste 27
315 = 2⁸ + 2⁵ + 27
La pgp contenue dans 27 est 2⁴ (16) reste 11
315 = 2⁸ + 2⁵ + 2⁴ + 11
La pgp contenue dans 11 est  2³ (8) reste 3
315 = 2⁸ + 2⁵ + 2⁴ + 2³ + 3
La pgp contenue dans 3 est 2¹ (2) reste 1 qui est égale 2⁰
315 = 2⁸ + 2⁵ + 2⁴ + 2³ + 2¹ + 2⁰
La transcription ce fait comme ci-dessous, les puissances absentes comptent pour 0

2⁸  2⁷  2⁶  2⁵  2⁴  2³  2²  2¹  2⁰
__________________________________
1   0   0   1   1   1   0   1   1

Soit : 100 111 011

Solution 2 :
Il suffit de diviser le nombre par 2, puis son résultat par 2 et ainsi de suite jusqu’à la dernière division.

conversion décimales binairesIl suffit de reprendre les chiffres dans le sens de la flèche ce qui fait 100 111 011

Puissances de 2 :

2¹           2
2²           4
2³           8
2⁴          16
2⁵          32
2⁶          64
2⁷         128
2⁸         256
2⁹         512
2¹⁰       1024
2¹¹       2048
2¹²       4096
2¹³       8192
2¹⁴      16384
2¹⁵      32768
2¹⁶      65536
2¹⁷     131072
2¹⁸     262144
2¹⁹     524288
2²⁰    1048576
2²¹    2097152
2²²    4194304

Je passe sur Firefox Nightly

firefo nightly -Sima78Il fut un temps où j’utilisais de nombreux logiciels, voire, des distributions en version bêta, ou en cours d’évolution, et puis… Avec le temps, par commodité et mauvaises habitudes, je suis passé qu’aux versions stables.

Il faut dire « je dois me trouver des excuses » qu’au boulot, j’ai besoin de stable, à la maison, sur le pc familiale, j’ai pas envie que Mme Sima m’appelle si un message d’erreur s’affiche… Mais sur mon portable et autres PC, je n’est pas d’excuse.

J’ai lu l’appel relayé par Genma dans son billet « Pourquoi j’utilise Firefox nightly ?« , qui renvoie vers « Passez à Nightly avec Pascal Chevrel, pour l’avenir de Firefox« … Là, déjà convaincu, j’ai lu « À propos de Nightly« , puis j’ai téléchargé Firefox Nigthly.
Finalement, ça fonctionne très bien!

Je pense que c’est important de participer, même modestement, au développement des applications et distributions, d’autant plus, que de nombreuses applications et distributions dites « beta, testing, en développement, unstable, etc. » sont moins bugger que certaines applications qui dites « stables »… J’ai de très mauvais souvenirs avec certaines applications « dites » stables dédiées sur le montage vidéo et très bugguées. À contrario, d’autres dites « beta » fonctionnent très bien. Pour exemple, j’ai utilisé très longtemps les versions « testing » de la distribution Debian sans soucis…

Image ci-dessous avec Firefox Nightly, vous remarquerez que j’utilise comme moteur de recherche SearX qui est mon moteur de prédilection avec Qwant

Navigateur Firefox Nightly Sima78

Purism crée une tablette avec Linux mis au point pour la confidentialité

purism-02.png

« La confidentialité n’agit pas sur ce que tu essaies de cacher, elle agit sur ce que tu as besoin de protéger ». Ainsi commence la vidéo promotionnelle de la dernière invention de Purism (Librem), une tablette créée pour protéger notre vie informatique, et éliminer le contrôle des corporations. Elle est déjà proposée à travers une page de crowdfunding.

Lien vers la vidéo.

Mais ce n’est pas tout ! Il faut lire la suite…

Remplis de logiciels libres et compatibles avec n’importe quelle distribution GNU/Linux, cette tablette convertible en ordinateur portable (un « 2 en 1 ») est proposée en deux modèles : Purism Librem 10 et Purism Librem 11.

Dans les deux cas PureOSs 3.0 est utilisé comme système d’exploitation. Il s’agit d’un fork de Debian développé par les contributeurs de Librem et mis au point pour la confidentialité et sans « blobs » dans le kernel (ce n’est pas le cas du BIOS où l’intégration de Coreboot leur donne plus de travail). Cette tablette est proposée avec le bureau GNOME Shell .

Bien que si nous souhaitons approfondir la sécurité informatique, peut-être que la meilleure option soit d’installer QubesOS, un système d’exploitation déjà certifié dans d’autres produits de la compagnie (le Librem portatif 13) et qui fait usage de la virtualisation pour créer des zones isolées de sécurité, avec les applications qui cohabitent ensemble dans un bureau commun.

Article sur lequel j’ai pompé en partieSource.

purism-competitive-matrix-full.jpg

Installation de QGIS (Quantum GIS) sur Ubuntu

QGIS - Quantum GIS

J’ai décidé d’installer QGIS 2.14 (GIS système d’information géographique) sur une Ubuntu, plus par curiosité que par besoin. Si site officiel est riche en documentations, je ne les trouve pas toujours très explicites. Une fois installé, j’ai pu commencer à tester en m’appuyant sur la documentation… Sauf lorsque j’ai voulu importer une cartographie avec des extensions propriétaires, la documentation ne m’a été d’aucune aide. Les options proposées dans l’aide n’y sont pas, où peut-être sont-elles ailleurs, où peut-être la documentation est basée sur version antérieure sans tenir compte de l’évolution…

Bref, voici comment installer le plus simplement possible QGIS 2.14 sur une Ubuntu. Si je persévère, je ferai, peut-être, d’autres tuto sur le sujet ! Cliquer sur lire la suite pour le tutoriel.

Pour commencer, on rajoute les dépôts dans le fichier sources.list

sudo nano /etc/apt/sources.list

Ajoutez les lignes suivantes, bien entendu, si vous avez une Ubuntu « Precise », vous remplacez « trusty » par « precise »

## Pour QGIS
deb http://qgis.org/ubuntugis trusty main
deb-src http://qgis.org/ubuntugis trusty main
deb http://ppa.launchpad.net/ubuntugis/ubuntugis-unstable/ubuntu trusty main

Puis pour mettre à jour les infos sur les paquets.

sudo apt-get update

Si vous avez le message d’erreur ci-dessous, pas de panique…

W: Erreur de GPG : http://qgis.org trusty InRelease : Les signatures suivantes n'ont pas pu être vérifiées car la clé publique n'est pas disponible : NO_PUBKEY 3FF5FFCAD71472C4

Il suffit de vérifier la clé publique dont le n° ici est 3FF5FFCAD71472C4.

sudo wget -O - http://qgis.org/downloads/qgis-2015.gpg.key | gpg --import

Vous devez optenir quelque chose ressemble à ce qui est ci-dessous.

--2016-05-16 11:02:43--  http://qgis.org/downloads/qgis-2015.gpg.key
Résolution de qgis.org (qgis.org)... 104.27.138.220, 104.27.139.220
Connexion vers qgis.org (qgis.org)|104.27.138.220|:80... connecté.
requête HTTP transmise, en attente de la réponse... 200 OK
Taille : 1890 (1,8K) [application/pgp-keys]
Enregistre : «STDOUT»
100%[==================================================================================================>] 1 890       --.-K/s   ds 0s 
2016-05-16 11:02:44 (91,5 MB/s) - envoi vers sortie standard [1890/1890]
gpg: clef D71472C4 : « QGIS Archive Automatic Signing Key (2015) <qgis-developer@lists.osgeo.org> » n'est pas modifiée
gpg: Quantité totale traitée : 1
gpg:              non modifiées : 1

On importe la clé

gpg --export --armor 3FF5FFCAD71472C4 | sudo apt-key add -
sudo apt-get update

Bon, moi j’avais un soucis avec les deux clés…

W: Erreur de GPG : http://ppa.launchpad.net trusty InRelease : Les signatures suivantes n'ont pas pu être vérifiées car la clé publique n'est pas disponible : NO_PUBKEY 089EBE08314DF160

Comme plus haut, on ajoute la clé comme suit.

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 089EBE08314DF160
sudo apt-get update

QGIS est installé, il n’y a plus qu’à en explorer les nombreuses possibilités. Pour cela, QGIS propose un jeu de données « Alaska » inclut toutes les données SIG qui sont utilisées comme exemple et comme aperçus dans le guide de l’utilisateur, mais aussi une petite base de données GRASS ainsi que des exercices…

Vie privée – mot de passe – justice (suite)

Doit-on donner notre mot de passePrivés de vie privée ?

Un lycéen de Dijon est placé sous le status de témoin assisté dans une affaire de fausses alertes à la bombe visant divers lycées parisiens. Son crime ? C’est une bonne question.

De quoi est-il accusé ?

« refus de remettre aux autorités judiciaires ou de mettre en œuvre la convention secrète de déchiffrement d’un moyen de cryptologie », c’est le motif retenu contre ce jeune homme de 18 ans par le juge, malgré l’avis du ministère public, qui avait ouvert une information judiciaire pour d’autres chefs d’accusation, en demandant de plus lourdes sanctions.

Lire la suite de ce billet sur le site de PixelLibre.net « Privés de vie privée ?« 

Cet article lie à l’actualité de ce que j’écrivais dans mon billet « Vie privée – mot de passe – justice » en mai 2015. Cet article fait référence à « Art. 434-15-2 du Code pénal« , je mentionnais dans mon billet que La Cour européenne des droits de l’homme reconnaît à toute personne le droit de ne pas participer à sa propre incrimination et donc le droit de ne pas donner ses propres mots de passe.

Je ne suis pas juriste et je ne sais donc pas si cela peut service de recours et si oui, comment… Mais déjà l’intitulé porte à débat « le droit de ne pas participer à sa propre incrimination« , ce qui sous-entend dans les termes, que si l’on ne donne pas les mots de passe de déchiffrement, nous exerçons notre droit à « ne pas participer à sa propre incrimination« , mais si en plus, on est innocent?… Le fait d’exercer ce droit, signifierait-il que nous sommes incriminables?
Il y a matière à débattre.

Mais c’est quoi un logicile libre?

C'est quoi un logiciel libre

Vous voulez tout savoir, ou presque sur ce qu’est le logiciel libre, l’open source, la différence entre le logiciel libre et le logiciel propriétaire…

Pourquoi mieux vaut-il utiliser du logiciel libre, plutôt que des logiciels propriétaires?…

Sima78 vous invite à sa présentation (j’aime bien parler de moi à la troisième personne, ça donne un certain prestige, que je n’ai pas :)) le samedi 6 février 2015 à 14h dans l’école Victor Hugo de Fontenay le Fleury (78).

Pour en savoir plus suivez le lien ci-dessous :Pour en savoir plus suivez le lien ci-dessous:

Cinq bonnes raisons de privilégier les logiciels libres