Planet Libre

Framablog : Framalibre : l’annuaire du libre renaît entre vos mains

Notre projet historique, l’annuaire de Framasoft, renaît de ses cendres… pour ouvrir encore plus grandes les portes du Libre.

Au commencement était l’annuaire…

OK : pas besoin de prendre un ton biblique non plus, mais il est vrai que c’est avec une émotion toute particulière qu’on vous présente cette refonte complète du tout premier projet, celui qui a fait naître Framasoft ; et qui, mine de rien, a défini notre identité.

Il y a 16 ans, en 2001, une prof de FRAnçais (Caroline d’Atabekian) et un prof de MAths (Alexis Kauffmann) commencent à s’échanger des listes de logiciels gratuits pour les salles d’ordinateurs de leurs établissements dont le budget informatique était grevé par les licences Windows.

Le projet plaît, et il évolue. On se rend compte que derrière certains logiciels gratuits, il existe des licences libres, des contrats garants de nos libertés et du respect de certaines valeurs. Alors on découvre le monde du Logiciel Libre, fait d’entraide (pour adapter les serveurs au succès croissant du site) et de collaboration (à côté des fiches pour les logiciels fleurissent les tutoriels d’utilisation).

Il faut attendre 2004 pour que ce premier site devienne un annuaire collaboratif de logiciels libres tel qu’on le connaît aujourd’hui. Un outil pratique, fait par et pour des « non-pros » de l’informatique, conçu comme une porte d’entrée vers ce monde numérique où les êtres humains et leurs libertés sont respectés. On y vient pour un besoin logiciel précis, on y retourne pour la chaleur de la communauté, et on se fait délicieusement contaminer par les valeurs du Libre.

« Framalibre – le reboot ? Euh… Hum… Oui-oui ! C’est pour… demain ! »

Cela fait bien cinq ans que nous savons l’annuaire vieillissant, avec des notices trop détaillées qui deviennent vite obsolètes. Cinq ans que d’atermoiements en hésitations (« Faut-il vraiment repartir de zéro ? », se demandait-on avec des yeux de Chat Potté), d’avancées en marches à reculons, nous nous rendons compte qu’il n’est plus adapté ni au Libre (qui désormais déborde largement du champ des seuls logiciels), ni à nos usages (avec des contributions passant par un wiki, un forum, puis un Spip… c’est pas lourd du tout du tout -_-).

Sauf que voilà : on a toujours une urgence qui vient de tomber (entraînée par un de nos serveurs), un nouveau Framabook ou une nouvelle Framakey sur le feu, un Internet à Dégoogliser… Et puis il est difficile d’admettre que le SPIP qui a vaillamment permis notre annuaire (et donc notre page d’accueil) depuis tant d’années n’était plus l’outil le mieux adapté et le plus accessible pour cet usage précis…

Il nous a donc fallu cinq ans (et de multiples abandons/blocages/coup de fouet/reprises du projet) pour vous proposer cette refonte, cette remise à zéro de l’annuaire. Ne vous inquiétez pas, si vous aimez l’ancien, nous en avons gardé une archive juste à cette adresse archive.framalibre.org ;) ! Cinq ans, et le travail conjoint de nombreux membres, salariés, mais surtout partenaires : Smile, dans un premier temps, pour leurs templates de visualisation… Mais surtout Makina Corpus, entreprise toulousaine bien connue des visiteurs du Capitole du Libre, qui nous a fait un design et une intégration Drupal aux petits oignons et nous a accompagnés (avec Framatophe tenant vaillamment le cap) sur les derniers efforts que nous ne savions pas fournir nous-mêmes.

Grâce à ce mécénat de compétences, voici un projet mené à terme !

Voici Framalibre, 2e du nom…

Bon, c’est pas tout ça, mais est-ce que ça valait le coup d’attendre ? Que va-t-on trouver en guise d’annuaire Framasoft ?

Déjà on revient à quelque chose de simple. Les notices sont claires, concises, et vous mènent au plus vite vers le lien officiel de la ressource que vous consultez. Finies les notices hyper-détaillées et trop longues qui deviennent désuètes à la moindre mise à jour ;) ! L’idée principale, c’est de trouver aisément et comme on le souhaite : on peut rechercher une notice selon sa catégorie, utiliser le système de tags, ou même se laisser porter par les suggestions, recommandations, les notices mises en avant, etc.

C’est aussi un annuaire qui facilite la collaboration. Avec un simple compte, vous pouvez voter pour les ressources que vous préférez (et donc les mettre en valeur), corriger ou mettre à jour une notice, en créer une nouvelle dans l’annuaire, ou plus simplement écrire une chronique (un tutoriel, un témoignage, ou bien votre avis sur telle ressource…). Cet annuaire, c’est vous qui le ferez, nous avons donc fait en sorte qu’il vous soit le plus ouvert possible. Et, avec Drupal, gageons que nous pourrons, ensuite, ouvrir les données engrangées via un système d’API (ceci est un souhait, pas une promesse — mais ce serait cool, hein ?)…

Enfin et surtout, Framalibre se veut un annuaire du Libre, en général, et non pas seulement du Logiciel Libre. Car nos vies numériques ne sont plus uniquement « virtuelles », et les libertés que nous défendons et nourrissons vont au-delà du logiciel.

Et voilà le visage du nouvel annuaire !

Désormais, vous pouvez rentrer dans l’annuaire et y trouver :

  • des outils informatifs, catégorie S’informer,
  • des logiciels, du matériel et des jeux de données libres, dans S’équiper,
  • des livres, albums, films et autres œuvres culturelles dans Se cultiver,
  • et même les entreprises, collectifs, associations et autres initiatives du monde du Libre dans pour bien S’entourer.

Depuis 2004, le monde du Libre a bien grandi… Il était temps d’en agrandir une des portes d’entrée ;).

Ouvrons les portes et nos communautés !

Un annuaire, c’est un bouquet de fleurs capiteuses… Attiré·e par la douce odeur de THE information pratique que l’on vient y chercher, on s’enivre du nectar des autres notices à disposition, on se perd dans la navigation et finit par découvrir un nouveau champ de possibilités et de libertés.

Nous ne comptons plus le nombre de fois, sur le stand d’une convention libriste, où nous rencontrons un·e convaincu·e, arborant fièrement le logo de sa « distro GNUnux » favorite sur son T-Shirt, et qui s’écrie plein·e de nostalgie :

« Oooh ! Framasoft ! Je me souviens, c’est sur votre site, là, que j’ai découvert mes premiers logiciels libres ! »

Nous, à l’écoute de telles exclamations (allégorie.)

C’est à nous, désormais, de préparer le terrain pour que les futures générations de libristes tombent dans la marmite de potion magique ! D’ailleurs, un énorme merci aux personnes qui ont saisi les 400 premières notices avant la mise en production <3 ! Oh et au fait : vos comptes beta.framalibre.org fonctionnent désormais sur framalibre.org ;)

C’est à nous, donc, de contribuer à cet annuaire et de le nourrir de ce qui nous intéresse et que l’on souhaite partager. Que ce soit des notices, des chroniques, des corrections ou de simples votes : ce sont toutes vos contributions qui pourront faire le succès de cette renaissance…

Une équipe de modération est déjà en place (mais aura vite besoin de nouveaux bras) et des ateliers de contribution commencent à s’organiser (dont un sur Toulouse, le 22 mars, avec le GULL Toulibre). En cette période où le Libre est en fête, faites-vous une joie de mettre en valeur des œuvres (logicielles, culturelles, matérielles, etc.) libres, parce que vous y contribuez ou en bénéficiez, ou simplement parce que vous les aimez et souhaitez les partager avec le plus grand nombre.

Nous, on va écraser une petite larmichette d’émotion sur cette page qui se tourne, et se remettre au boulot !

Allez, une nouvelle marmite pour tonton Richard !

Pour aller plus loin :

Gravatar de Framablog
Original post of Framablog.Votez pour ce billet sur Planet Libre.

Articles similaires

genma : curl script |sh

En lisant un article sur le fait qu'il est désormais possible de faire l'installation de Docker sur Raspberry pi je vois que l'installation passer par la commande

curl -sSL get.docker.com | sh

Tout d'abord que fait cette commande ?

La commande curl va lancer le programme Curl qui va se connecter au site get.docker.com, récupérer un script d'installation et le passer (le symbole |) en argument au shell (la commande sh). On est face à une commande shell assez classique (enchainement de deux programmes).

En quoi est-ce une mauvaise pratique ?

La commande s'exécute avec les droits de l'utilisateur courant. Par droits, il y a la possibilité de modifier ou supprimer tout un ensemble de fichiers par exemple. On n'a aucun moment le contenu du script qui est récupéré sur le site Internet de Docker et qui est lancé. Si ce script contient une commande du type

rm -rf *

parmi tous les lignes du script, cette commande sera executée et va supprimer de façon recursive les fichiers. Il faudrait donc pouvoir avoir le contenu du script pour pouvoir le vérifier...

Déléguer et avoir confiance

Par solution de facilité, on exécute une commande simple pour installer un programme. Mais on n'a aucune garantie sur son contenu. Certes c'est le cas pour beaucoup de choses, on délègue la confiance sur les développeurs de sa distribution Linux favorite (Debian, Ubuntu...), sur les auteurs de logiciels libres ou ceux qui y contribuent et qui vont relire et corriger le code source (d'où la nécessité d'un code ouvert et libre)... On accorde sa confiance tous les jours et plusieurs fois par jour.

Mais ce n'est pas une raison pour faire trop confiance (et pour ne pas apprendre, ne pas chercher à comprendre quelques bases.

Une analogie ?

Si vous lisez sur un forum que le fait de supprimer les freins de votre voiture lui permettra de consommer moins d'essence, car il y aura moins de frottement et donc moins de ralentissement, vous le faîtes ? Non. Et ce, même si l'explication scientifique associée vous semble tout à fait plausible, vous mettrez en doute cette affirmation et la démonstration associée. Pourquoi ? Parce que vous avez un minimum de connaissances, vous cherchez à comprendre et à apprendre (en passant le permis). Et si vous avez un doute, vous demandez au spécialiste qu'est le garagiste. Si vous faites la modification vous même, vous le faîtes en connaissance de cause (en tout cas je l'espère).

En informatique, c'est pareil. Toute demande de mot de passe pour faire une tâche d'administration implique devrait impliquer qu'on est compris et que l'on sait ce que l'on fait. Ou bien que l'on ait demandé à quelqu'un qui s'y connait et en qui on est confiance (on en revient à la confiance), le garagiste de l'informatique. Voici un exemple de la nécessité de comprendre mais surtout d'apprendre un minimum l'informatique (et plus particulièrement l'hygiène numérique). On ne doit pas devenir un garagiste (pour reprendre l'analogie avec la voiture) sauf si c'est quelque chose dont on a envie, la nécessité ou le temps mais comprendre qu'il y a des choses à apprendre, des bases, que rien n'est magique, c'est essentiel de mon point de vue.

Gravatar de genma
Original post of genma.Votez pour ce billet sur Planet Libre.

Tuxicoman : LineageOS dépasse les 1 millions d’installations

LineageOS, la distribution Android libre qui a repris le flambeau de Cyanogen a dépassé les 1 million d’installations !

Vous pouvez trouver les détails sur la page web des statistiques du projet.

Personnellement, j’en suis très content. Le projet publie des nouvelles assez fréquemment. Le logiciel est stable. Les correctifs de sécurités sont là. Le logiciel fonctionne au poil sur des vieux appareils. Bref si vous être contre l’obsolescence des produits, foncez.

Related Posts:

Gravatar de Tuxicoman
Original post of Tuxicoman.Votez pour ce billet sur Planet Libre.

Articles similaires

Okki : Sortie d’un thème Arc pour Thunderbird

Après Firefox, VLC ou Telegram, c’est désormais au tour du célèbre client de messagerie Thunderbird d’avoir droit à son thème Arc.

Lightning, le module agenda de Thunderbird, avec le thème Arc

Le thème est toujours au statut d’alpha et peut comporter quelques problèmes. Si vous souhaitez tout de même l’essayer, il vous faudra télécharger le fichier .xpi sur le site officiel puis, dans Thunderbird, vous rendre dans le menu Outils, Modules complémentaires, cliquer sur la roue crantée puis choisir Installer un module depuis un fichier…

Gravatar de Okki
Original post of Okki.Votez pour ce billet sur Planet Libre.

Articles similaires

alterlibriste : Nouvelles de la podcastosphère libriste francophone - Printemps 2017

Un petit bilan trimestriel des évolutions dans le monde des podcasts touchant de plus ou moins près au monde du libre francophone et à l’évolution du monde numérique :

  • cet automne, je décrivais l’apparition d’une nouvelle formule intitulé le Pod404 dans le podcast de l’April en plus des actualités hebdomadaires. Les deux ont maintenant fusionné en un nouveau podcast intitulé Décryptactualité. Ça se résume en une présentation rapide des articles de la revue de presse puis un débat pour parler plus en profondeur d’un sujet lié à l’actualité. C’est toujours sur le même flux et ça donne un nouveau souffle au podcast en sortant de la description d’articles pour aller vers le débat d’idées comme cela avait été initié dans le Pod404.
  • Le Ubuntu Podcast est toujours aussi erratique, pour peu, on dirait qu’ils suivent la politique de Debian à sortir quand c’est prêt, mais c’est probablement plus quand ils ont le temps, ce qui n’est pas le cas depuis janvier.
  • Alpinux qui n’a publié qu’un épisode depuis le début de l’année devrait revenir plus régulièrement. Disposant maintenant d’un studio, le son est désormais au top.
  • Un petit nouveau est né : L’apéro des papas manchots que je suis attentivement depuis le début. Après 5 émissions plutôt hétérogènes, le podcast commence à se forger une identité ; une critique à venir très prochainement.
  • Un autre podcast que j’ai découvert récemment (qui aura aussi droit à sa chronique), pas directement lié au libre mais issu d’un fablab donc préoccupé par les thématiques des nouvelles technologies vues sous l’angle de l’ouverture et de la bidouillabilité : Les Souris ne mordent pas
  • Une chronique sur France Culture dont j’avais loupé l’apparition en septembre : Le numérique et nous. Encore une fois, ce n’est pas libriste mais ça décrit l’évolution du monde numérique avec un prisme que j’aime bien, le dernier épisode est consacré à Aaron Swartz.

Toutes ses références sont à retrouver sur ma page statique mise à jour aussi régulièrement que possible.
Comme je l’ai déjà dit et le répète, certains contenus ne sont pas directement liés au libre (mais tous sont sur le numérique) et tout ce qui existe n’est pas répertorié notamment ce qui a spécifiquement trait au développement ou à la sécurité.
Étant donné que je suis moi aussi un papa manchot, je m’intéresse plus particulièrement aux usages domestiques des outils libres et numériques, ainsi que leur évolution dans la société.

Gravatar de alterlibriste
Original post of alterlibriste.Votez pour ce billet sur Planet Libre.

Nizar Kerkeni : Webinar – Ubuntu pour tous

L’enregistrement vidéo de mon intervention pour présenter la distribution Ubuntu dans le cadre du MOOC “L’essentiel pour maîtriser Linux“.

Ci dessous les liens pour télécharger la présentation au format PDF et ODP.

fichier pdfLibrofficeImpressLogo

share this

Gravatar de Nizar Kerkeni
Original post of Nizar Kerkeni.Votez pour ce billet sur Planet Libre.

Articles similaires

Journal du hacker : Liens intéressants Journal du hacker semaine #11

Pour la 11ème semaine de 2017, voici 10 liens intéressants que vous avez peut-être ratés, relayés par le Journal du hacker, votre source d’informations pour le Logiciel Libre francophone !

Pour ne plus rater aucun article de la communauté francophone, voici :

De plus le site web du Journal du hacker est « adaptatif (responsive) ». N’hésitez pas à le consulter depuis votre smartphone ou votre tablette !

Le Journal du hacker fonctionne de manière collaborative, grâce à la participation de ses membres. Rejoignez-nous pour proposer vos contenus à partager avec la communauté du Logiciel Libre francophone et faire connaître vos projets !

Et vous ? Qu’avez-vous pensé de ces articles ? N’hésitez pas à réagir directement dans les commentaires de l’article sur le Journal du hacker ou bien dans les commentaires de ce billet :)

Gravatar de Journal du hacker
Original post of Journal du hacker.Votez pour ce billet sur Planet Libre.

Articles similaires

Philippe Scoffoni : Ouvrir un terminal distant dans Nemo

J’ai dû changer de machine tout récemment, et cela passe souvent par une remise en question de son environnement de travail. C’est à ce moment là qu’on se rend compte de tous ces petits « trucs » que l’on avait ajouté de ci de là pour optimiser son travail au quotidien.

Dans mon cas, je viens de passer d’une Ubuntu 14.04 + XFCE  à une Ubuntu 16.04 + Cinnamon. J’apprécie ce bureau je dois bien le dire. Mais là n’est pas le sujet de ce billet.

J’utilisais Nautilus avec XFCE. Sous Cinnamon, nous avons par défaut son clone dénommé Nemo. Je travaille souvent sur des machines virtuelles distantes, auxquelles j’accède en ssh via un VPN. J’utilise le gestionnaire de connexions Gigolo pour initialiser les connexions. L’authentification se fait par clé, ce qui me fournit une connexion « instantanée ».

Avec Nautilus, j’utilisais la fonction « Ouvrir dans un terminal » pour lancer un terminal ssh sur la machine virtuelle et exécuter des commandes. En passant sous Nemo, cette fonction existe, mais elle n’ouvre pas une session ssh distante, mais une session locale.

Il est heureusement possible d’ajouter des scripts et des actions dans Nemo. Mes recherches m’ont conduites à cette page qui indique la marche à suivre. Bien que indiqué pour Ubuntu 13, la solution proposée reste valide.

Il convient de placer dans le dossier .local/share/nemo/actions deux fichiers contenant, pour l’un la description du menu à ajouter et pour l’autre un script en Python se chargeant de l’appel du terminal.

Ajout du menu via le fichier remote_terminal.nemo_action

[Nemo Action] Name=Ouvrir un terminal distant Comment=Open current folder in remote terminal Name[de]=Im entfernten Terminal öffnen Comment[de]=Aktuellen Ordner im entfernten Terminal öffnen Exec= Icon-Name=terminal Selection=none Extensions=dir; Dependencies=ssh;

Le script python remote_terminal.py

#!/usr/bin/env python2 # -*- coding: utf-8 -*- import sys import subprocess path = sys.argv[1] if '/sftp:' in path: sftp = path.split('/sftp:', 1)[1] settings = {} options, sep, settings['path'] = sftp.partition('/') for opt in options.split(','): name, sep, value = opt.partition('=') settings[name] = value cmd = ['terminator', '-e', 'ssh %(user)s@%(host)s -t "cd /%(path)s && bash --login"' % settings] else: cmd = ['terminator', '--working-directory', path] subprocess.call(cmd)

J’ai juste changé le terminal appelé en remplaçant gnome-terminal par terminator que je préfère à ce dernier. Le résultat en vidéo.



Réagir à cet article

Article original écrit par Philippe Scoffoni le 19/03/2017. | Lien direct vers cet article

Cette création est mise à disposition sous un contrat Creative Commons BY à l'exception des images qui l'illustrent (celles-ci demeurent placées sous leur mention légale d'origine).

.

Gravatar de Philippe Scoffoni
Original post of Philippe Scoffoni.Votez pour ce billet sur Planet Libre.

Articles similaires

blog-libre : Article dans la série 'Termux sur Android' : Android 6.0, mise à jour de la réinstallation rapide

Comme je le disais dans l’article précédent, je passe d’un LG G3 sous Android 5.0 Lollipop à un LG G4 (et un Samsung A5 2016 de Madame) sous Android 6.0 Marshmallow. Les problèmes n’ont pas tardé je vous aide donc à mettre le pied à l’étrier.

Réinstallation rapide de Termux

La première commande à lancer est termux-setup-storage, je vous invite fortement à lire la documentation storage de Termux. Cette commande va autoriser Termux à accéder aux fichiers/dossiers de votre téléphone, elle va également créer un dossier storage dans $HOME. Dans ce dossier vous allez avoir des liens symboliques vers certains dossiers du système : dcim (/storage/emulated/0/DCIM), downloads (/storage/emulated/0/Download), external-1 (/storage/XXXX-XXXX/Android/data/com.termux/files), shared (/storage/emulated/0), etc.

On dépose ensuite le script termux.sh dans /sdcard/Download/ (en branchant le téléphone sur le pc avec un câble USB) puis on lance les commandes suivantes.

cp /sdcard/Download/termux.sh ~/ # On copie le script dans le $HOME car on n'a pas les droits pour l'exécuter dans /sdcard/Download chmod +x termux.sh && ./termux.sh # On rend le script exécutable puis on le lance

Voici le script termux.sh légèrement amélioré.

#!/data/data/com.termux/files/usr/bin/bash # termux.sh v0.2 # # 18/03/2017 # apt update && apt upgrade apt -y install curl nano openssh python2 curl https://blog-libre.org/dl/termux_keys >> ~/.ssh/authorized_keys ssh-keygen -t ed25519 -N '' -f ~/.ssh/id_ed25519 chmod 600 ~/.ssh/authorized_keys && chmod 700 ~/.ssh echo sshd > ~/.bash_profile

Par rapport à la version précédente : 1/ Dans termux_keys je mets toutes les clés SSH publiques dont j’ai besoin (4 postes en ce qui me concerne) 2/ On génère des clés SSH en ed25519 pour notre téléphone comme ça c’est fait 3/ La commande sshd dans le fichier .bash_profile lancera automatiquement le démon SSH dès que vous lancerez l’application Termux vous permettant ainsi de vous connecter sur le téléphone en SSH

Il y a une dernière opération que je vous invite à faire ln -s /storage/XXXX-XXXX ~/storage/external_SD, cela vous permettra d’avoir un accès direct à votre SD Card externe dans le dossier $HOME/storage. XXXX-XXXX est différent suivant les téléphones. Pour le retrouver placez-vous dans $HOME/storage et lancez ls -l, vous allez avoir l’information sur external-1.

Tcho !

Gravatar de blog-libre
Original post of blog-libre.Votez pour ce billet sur Planet Libre.

Articles similaires

G3L : 2017, l'année de GNU/Linux sur le desktop ?

Quelques articles en ligne en ce début d'année montrent qu'il est devenu facile d'utiliser GNU/Linux sur sa machine personnelle.

Peut-être enfin l'année de GNU/Linux sur la machine de bureau ?

Par exemple, Numérama cite 5 distributions qui pourraient vous convertir si vous en avez marre de Windows ou MacOS.

Le site ITnation parle d'Adopter le Desktop Linux.

Si vous n'aimez pas le comportement par défaut de GNOME-Shell, il est possible de le ramener vers un style plus habituel. Les adeptes du terminal eux pourront écrire des extensions GNOME-Shell avec bash (ou python ou autre chose) grâce à Argos, qui permet des trucs bien sympa.

Nous vous invitons également à lire ce blog décrivant le passage de MacOS à Ubuntu.

Sinon, pour les amateurs de Debian, la frise chronologique des versions a été mise à jour.

Gravatar de G3L
Original post of G3L.Votez pour ce billet sur Planet Libre.

Articles similaires

Okki : Faire passer GNOME pour macOS

GNOME 3.22 façon macOS

On l’a vu précédemment, il suffit de deux ou trois extensions pour transformer votre GNOME en quelque chose de plus proche de Windows, avec panel au bas de l’écran et autre menu principal. Et comme nous allons le voir, il n’est guère plus difficile de le faire ressembler à macOS ;-)

Mais avant de commencer, petit rappel. Les dossiers commençant par un point sont des dossiers cachés. Pour pouvoir les afficher, vous pouvez soit passer par l’icône hamburger du gestionnaire de fichiers pour activer l’option Afficher les fichiers cachés, soit utiliser le raccourci clavier Ctrl+h. Si un dossier est manquant, vous pouvez sans problème le créer, mais n’oubliez pas le point en début de nom.

1. Installation du thème Gnome-OSX

Le thème contient des variantes claires et sombres pour le shell, ainsi qu’un thème de fenêtres avec ou sans transparence. Une fois les archives téléchargées, décompressez-les dans le dossier .themes de votre dossier personnel.

Il vous suffit ensuite de vous rendre dans l’Outil de personnalisation de GNOME, de sélectionner l’onglet Apparence puis de choisir Gnome-OSX en tant que thèmes GTK+ et Shell.

Selon votre distribution, si le thème du Shell n’est pas accessible, il vous faudra activer ou installer l’extension User Themes.

2. Installation du thème d’icônes La Capitaine

La Capitaine est un thème d’icônes s’inspirant du style très coloré de macOS. Une fois téléchargée, il vous suffit de décompresser l’archive dans le dossier .icons de votre dossier personnel.

Là encore, il vous suffit de passer par l’Outil de personnalisation de GNOME, de sélectionner l’onglet Apparence puis de choisir le thème d’icônes La Capitaine.

3. Ajouter un dock

Il existe plusieurs docks qui s’intègrent bien à GNOME, comme l’extension Dash to Dock ou l’application Plank.

Dash to Dock ne ressemblant pas particulièrement à celui de macOS par défaut, il vous suffit pour cela d’accéder à ses préférences, de vous rendre dans l’onglet Apparence, de choisir le blanc comme couleur du dock puis de diminuer son opacité.

Dans le cas de Plank, il existe des thèmes tout prêts, tels que Gnosemite, qui le feront aussitôt ressembler à celui de macOS. Une fois le thème téléchargé, il vous suffit de décompresser l’archive dans le dossier .local/share/plank/themes de votre dossier personnel.

4. Changer de police

Sur macOS, Apple utilise la police San Franciso, qui fait partie de la famille Lucida Grande. Malheureusement, cette police étant non libre, celle qui s’en rapprochera le plus sera Garuda.

Là encore, il faudra passer par l’Outil de personnalisation de GNOME, sélectionner l’onglet Polices, puis choisir Garuda Bold pour les titres de fenêtres, ainsi que Garuda Regular pour le reste de l’interface.

Bien évidemment, cette partie est facultative et vous êtes libre d’utiliser la police de votre choix.

5. Passer les boutons de fenêtres à gauche

Il vous faut cette fois-ci lancer l’Éditeur dconf, vous rendre ensuite dans /org/gnome/desktop/wm/preferences/button-layout puis changer la valeur par close,minimize,maximize:

Pour annuler la modification, il vous suffira d’activer l’option Utiliser la valeur par défaut.

Et voilà, grâce à ce statut social nouvellement acquis, vous pourrez vous aussi pavoiser auprès de vos amis :p

Gravatar de Okki
Original post of Okki.Votez pour ce billet sur Planet Libre.

Articles similaires

Okki : Configurer votre environnement de façon plus traditionnelle

GNOME 3.22 avec l’extension Dash to Panel et des icônes sur le bureau

Dès que l’on entend parler de GNOME sur les forums, vous pouvez être certain qu’une ou plusieurs personnes vont intervenir pour signaler ô combien elles n’aiment pas son ergonomie, préférant de loin d’autres environnements plus traditionnels, disposant par exemple d’une barre des tâches et d’un menu principal.

S’ensuit ensuite une série d’arguments de mauvaise foi, comme quoi si ça ne correspond pas par défaut exactement à ce que l’on recherche et qu’il faut installer une palanquée d’extensions pour obtenir le résultat attendu (avec en général un rappel comme quoi c’était bien présent du temps de GNOME 2), c’est qu’il s’agit fatalement d’un mauvais environnement. Ou, du moins, qu’il ne répond absolument pas à leur besoin.

Maintenant, si de modifier son environnement était réellement long et fastidieux, ça pourrait se comprendre. Mais ce n’est pas le cas. En comptant large, vous verrez qu’il faut moins de cinq minutes pour obtenir un environnement plus traditionnel, et que ça n’a absolument rien de compliqué. Aucune ligne de commande, aucune édition de fichier de configuration ou autre action obscure. C’est réellement à la portée du premier venu.

Mais avant de commencer, on pourrait se poser la question de savoir pourquoi les équipes de GNOME ont fait de tels choix. L’argument qui revient le plus souvent, c’est qu’ils recherchaient un environnement simple, comportant le moins de distractions possible, pour que l’on puisse se concentrer sur ce qui compte. Personnellement, je perçois également GNOME comme une feuille blanche qui me laisse le configurer à loisir.

Chaque personne étant différente, elle possédera une vision toute aussi différente de ce que sera le bureau idéal. Certaines personnes adorent disposer de nombreuses icônes sur leur bureau, quand d’autres ont horreur de ça. Certaines personnes souhaitent disposer d’un panel au bas de l’écran, quand d’autres le préfèrent en haut. Certains préfèrent encore disposer d’un dock plutôt que d’un panel… quand d’autres font le choix de n’avoir ni l’un ni l’autre.

À partir de là, à l’inverse d’un Windows ou d’un macOS, d’un MATE ou d’un Cinnamon qui vous imposeraient leurs choix, GNOME vous laisse la possibilité d’obtenir facilement et rapidement ce qui vous convient le mieux.

Nous allons donc aujourd’hui le configurer à la manière d’un Windows ou d’un KDE Plasma, avec panel au bas de l’écran et autre menu principal, puis dans un prochain article, nous verrons qu’il est finalement tout aussi simple d’obtenir un clone de macOS ;-)

1. Dash to Panel

Prévisualisation des fenêtres quand on passe le curseur au dessus d’une icône

Cette extension va ajouter un panel au bas de l’écran, vous permettant ainsi de pouvoir basculer rapidement d’une application à l’autre ou d’accéder rapidement à vos applications favorites. Bien évidemment, l’extension dispose de nombreuses options, concernant aussi bien son style : emplacement du panel, en bas ou en haut de l’écran, la taille des icônes ou du panel, le choix des indicateurs pour distinguer les applications en cours d’utilisation (avec ou sans le focus), l’emplacement de l’horloge, la présence ou non de boutons pour voir le bureau ou accéder au mode activités, et bien d’autres encore.

2. TopIcons Plus

Cette extension permet de déplacer les icônes de notifications (Steam, Skype, votre client BitTorrent…) du tiroir de messagerie vers le panel.

3. Gno-Menu

Gno-Menu en mode liste, suivi d’une partie de ses préférences

Il existe de nombreuses extensions GNOME offrant un menu principal, mais celle-ci semble plutôt complète : accès rapide à vos applications (fréquemment utilisées, favorites, par catégories…), dossiers et autres signets. Une série de boutons permettent également un accès rapide à la mise en veille, l’extinction, le verrouillage de la session, le changement d’utilisateur. L’extension dispose bien évidemment de nombreuses options de personnalisation : panneau normal ou compact, la catégorie à afficher par défaut, le choix d’une vue en liste ou en grille, la taille des icônes, le choix du raccourci clavier… jusqu’au nom que vous préférez voir affiché pour votre menu.

Le menu respecte bien évidemment votre thème. Il s’agit sur la capture du thème Arc dans sa version claire.

4. Icônes sur le bureau

L’outil de personnalisation de GNOME

Il vous suffit de lancer l’Outil de personnalisation de GNOME, de sélectionner l’onglet Bureau, puis d’activer d’option Icônes sur le bureau. Vous pouvez également choisir quelles icônes afficher : dossier personnel, serveurs réseau, corbeille, volumes montés.

5. Boutons pour minimiser / maximiser les fenêtres

Toujours dans l’Outil de personnalisation de GNOME, onglet Fenêtres, option Boutons de la barre de titre, vous pouvez activer indépendamment les boutons minimiser et maximiser.

Et voilà, c’est fini. Comme convenu, d’activer trois extensions et trois options dans l’outil de personnalisation n’aura pas pris plus de cinq minutes.

Pour ceux qui souhaiteraient aller encore plus loin, il existe également une extension pour désactiver le coin actif (No Topleft Hot Corner), pour choisir l’emplacement des notifications (Panel OSD), obtenir un panel transparent (Dynamic Panel Transparency) ou changer de bureau virtuel à l’aide de la molette de la souris (Top Panel Workspace Scroll).

Gravatar de Okki
Original post of Okki.Votez pour ce billet sur Planet Libre.

Articles similaires

blog-libre : Article dans la série 'Termux sur Android' : Des news

Voilà une éternité que je n’ai pas parlé de Termux. Ce ne sera pas vraiment un article technique mais plutôt une sorte de carnet de bord.

Nouveaux téléphones

Termux est mon application coup de coeur sur Android, il est clair que je vais continuer à en parler pendant quelques temps. Elle est cependant loin d’être parfaite, j’ai rencontré de nombreux petits soucis et évidemment des limitations. Afin de faire des articles de qualité j’avais besoin de pousser plus loin mes tests notamment en ayant davantage de téléphones pour tester.

Ça tombe bien j’ai passé Madame d’un iPhone à un Samsung Galaxy A5 2016 et je suis passé d’un LG G3 à un LG G4 (Anniversaire, Noël, toussa). Je me retrouve donc avec 3 téléphones pour tester Termux et ça me met en joie ! Actuellement les 3 téléphones ont Termux installé dessus et je vais donc pouvoir tester plus en profondeur l’application.

Concernant le Samsung j’ai déjà pu constater des problèmes avec le clavier officiel, je n’ai pas encore testé avec Hacker’s Keyboard. Je prévois de passer le LG G3 sur LineageOS afin de tester les ROM disponibles et je prévois de rooter le LG G4. Je vais donc avoir des environnements différents intéressants à tester.

News de Termux et Termux:API

Voici quelques nouveautés/découvertes concernant Termux et Termux:API :

  • J’ai présenté la commande xdg-open, elle est maintenant prise en charge par Termux \\o/ Ainsi pour lancer une vidéo par exemple il suffira de taper xdg-open majolievidéo.mkv pour qu’elle soit lancée avec l’application par défaut de votre téléphone
  • Les fonctions termux-wake-lock et termux-wake-unlock font leur apparition. termux-wake-lock permet de conserver actif Termux en arrière plan par exemple pour laisser tourner une commande
  • Deux nouvelles commandes intéressantes via Termux:API, termux-wifi-connectioninfo et termux-wifi-scaninfo
  • Et enfin des packages qu’ils sont biens : privoxy, tor, torsocks, tsu (su wrapper pour Termux)
Scripts

J’avais tourné un peu autour du pot mais je n’avais jusqu’à récemment pas eu l’occasion de m’exercer sur des scripts avec Termux. J’ai repris au hasard mon script pour faire des Thumbnails sur Xubuntu en l’adaptant pour qu’il fonctionne sur Termux. Il est nécessaire d’installer les packages mpv et imagemagick. Je l’utilise ainsi bash thumbnail.sh /storage/external_SD/video1.mkv. On récupère le thumbnail dans le $HOME.

#!/data/data/com.termux/files/usr/bin/bash # thumbnail.sh v0.1 # # 07/03/2017 # for i in "$@"; do tmp_dir=$(mktemp -d -p $HOME) mpv --vo=image --vo-image-format=png --vo-image-outdir="$tmp_dir" --no-audio -sstep 20 -end -20 "$i" montage $tmp_dir/*.png -geometry 200x+0+0 $HOME/"${i##*/}".png rm -r $tmp_dir done

A noter que : 1/ Le package mpv a un bug il ne prend que le format png pour --vo-image-format, impossible de lui imposer du jpeg par exemple 2/ On effectue la plupart des opérations dans le $HOME… car ailleurs on ne peut généralement pas à cause des droits 3/ Remarquez "${i##*/}", je vous renvoie vers le Mémo Parameter Expansion

Voici une partie de la sortie de la commande termux-wifi-connectioninfo.

{ "bssid": "f2:ca:e6:cc:4c:30", "frequency_mhz": 2472, "ip": "192.168.1.30", "link_speed_mbps": 72, "ssid": "wifi_casca" }

Comme on peut le voir on peut récupérer le nom du réseau Wi-Fi entre autres. A partir de là on peut imaginer des scénarios sympas à la IFTTT : If réseau boulot then allumage/wol pcdebureau ou encore If réseau maison then envoi/termux-sms-send « Je viens de rentrer à la maison ».

Le futur

J’ai commencé à jouer avec Mosh, je compte évidemment en parler. Une fois le G3 sur LineageOS et Termux réinstallé dessus je vais le laisser un week-end au boulot dans le tiroir pour tenter de casser le mot de passe Wi-Fi (que je connais). Je voudrais voir ce que ça nécessite niveau consommation, si besoin je brancherai le téléphone sur une batterie externe type Aukey. Je compte m’en servir comme sonde et outil de pentest pour faire simple. Je vous tiens au jus ;)

Gravatar de blog-libre
Original post of blog-libre.Votez pour ce billet sur Planet Libre.

Articles similaires

Benoît Boudaud : Python: Les ensembles (sets et frozensets)

Pour une lecture plus agréable (page plus large), je vous invite à cliquer sur ce lien et à lire ce chapitre dans la rubrique consacrée au langage Python.

Aujourd’hui, nous allons aborder une notion moins connue du langage Python, à savoir les ensembles (sets et frozensets).

Définition

Un ensemble est une collection non ordonnée d’objets uniques et immuables (en profondeur). La tentative d’insertion d’un doublon n’a absolument aucun effet et ne lève même pas d’exception. En revanche, la présence d’un élément modifiable tel qu’une liste par exemple lève l’exception ci-dessous:

TypeError: unhashable type: ‘list’

Puisqu’il s’agit d’un ensemble d’objets non ordonné, un set est idéal pour effectuer un test d’appartenance et je vais vous le prouver.

On trouve deux types d’ensembles:

  • Le set qui est un objet modifiable
  • le frozenset qui est un objet immuable (le mot anglais frozen signifie gelé en français)
Déclarer un set

Il y a deux manières de déclarer un set.

  • En utilisant des accolades.
s = { "Hervé", "Jacky", "Didier", "Toufik"} print(s)

Résultat: {‘Didier’, ‘Toufik’, ‘Hervé’, ‘Jacky’}.

Notez bien qu’il s’agit d’un ensemble non ordonné ce qui explique que print() retourne les éléments dans un ordre aléatoire.

  • En transformant une liste en set grâce au constructeur set().
s2 = set(["Geneviève", "Geneviève", (1,2,3), 7.56]) print(s2)

Résultat: {7.56, ‘Geneviève’, (1, 2, 3)}

Notez que j’ai déclaré mon set avec un doublon (« Geneviève »). Comme je l’ai déjà précisé dans l’introduction, celui-ci n’est pas pris en compte et ne lève même pas d’exception. Le set est une collection d’objets uniques.

  • Il n’est pas possible de déclarer un ensemble vide avec la première méthode. Cela créé un dictionnaire.
s = {} print(type(s))

Résultat : 

  • Pour créer un ensemble vide, pas d’autre choix que d’utiliser la deuxième méthode.
s = set() print(type(s))

Résultat: 

Pourquoi le set est préférable à la liste pour effectuer un test d’appartenance?

Une liste est une séquence. Elle contient des objets indicés. Lorsqu’on fait un test d’appartenance sur une liste, cette dernière est parcourue de l’indice 0 jusqu’à l’indice de l’objet recherché. Si la liste ne contient que dix éléments, le test d’appartenance est rapide mais si la liste contient cinquante millions d’éléments, la vitesse d’exécution s’en ressent. J’ai fait une courte vidéo pour vous montrer la différence entre une liste et un set contenant cinquante millions d’éléments.

Le set étant une implémentation de table de hachage, la vitesse d’exécution d’un test d’appartenance est identique quel que soit le nombre d’éléments qu’il contient.

Voici les trois exemples de code que j’ai exécutés dans la vidéo.
  • Test d’appartenance sur les premiers éléments d’une liste
l = [i for i in range(50000000)] for i in range(2, 8): if i in l: print(i, "appartient à la liste")
  • Test d’appartenance sur les derniers éléments d’une liste
l = [i for i in range(50000000)] for i in range(49999990, 49999999): if i in l: print(i, "appartient à la liste")
  • Test d’appartenance sur des éléments présents dans un set
s = {i for i in range(50000000)} for i in range(49999990, 49999999): if i in s: print(i, "appartient au set") Aperçu de quelques méthodes associées aux sets
  • Ajouter un élément avec set.add()
s = {"Kevin", "Kilian", "Morgane"} s.add("Gustave") print(s)

Résultat: {‘Morgane’, ‘Kilian’, ‘Gustave’, ‘Kevin’}

  • Ajouter tous les éléments d’un autre set avec set.update()
s = {"Kevin", "Kilian", "Morgane"} s2 = {1, 2, 3} s.update(s2) print("s =", s) print("s2 =", s2)

s = {1, 2, 3, ‘Kilian’, ‘Kevin’, ‘Morgane’}
s2 = {1, 2, 3}

Comme vous pouvez le constater, cette méthode rajoute les éléments de l’ensemble s2 dans l’ensemble s sans pour autant vider l’ensemble s2.

  • Supprimer un élément avec set.remove() et set.discard()
s = {"Kevin", "Kilian", "Morgane", "Gustave"} s.remove("Kevin") print(s)

Résultat: {‘Kilian’, ‘Morgane’, ‘Gustave’}

Attention! Avec set.remove(), Python lève une exception si vous essayez d’enlever un élément qui n’appartient pas au set.

s = {"Kevin", "Kilian", "Morgane", "Gustave"} s.remove("Robert") print(s)

KeyError: ‘Robert’

Pour éviter cela, utiliser la méthode set.discard() qui, elle, ne lèvera pas d’exception.

s = {"Kevin", "Kilian", "Morgane", "Gustave"} s.discard("Robert") print(s)

Résultat: {‘Morgane’, ‘Gustave’, ‘Kevin’, ‘Kilian’}

  • Vider un set avec la méthode set.clear()
s = {"Kevin", "Kilian", "Morgane", "Gustave"} s.clear() print("s =", s)

Résultat: s = set()

Pour découvrir plus de méthodes associées aux sets, je vous invite à consulter la documentation officielle Python.

Aperçu de quelques opérations mathématiques associées aux sets
  • Différence entre deux sets
s = {"Kevin", "Kilian", "Morgane", "Gustave"} s2 = {"Kevin", "Gustave"} s3 = s - s2 print("s3 =", s3)

s3 = {‘Morgane’, ‘Kilian’}

  • Union de deux sets
s = {"Patrick", "Jacky"} s2 = {"R12 Gordini", "Kronenbourg"} s3 = s | s2 print("s3 =", s3)

s3 = {‘Kronenbourg’, ‘Jacky’, ‘R12 Gordini’, ‘Patrick’}

  • Intersection de deux sets
s = {"Patrick", "Jacky"} s2 = {"R12 Gordini", "Jacky"} s3 = s &amp; s2 print("s3 =", s3)

s3 = {‘Jacky’}

Les frozensets

Les sets sont des objets modifiables donc il n’est pas possible d’utiliser un set comme clé de dictionnaire. En effet, je vous rappelle que les clés de dictionnaire doivent être immuables.

Il n’est pas possible non plus de placer un set dans un autre set car comme je l’ai déjà dit au début de ce chapitre, les éléments d’un set doivent être immuables dans toute leur profondeur. Cela signifie que ce genre de code va lever une exception:

s = { {"Jacky", "Hervé"}, 1, 3} # présence d'un set print("s =", s)

TypeError: unhashable type: ‘set’

s = { 4, ([1, 2], 3)} # présence d'un tuple contenant une liste print("s =", s)

TypeError: unhashable type: ‘list’

Pour remédier à cet inconvénient, on a inventé le frozenset que l’on pourrait traduire par ensemble gelé. Les frozensets sont des sets immuables. Par conséquent, certaines méthodes telles que add() ou remove() ne peuvent pas leur être associées. En revanche, ils peuvent appartenir à un set ou bien être utilisés comme clés de dictionnaire.

  • Pour déclarer un frozenset, il n’existe pas trente-six solutions:
s = {1, 2, 3} fr_s = frozenset(s) print(type(fr_s))

Résultat:

  • Notez bien que le constructeur frozenset() fonctionne également avec un tuple ou une liste:
tup = (1, 2, 3) fr_s = frozenset(tup) print(type(fr_s)) liste = [1, 2, 3] fr_s = frozenset(liste) print(type(fr_s))

Résultat:

Comme je l’ai écrit en début de paragraphe, une fois déclaré, un frozenset peut appartenir à un set car il est devenu immuable:

liste = [1, 2, 3] fr_s = frozenset(liste) s = {fr_s, 4, 5} print("s =", s)

Résultat:  s = {5, frozenset({1, 2, 3}), 4}

Conclusion

Un set est un ensemble d’objets immuables qui est préférable à une liste lorsqu’il s’agit d’effectuer un test d’appartenance. Il existe plusieurs méthodes associées aux sets. Les frozensets sont des ensembles devenus immuables et qui peuvent donc être utilisés comme clés de dictionnaire ou bien appartenir à un set.


Gravatar de Benoît Boudaud
Original post of Benoît Boudaud.Votez pour ce billet sur Planet Libre.

Articles similaires

blog-libre : La commande xdg-open

La commande xdg-open n’est pas très connue, elle est pourtant indispensable dès qu’on commence à jouer avec la ligne de commandes dans un environnement graphique. Elle permet d’ouvrir à partir du terminal un fichier ou une URL avec l’application par défaut.

Ainsi pour accèder à Next INpact avec Firefox je vais taper ceci dans le terminal firefox https://www.nextinpact.com/. Pour accèder à Next INpact avec Chromium je vais taper chromium-browser https://www.nextinpact.com/. Si mon navigateur par défaut est Firefox alors xdg-open https://www.nextinpact.com/ ouvrira la page Next INpact avec Firefox.

Si comme moi vous vous servez de votre terminal pour lancer vos applications, je vous recommande d’utiliser la commande xdg-open pour la plupart de vos alias dans votre fichier ~/.bash_aliases. Il est plus logique d’utiliser xdg-open qui se basera sur l’application par défaut pour ouvrir fichier/URL. En effet si vous changez votre éditeur de texte par défaut par exemple vous n’aurez pas à remodifier les alias concernés par le nouvel éditeur de texte par défaut dans votre ~/.bash_aliases.

Voici une partie de mon fichier .bash_aliases.

### Raccourcis Dossiers ### alias down='xdg-open ~/Téléchargements & disown & exit' alias xub='xdg-open ~/Sync/Linux/Ubuntu/Xubuntu & disown & exit' ### Raccourcis Fichiers ### alias n137='xdg-open ~/Sync/Notes/137.txt & disown & exit' alias conf='xdg-open ~/.bash_aliases & disown & exit' alias conff='xdg-open ~/.bash_functions & disown & exit' alias todo='xdg-open ~/Sync/Todo.txt & disown & exit' ### Raccourcis Internet ### alias freebox='xdg-open http://mafreebox.freebox.fr/index.php# & disown & exit' alias rss='xdg-open http://192.168.1.50/freshrss/p/i/ & disown & exit' ### Raccourcis Programmes ### alias cr='chromium-browser --start-maximized & disown & exit' alias cri='chromium-browser --start-maximized -incognito & disown & exit' alias ff='firefox & disown & exit' alias ffi='firefox -private-window & disown & exit'

Gravatar de blog-libre
Original post of blog-libre.Votez pour ce billet sur Planet Libre.

Marty : KooZic: sortie de la v0.4.0

Bientôt 6 mois après la première version publique de KooZic, une nouvelle mouture vient de voir la jour: la v0.4.0. Un grand pas en avant avec l'arrivée d'une navigation par dossier revue et corrigée. Cela devrait (enfin !) satisfaire ceux chez qui la collection musicale n'est que partiellement ou incorrectement taggée.

KooZic a été conçu pour donner la possibilité d'accéder facilement à une collection musicale correctement taggée. C'était et cela reste toujours le point fort du logiciel, car cela permet de naviguer et rechercher très facilement par album, artiste ou genre musical, ce que d'autres font avec un support limité. Seulement voilà, si passer des heures à tagger votre collection n'est pas votre tasse de thé, le logiciel a un intérêt assez limité. Un mode de navigation par dossier a bien été introduit dans la v0.2.0, mais il n'était pas franchement ergonomique.

Navigation par dossier

Le nouveau mode de navigation suit l'idée général du logiciel, à savoir un accès clair et performant aux fonctions essentielles, quelque soit la taille de la collection musicale. Une capture d'écran vaut mieux qu'un long discours :

Le premier élément de la liste est le répertoire courant. Le second ("..") permet de revenir au répertoire parent. Ensuite, on trouve la liste des sous-répertoires, puis des pistes musicales. Il est possible d'ajouter à la liste de lecture courante toutes les pistes d'un répertoire en cliquant sur le "+". Une piste s'ajoute quant à elle avec un simple click.

Liste de lecture courante

L’interaction de la liste de lecture courante a été améliorée : un click sur la ligne permet de lancer la lecture d'un titre, il n'est plus nécessaire d'utiliser le bouton "Play". La piste mise en évidence est bien mise à jour à chaque changement de piste, et pas seulement au rafraîchissement de la page. C'est loin d'être fondamental, mais cela améliore l'expérience générale.

Mise-à-jour d'une installation existante

La nouvelle version est disponible sur le site du projet. Pas de crainte à avoir, les sources précédentes peuvent être supprimées. On extrait la nouvelle version, et on lance la mise-à-jour à partir du répertoire:

./odoo-bin -u web -d koozic --stop-after-init

Attention, c'est bien "-u web", donc légèrement différent des mises-à-jour précédentes. On peut relancer ensuite avec la commande habituelle.

Gravatar de Marty
Original post of Marty.Votez pour ce billet sur Planet Libre.

Tuxicoman : Signal, sans Google Apps

Une de mes critiques envers Signal, une application de conversation chiffrée pour Android, était qu’il nécessitait les Google Apps installées pour fonctionner.

Pour rappel, les Google Apps sont les applications non-libres de Google fournies en dehors du projet AOSP (la partie libre d’Android). Elles contiennent le Play Store, Gmail, Hangout, GoogleNow etc… (bref toutes les produits Google) et notamment Google Cloud Messaging (GCM) qui est le canal de communication choisi par les auteurs de Signal.

Petit problème, les Google Apps ont les droits root sur le téléphone, tournent en permanence avec un contrôle de Google, peuvent effacer vos données à distance et personne ne peut en lire le code source et donc savoir ce qu’elles font exactement.

Bref, j’entends l’argument d’utiliser GCM pour économiser la batterie du smartphone (canal de notification push mutualisé entre applications) mais c’est un critère secondaire par rapport à devoir accepter les conditions d’utilisation des Google Apps qui stipulent que je consens à envoyer à Google mes moindres faits et gestes.

Surtout que Google suce tellement d’infos sur le smartphone que de mon expérience, l’exécution des Google Apps nuit gravement à l’autonomie.

Et bien, Moxie, le développeur principal vient de consentir à proposer une version de Signal qui ne nécessite plus les Google Apps pour fonctionner (les communications ne passent plus par GCM si demandé) mais toujours pour compiler.

Vous pouvez maintenant télécharger l’APK de Signal sur leur site web (danger zone), sans nécessiter de compte sur Google Play Store.

J’ai testé pour vous entre 2 smartphones sous LineageOS. Les communications passent maintenant par un serveur situé chez Amazon (ip: 52.45.96.109 port: 443)

Et la visioconférence est de la partie ! Attention cependant, quand vous l’utilisez, vous communiquez aussi votre IP locale à votre correspondant (même si celui-ci se trouve à l’autre bout du monde). C’est facilement visible avec NetMonitor. Je suppose que c’est un mécanisme similaire à ce que fait webRTC pour trouver le chemin le plus direct pour établir la transmission.

Sources :
#127 Google Play signed download alternative
Commit Support for website distribution build with auto-updating APK
Commit: Support for using Signal without Play Services

Related Posts:

Gravatar de Tuxicoman
Original post of Tuxicoman.Votez pour ce billet sur Planet Libre.

Articles similaires

Thuban : Livre auto-hébergement : la suite

La prochaine -release d'OpenBSD se prépare gentiment et devrait sortir début mai 2017.
À ce propos, je souhaite maintenir la documentation sur l'auto-hébergement facile avec OpenBSD. Depuis la publication du livre au format papier, grâce aux différents retours et un peu plus de temps, j'ai corrigé plusieurs points et maintenu l'ensemble. On peut déjà noter les nouveautés suivantes (pas encore publiées) :

  • Mise à jour vers la version 6.1 d'OpenBSD avec les modifications qui auront lieu.
  • Mise en place d'une vidéosurveillance.
  • Script pour spamd pour ajouter facilement des émetteurs légitimes.
  • Installation de lecteurs de flux RSS (kriss, ttrss).
  • Mise à jour de l'exemple d'installation
  • Ajout de la gestion des entêtes avec relayd
  • Astuces diverses pour le parefeu
  • Corrections et précisions pour PostgreSQL
  • Passage de letsencrypt à acme-client
  • Support de dotclear et Drupal
  • ...

Je souhaiterais publier cette mise à jour de la documentation, et c'est le moment de parler de ce qui fâche.

La précédente campagne de financement fut un succès inespéré. Ça m'a motivé comme jamais, l'ensemble des messages reçus et les soutiens font toujours chaud au coeur.
Cependant, je reste déçus sur plusieurs points :

  • Le livre est cher à mon avis : 19,90€. C'est parce qu'il est enregistré et commandable dans les librairies, sinon, son prix pourrait être bien plus faible. Cependant, puisqu'il existe une version en ligne gratuite, ça ne semble choquer que moi.
  • La publication avec enregistrement en librairie augmentait le prix de la publication. C'est autant d'argent qui aurait pu être reversée à OpenBSD. D'ailleurs, les commandes en librairies sont quasi-inexistantes, donc inutiles.
  • Ulule c'est bien mignon, mais ils reçoivent une commission non négligeable. Encore des sous qui auraient pu aller ailleurs.

Vous l'aurez compris, je souhaite pouvoir redistribuer les fonds rassemblés selon l'objectif de départ.

Par ailleurs, je reste très attaché au format papier, peut-être à tord. J'aimerais continuer à le publier.
D'autre part, je reçois des suggestions de personnes très compétentes pour améliorer le document. C'est plus délicat que je ne le pensais, car j'ai très envie qu'il reste accessible à un maximum de lecteurs.
J'ai donc pris la décision suivante :

  • Les sources seront désormais accessibles à n'importe quel contributeur via un dépôt git.
  • Si vous voulez aider à la publication papier, vous pouvez faire des dons via liberapay. Ce n'est pas moins pratique qu'Ulule, mais c'est libre et ils ne prennent pas de commission. Cet appel aux dons prendra fin lors de la publication d'OpenBSD 6.1 (disons, le jour de mon anniversaire).
  • Vous pourrez aussi donner aux autres contributeurs qui apparaîtront sur le dépôt git si vous préférez.

À vous de jouer :)

Gravatar de Thuban
Original post of Thuban.Votez pour ce billet sur Planet Libre.

Articles similaires

ephase : Wifi à la demande avec le vénérable Linksys WRT54G

Dans le cadre de mon travail, il m'a été demandé de mettre en place pour un centre d'animation un petit réseau wifi afin que les adhérents puissent se connecter à Internet : deux ordinateurs fixe sous Debian et un point d'accès Wifi. J'ai donc recyclé une vieille unité centrale pour en faire un petit routeur proxy filtrant avec ipfire et un vénérable Linksys WRT54G qui traînait.

Les postes sous Debian sont en accès libre toute la journée mais les animateurs voulaient que le wifi soit activé certains jours de 14h à 18h et éventuellement à la demande. Le WRT54G sert à la fois de switch réseau et de point d'accès Wifi. Bien entendu il y a OpenWRT d'installé dessus avec le SSH d'activé (son adresse est 10.0.0.250).

Mise en place d'un script pour l'activation-désactivation du Wifi

La première étape est la création d'un script shell pour activer désactiver l'interface wifi du Linksys. Connectons nous à notre Linksys

ssh root@10.0.0.250

Créons le fichier contenant le script, rendons-le exécutable et ouvrons-le avec vi.

touch /sbin/wtoggle.sh chmod + x /sbin/wtoggle.sh vi /sbin/wtoggle.sh

Il suffit maintenant de coller les commandes ci-dessous.

#!/bin/sh device="wl0" case $1 in "disable") wifi down $device echo 0 > /proc/diag/led/ses_white echo 1 > /proc/diag/led/ses_orange echo 0 > /proc/diag/led/wlan uci set wireless.$device.disabled=1 uci commit wireless logger "Wifi disabled" ;; "enable") uci set wireless.$device.disabled=0 uci commit wireless wifi up $device echo 1 > /proc/diag/led/ses_white echo 0 > /proc/diag/led/ses_orange echo 2 > /proc/diag/led/wlan logger "Wifi enabled" ;; esac

Le script fait trois choses :

  1. Activer / Désactiver le point d'accès Wifi
  2. Allumer la diode SES en blanc / orange en fonction de l'état de la connexion
  3. Activer / désactiver la diode WLAN

L'utilisation est simple : wtoggle enable pour activer le wifi et wtoggle disable pour le désactiver.

Créer la tache cron pour activer le wifi à certaines heures

Il suffit d'ajouter les deux lignes suivantes au cron pour programmer la mise en route du Wifi avec la commande crontab -e

00 14 * * 1-6 wtoggle enable 00 18 * * 1-6 wtoggle disable

Le réseau Wifi est donc allumé du lundi au samedi de 14h à 18h. Mais sur Openwrt le service cron n'est pas activé1. Il faut donc le faire avec les commandes2

/etc/init.d/cron start /etc/init.d/cron enable Activation / désactivation à la demande du Wifi

Il est parfois nécessaire d'allumer ou d'éteindre le wifi manuellement, pour ça nous allons détourner le bouton SES du routeur (vous savez celui avec le logo cisco dessus). si le Wifi est désactivé, une pression sur ce bouton l'activera et une autre pression le désactivera à nouveau.

Créons un fichiers bouttons dans le répertoire /etc/hotswap.d/button/ qui va contenir les commandes à effectuer lors de la pression d'un boutons sur le Linksys

mkdir -p /etc/hotswap.d/button/ vi /etc/hotswap.d/button/buttons

Voici le contenu de ce fichier

#!/bin/sh device="wl0" if [ "$BUTTON" = "ses" ] && [ "$ACTION" = "pressed" ] ; then case $(uci get wireless.$device.disabled) in 0) /sbin/wtoggle.sh disable ;; 1) /sbin/wtoggle.sh enable ;; esac fi

Une fois enregistré, le tout devrait fonctionner : le bouton SES pour allumer /éteindre le wifi et la tâche cron pour le faire automatiquement en fonction des heures d'ouvertures. Le voyant du logo Cisco servant aux animateurs à visualiser rapidement si le réseau Wifi est actif ou non.

  1. voir sur la documentation d'openwrt 

  2. voir sur la documentation d'openwrt 

Gravatar de ephase
Original post of ephase.Votez pour ce billet sur Planet Libre.

Articles similaires

Thuban : Listes d'IP à ignorer [updated]

Sur le même modèle que bsdly.net , je publie désormais des listes d'IP connues pour être nuisibles ou émettrices de spam.

La page contenant les listes se trouve ici : Vilaines IP

Vous y trouverez des IP à blacklister avec le parefeu générées régulièrement avec le projet BlockZone. PengouinPdt fait la même chose ici. :)

De même, vous trouverez en complément de la traplist une liste des IPs qui m'ont envoyé du spam. Comme j'utilise déjà d'autres listes très complètes, elle est pour l'instant très maigre, mais elle sera mise à jour automatiquement.

J'utilise des tâche cron pour périodiquement copier les listes d'IP filtrées.
Pour repérer le spam, il me suffit de filtrer l'état de spamd. Lorsqu'un émetteur de spam est piégé, on le repère facilement avec le flag 'TRAPPED'.
J'adore spamd. En laissant trainer une fausse adresse blackhole@yeuxdelibad.net , je sais que ce sont des bots qui écrivent dessus. Outre le fait qu'ils sont piégés pendant un certain temps et ralentis, je retiens maintenant leur IP pour que tout le monde en profite. Nanananère :P

(n'écrivez pas à l'adresse ci-dessus XD)

Voici le script que j'utilise :

#!/bin/sh # Auteur : thuban # licence : MIT # Keep in /var/thuban.traplist # IPs that used to be trapped. # # Use in in spamd.conf with : ### # #all:\\ # :nixspam:myblack #myblack:\\ # :black:\\ # :msg="Your are spam !":\\ # :method=file:\\ # :file=/var/thuban.traplist ### BLACKFILE=/var/thuban.traplist touch $BLACKFILE /usr/sbin/spamdb | grep "TRAPPED|" | cut -d'|' -f2 >> $BLACKFILE # keep uniq /usr/bin/sort -u $BLACKFILE -o $BLACKFILE # reload spamd /usr/libexec/spamd-setup exit 0

enjoy ;)

EDIT : j'ai ajouté une nouvelle liste qui contient les IP de bruteforceurs détectés avec vilain.

Gravatar de Thuban
Original post of Thuban.Votez pour ce billet sur Planet Libre.

Articles similaires

Pages