PROJET AUTOBLOG


Planet-Libre

source: Planet-Libre

⇐ retour index

Association GOALL : Le numérique pour transformer l’État

samedi 20 septembre 2014 à 09:02

Le gouvernement continue la modernisation des services de l’État grâce à un ensemble d’actions dans le domaine du numérique.

Dans les choix pertinents, il y a :

Pour plus de détails :

Partagez cet article : TwitterFacebookGoogle PlusLinkedInViadeo FRTumblrPinterestBloggerEmailPDFPrintAdd to favoritesGoogle

The post Le numérique pour transformer l’État appeared first on Le blog de l'association GOALL.

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

Goffi : Salut à Toi v0.5.1

vendredi 19 septembre 2014 à 00:22

Salut à vous,
nous avons le plaisir de vous annoncer la version 0.5.1 de Salut à Toi, petite mise à jour de la version 0.5 dont je vous mets l'annonce ci-dessous. Nous avançons bien, et même si nous avons un peu de retard sur nos prévisions (nous avions prévue une version grand publique pour la rentrée, nous pensons maintenant plus à la fin d'année), les choses vont dans le bon sens.

Vous trouverez également un récit de notre passage à Berlin pour le « XMPP Summit », une rencontre entre développeurs XMPP, sur DLFP: https://linuxfr.org/users/goffi/journaux/retour-de-berlin


Nous sommes heureux de vous annoncer la sortie de Salut à Toi, version 0.5. Nous nous sommes cette fois-ci concentrés sur la sécurité et le ré-usinage de certains mécanismes qui vont faciliter l'ajout de futures fonctionnalités et la maintenance.

Pour rappel SàT est un client XMPP multi-usages et multi-interfaces principalement développé en Python. Les interfaces les plus avancées sont Primitivus (console) et Libervia (web), Jp (ligne de commande) facilite les tâches d'administration, Wix (bureau/WxWidgets) est vouée à disparaître et sera remplacée par Bellaciao (bureau/Qt). Est également prévue une interface pour Android.

overview_libervia

Sécurité

Un nouveau paramètre a été ajouté pour définir un mot de passe pour le profil SàT, qui est stocké haché dans la base de données. Sa version claire permet de sécuriser les autres mots de passes, dont celui du compte XMPP, qui sont eux chiffrés dans la base. Un schéma détaille comment tout ça fonctionne sur le wiki du projet : chiffrement.

Libervia supporte désormais le HTTPS. L'administrateur peut choisir quel(s) service(s) activer : HTTP, HTTPS ou les deux.

Vous pouvez utiliser OTR pour chiffrer de bout en bout vos discussions instantanées. L'interface en console Primitivus utilise la librairie python potr tandis que Libervia s'appuie sur l'implémentation javascript otr.js. Ainsi, vos discussions chiffrées sur Libervia sont vraiment sécurisées puisque le chiffrement est effectuée directement par votre navigateur ; il faut par contre prévoir des ralentissements, surtout au lancement d'OTR.

http<em />unsecure</em>warning

stdui<em />profile</em>manager<em>primitivus</em>1

stdui<em />profile</em>manager<em>primitivus</em>2

Autres nouveautés

On notera :

bookmarks<em />manager</em>primivitus

manage<em />account</em>delete_blogposts

static_blog

Ré-usinage

Il est important, pour un projet comme SàT (multi-interfaces), de veiller à remanier le code lorsqu'on lui trouve des défauts de conception ou bien qu'on imagine un nouveau mécanisme. Ont subis entre autre un ré-usinage pour davantage de souplesse ou de généricité :

Ces modifications n’intéressent pas directement l'utilisateur mais elles nous facilitent la vie, et peut-être celles des personnes qui souhaiteraient plus tard nous filer un coup de main ! Il s'agit aussi de premiers pas pour amorcer le développement de l'interface pour téléphones portables et de nouvelles fonctionnalités.

Par ailleurs, nous misons toujours davantage sur XMLUI, le micro-format interne de description d'interface utilisateur que nous utilisons pour commander les frontaux depuis le backend. Désormais, les actions de l'utilisateur sont mieux intégrés et nous comptons améliorer le système, toujours davantage à chaque version.

stdui<em />contact</em>list_primitivus

announcement_admin

adhoc_administration

Mais encore...

Le backend est maintenant distribué en tant que plugin pour Twisted et se lance par défaut en mode démon, tout comme Libervia. La séquence d'initialisation backend / frontaux a été améliorée, ceci corrige les problèmes qui pouvaient survenir lorsque SàT et Libervia étaient lancés depuis un script à peu d'intervalle. De plus, nous avons rajouté un fichier .service pour D-Bus, ce qui permet de lancer automatiquement le backend lorsqu'un frontal en a besoin.

Les chemins par défaut des fichiers utilisateurs respectent désormais les recommandations XDG : fichier de configuration dans ~/.config/sat, base de donnée et le reste dans ~/.local/share/sat. L'ancien fichier de configuration sera récupéré et éventuellement mis à jour.

Si l'adresse et le port du serveur XMPP sont laissés vides dans les paramètres de connexion, les bonnes valeurs peuvent être récupérées depuis un enregistrement DNS SRV qui correspond à la partie « domaine » du JID.

Un nouveau système de log fait son apparition, il est pleinement configurable et gère les couleurs, le formatage, le filtrage et le type de sortie (fichiers, mémoire...).

logging

logging_primitivus

Aspect administratif

Nous avons déposés en préfecture les papiers pour la création de l'association « Salut à Toi »... ça a été accepté du premier coup, ce qui nous a agréablement surpris car le mode de fonctionnement de l'association est un peu particulier : direction collégiale, pas de président / secrétaire / trésorier mais deux co-administrateurs. Pour rappel, derrière ce projet il y a une volonté d'implication qui est incompatible avec l’exercice d'une autre activité professionnelle. Cela se traduit, pour les développeurs, par la nécessité de trouver une source de financement. Nous allons donc commencer à tester / adapter notre idée de modèle économique et ceci, bien entendu, dans le respect des engagements éthiques et moraux qui sont définis par notre contrat social.

Les adhésions à l'association sont notre source de financement privilégié ! Nous avons défini dans le règlement intérieur plusieurs montant de cotisation annuelle entre 10 et 100 euros, libre à chacun de choisir ce qu'il veut. Pour les personnes qui souhaiteraient nous soutenir sans pouvoir ou vouloir verser de contribution financière, c'est aussi possible : l'adhésion sans cotisation est prévue par le règlement intérieur. Comme ça, plus d'excuse ;-)

Il va par contre falloir attendre encore un peu avant que tout cela soit faisable par internet. Nous allons ouvrir un compte en banque pour l'association et il faudra ensuite préparer un formulaire en ligne pour gérer les adhésions.

Rencontres

Nous étions présents cette année aux Journées du Logiciel Libre à Lyon, Pas Sage en Seine à Paris et aux Rencontres Mondiales du Logiciel Libre à Montpellier (voir les liens pour les vidéos des conférences). Nous avons pu rencontrer ou revoir quelques personnes grâce aux stands, et aux conférences de Goffi. Merci aux organisateurs de ces événements ainsi qu'à Reflets, qui a écrit un article sur SàT suite à la sortie de la dernière version, ce qui a permis de faire connaitre le projet à un plus large public.

Nous allons participer mercredi et jeudi prochain au « XMPP Summit » et à son hackaton qui se déroulent à Berlin. Serons notamment présents deux autres développeurs XMPP avec qui nous sommes en contact, dont Edhelas de Movim, et ensemble nous espérons pouvoir peser davantage pour faire standardiser de nouvelles extensions (notamment autour de Publish-Subscribe et pour le blogage) et encourager leurs implémentations.

Le samedi 27 septembre entre 14h et 17h30, Goffi participera à une émission de la radio « Ici et maintenant » enregistrée à Paris sur le thème de l'auto-hébergement. Il y a aura plusieurs autres invités dont deux développeurs de Jappix.

Nous souhaitons aussi organiser des rencontres au travers de l'association, au moins une fois par an sous forme d'assemblée générale ordinaire, et peut-être davantage. Le lieu et la date n'ont pas encore été discuté.

A noter aussi la création récente d'une liste de diffusion « users » pour les utilisateurs de SàT, qui vient compléter le salon de discussion et la liste de diffusion « dev ».

Et après ?

Nous souhaitons transférer nos propres blogs sur SàT. La version 0.6 se concentrera donc sur le blogage (qui dans SàT est basé sur un système de permissions fines pour n'écrire qu'aux personnes de votre choix), le stockage d'images et l'implémentation des tags. Il s'agit de fonctionnalités essentielles et peut-être des derniers grands travaux avant la publication de la première version grand public, qui a pris un peu de retard et devrait être estampillée 0.7 ou 0.8.

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

Vincent Gay : TouchpadToggle : Gestion du touchpad

jeudi 18 septembre 2014 à 23:14

Le touchpad, je ne m'en sers que quand je ne peux pas faire autrement, c'est-à-dire quand je n'ai pas de souris. Par contre quand il est actif il me gène plus qu'autre chose et l'activité des mains sur le clavier provoque bien des erreurs. Il y a bien une touche de fonction prévue à cet usage sur mon ordinateur mais elle ne fonctionne pas nativement dans mon environnement de travail (Archlinux Openbox). Aussi je l'avais tout simplement (et paresseusement) désactivé en mettant dans mon autostart la première commande trouvée sur le web :
$ /usr/bin/synclient TouchpadOff=1 &

Curieusement cela n'affecte que le déplacement du pointeur, mais pas l'activité des boutons. ClickPad=0 résolvait partiellement le problème (le simple clic, mais pas le double) mais la recherche commençait à devenir pénible et je sentais bien que si je voulais une solution pérenne il me fallait reprendre le problème à la base. En l’occurrence la base c'est xorg (tant que Wayland n'aura pas définitivement remplacé xorg), et ça tombe bien, chez xorg ils ont commis un petit outil en ligne de commande pour gérer les périphériques d'entrée : xinput (que vous trouverez dans le paquet xorg-xinput de toutes les bonnes distributions).

Voici donc ma démarche et le petit script qui en résulte (voir à la fin de l'article). À adapter en fonction des besoins et du matériel.

Les objectifs :

Vérifier les dépendances

avant toute chose vérifier que xinput est disponible, sinon ce n'est pas la peine d'aller plus loin.

if ! command -v xinput >/dev/null; then
    notify-send
--icon=dialog-error -t 7000 $Titre "Dépendance xorg-xinput non trouvée" 2>/tmp/touchpadError
     exit 1
fi

Pour bénéficier des notifications il faut que libnotify soit installé (voir ci-dessous) mais le message d'erreur éventuel sera enregistré dans /tmp

Prise en main de xinput

la commande xinput sans paramètre liste les périphériques détectés. Voici ce que cela donne chez moi :

[vincent@Astor ~]$ xinput
⎡ Virtual core pointer                            id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                  id=4    [slave  pointer  (2)]
⎜   ↳ Logitech USB Receiver                       id=10    [slave  pointer  (2)]
⎜   ↳ Logitech USB Receiver                       id=11    [slave  pointer  (2)]
⎜   ↳ ETPS/2 Elantech Touchpad                    id=15    [slave  pointer  (2)]
⎣ Virtual core keyboard                           id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard                 id=5    [slave  keyboard (3)]
    ↳ Power Button                                id=6    [slave  keyboard (3)]
    ↳ Video Bus                                   id=7    [slave  keyboard (3)]
    ↳ Video Bus                                   id=8    [slave  keyboard (3)]
    ↳ Sleep Button                                id=9    [slave  keyboard (3)]
    ↳ USB2.0 HD UVC WebCam                        id=12    [slave  keyboard (3)]
    ↳ Asus WMI hotkeys                            id=13    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard                id=14    [slave  keyboard (3)]

Les renseignements qui nous intéressent sont le nom et l'identifiant. Ici on peut voir mon touchpad (ETPS/2 Elantech Touchpad, id=15) et ma souris (Logitech USB Receiver, id=10 et 11).

Pour aller plus loin une lecture de man s'impose. Les commande pour activer et désactiver un périphérique sont :

$ xinput enable identifiant
$ xinput disable identifiant

Arf... et évidement l'identifiant peut changer d'un boot à l'autre. Il faudra donc le lire. Quelque chose comme

DevID=$(xinput | grep "$NomTouchpad" | cut -d"=" -f2 | cut -d $'\\x09' -f1)

ou $NomTouchpad contient le nom du périphérique (ici ETPS/2 Elantech Touchpad)

Évidement si l'on ne trouve pas de touchpad (désactivé dans le BIOS ?) on s’arrêtera là :

if [[ -z $DevID ]]; then
    notify-send
--icon=dialog-info -t 5000 $Titre "Touchpad non trouvé"
    exit
0
fi

Pour savoir l'état d'un périphérique (actif ou nom) la commande est

$ xinput list-props identifiant

Le résultat donne ceci (c'est la 2ème ligne qui nous intéresse) :

$ xinput list-props 15
Device 'ETPS/2 Elantech Touchpad':
    Device Enabled (135):    0
    Coordinate Transformation Matrix (137):    1.000000, 0.000000...etc.

ici la ligne "Device Enabled (135) : 0" nous indique que le touchpad n'est pas actif. Pour isoler la variable on peut faire quelque chose comme ça :

Enabled=$(xinput list-props $DevID | grep Enabled | tail -c2)

Il suffit donc de tester cette variable pour connaître la commande à lancer. Voilà pour le fonctionnement en bascule.

Automatiser la désactivation au démarrage si une souris est détectée

Autant pour la détection du touchpad on peut estimer que le matériel n'évoluera pas pendant la durée de vie de l'ordinateur, autant on peut considérer que changer de souris, ne serait-ce qu’occasionnellement, ça doit pouvoir s'envisager. Donc repérer le périphérique par son nom ne semble pas une bonne idée.

En revanche si l'on observe la liste issue de la commande xinput ci-dessus on voit que la rubrique Virtual Core Pointer ne contient d'autre matériel que le touchpad et la souris. Donc si l'on ne retient que les lignes contenant le mot "pointeur" et ne contenant pas le mot "Virtual", et qu'il y en a au moins 2, ce serait bien le diable s'il n'y avait pas une souris la dedans. Il y a d'autres solutions possibles, notamment lsusb ou lshw, mais outre que cela créerait une dépendance supplémentaire, je n'ai pas trouvé de formulation aussi simple.

Pour savoir si le script est appelé au démarrage on recherchera un paramètre d'appel que l'on aura placé sur la ligne de commande. Et si oui on ne le poursuivra que dans la mesure ou on supposera l'existence d'une souris.

if [[ $1 == "autostart" ]]; then
     if (( $(xinput | grep pointer | grep -vc Virtual) < 2 )); then exit 0; fi
fi

Si le touchpad a été désactivé par erreur un simple appel de la touche de fonction associé le rétablira.

En matière d'autostart la solution la plus standard me semble la création d'un fichier desktop dans $XDG_CONFIG_HOME/autostart/ (généralement ~/.config/autostart). Ça devrait ressembler à ça  :

[Desktop Entry]
Name=TouchpadToggle
GenericName=Touchpad Toggle
Comment=Activation désactivation du touchpad
Exec=touchpadtoggle autostart
Terminal=false
Type=Application
Categories=System;
StartupNotify=false

À noter le paramètre autostart passé sur la ligne de commande et évoqué plus haut pour distinguer l'appel initial d'un appel par la touche de fonction.

Gestion des notifications

Bon, ce n'est pas essentiel, mais tant qu'à faire... La dépendance à installer est libnotify, qui est également dans toutes les distributions. La commande est

$ notify-send [-i icon] [-t millisecondes] [titre] message

Les icônes seront nommées selon les spécification de la freedesktop organisation. Le rendu pourra être différent d'un environnement à l'autre et je ne l'ai testé que sous OpenBox et KDE, j'espère que ça marche partout.

Association à une touche de fonction

Bien sûr il est aisé d'utiliser les raccourcis clavier de l'environnement de bureau que l'on utilise, mais puisque l'on recherche une solution qui marche partout on préférera Xbindkeys. Ça marche avec toutes les touches de fonction et c'est indépendant des environnement de bureau. Après installation (paquet disponible dans toutes les distributions) pensez immédiatement à créer un fichier de configuration vide à la racine de votre répertoire personnel sans quoi vous auriez un message d'erreur à la première utilisation.

$ touch ~/.xbindkeysrc

Ensuite il faut définir la touche à utiliser. Dans mon cas fn→F9

$ xbindkeys -k

Cela provoque l'ouverture d'une petite fenêtre blanche et l'invite à choisir une clef ou une action souris. À la suite de quoi le résultat s'affichera dans le terminal sous cette forme :

You can use one of the two lines after "NoCommand"
in $HOME/.xbindkeysrc to bind a key.
"(Scheme function)"
m:0x10 + c:199
Mod2 + XF86TouchpadToggle

Plus clairement cela nous convie à éditer le fichier de config (~/.xbindkeysrc) et à saisir successivement la commande à exécuter et la clef associée, soit sous forme de couple modificateur / N° de clef (ici m:0x10 + c:199), soit sous forme de nom symbolique (Mod2 + XF86TouchpadToggle). Dans mon cas l'une des deux formules suivante :

# Activation / désactivation du touchpad
"touchpadtoggle"
m:0x10 + c:199

ou encore

# Activation / désactivation du touchpad
"touchpadtoggle"
Mod2 + XF86TouchpadToggle

enfin n'oubliez pas de rajouter xbindkeys avant la ligne qui démarre votre gestionnaire de fenêtre dans votre ~/.xinitrc

Récapitulatif

Si la solution vous intéresse :
  1. Installez si ce n'est déjà fait xorg-xinput, xbindkey et libnotyfy.
  2. Copiez le script ci-dessous dans un répertoire figurant dans votre $PATH (/usr/local/bin semble approprié), nommez le touchpadtoggle et rendez le exécutable (chmod +x /usr/local/bin/touchpadtoggle)
  3. Exécutez xinput et repérez la ligne correspondant à votre touchpad. Personnalisez le script en modifiant le contenu de la variable NomTouchpad
  4. Créez un touchpadtoggle.desktop dans votre répertoire ~/.config.autostart avec les données ci-dessus si vous souhaitez une désactivation automatique à l'ouverture de votre session.
  5. Créez un .xbindkeysrc vide dans votre Home et rajoutez xbindkeys dans votre ~/.xinitrc
  6. Lancez la commande $ xbindkeys -k et récupérer le code de la touche que vous voulez associer au script puis éditez votre .xbindkeysrc en conséquence.

Voilà, j'espère que je n'ai rien oublié, chez moi ça marche impeccablement. Dans tous les cas je serais heureux d'avoir votre retour.

Le script

#! /bin/bash 
######################################################
## TouchpadToggle                                   ##
## Gestion du touchpad avec xinput                  ##
##                                                  ##
## copyleft vgay at vintherine dot org              ##
## version 0.2 du 20140918                          ##
##                                                  ##
## dépendance obligatoire : xorg-xinput             ##
## dépendance optionelle libnotify                  ##
## et xbindkey pour associer ce script à une touche ##
######################################################

### Personnalisation -> mettez ici le nom de votre touchpad tel que trouvé avec la commande xinput.
NomTouchpad="ETPS/2 Elantech Touchpad"
### Début du script

IFS=
$'\\n'
if
! command -v xinput >/dev/null; then notify-send --icon=dialog-error -t 7000 $Titre "Dépendance xorg-xinput non trouvée" 2>/tmp/touchpadError exit 1 fi
Cde[0]=
"xinput enable " Cde[1]="xinput disable " Msg[0]="Touchpad désactivé" Msg[1]="Touchpad activé" Titre="Gestion du touchpad :"
DevID=$(
xinput | grep "$NomTouchpad" | cut -d"=" -f2 | cut -d $'\\x09' -f1) if [[ -z $DevID ]]; then notify-send --icon=dialog-information -t 5000 $Titre "Touchpad non trouvé" exit 0 fi
Enabled=$(
xinput list-props $DevID | grep Enabled | tail -c2)
if [[
$1 == "autostart" ]]; then if (( $(xinput | grep pointer | grep -vc Virtual) < 2 )); then exit 0; fi fi
Message=$(
eval ${Cde[$Enabled]}$DevID 2>&1) Enabled=$(xinput list-props $DevID | grep Enabled | tail -c2) if [[ -z $Message ]]; then notify-send --icon=dialog-information -t 5000 $Titre ${Msg[$Enabled]} else notify-send --icon=dialog-error -t 7000 $Titre $Message fi

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

Nizar Kerkeni : Software Freedom Day Tunisia – Appel à contribution

jeudi 18 septembre 2014 à 22:42

SFD_TN_Banner

L’association pour la Culture numérique Libre – CLibre organisera l’édition 2014 du Software Freedom Day Tunisia, #SFD2014TN, le dimanche 19 octobre 2014 au Palais des Sciences de Monastir.

L’association CLibre s’occupera de l’organisation de cette journée et toute aide de la communauté sera la bienvenue.

Ceci est une invitation à toutes les communautés, les clubs, les associations, les activistes, etc… du Libre en Tunisie pour participer et enrichir cette journée.

Pour assurer une coordination optimale avec nous merci de nous communiquer, via ce formulaire d’inscription, la personne qui s’occupera de la coordination de votre coté.

Pour ceux qui veulent sponsoriser cette journée : Dossier de sponsoring

Merci de bien vouloir relayer cet appel dans votre entourage.

Tweet

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

Articles similaires

La vache libre : Ozon OS (Hydrogen) Alpha testing – Une distribution un peu spéciale basée sur GNOME et Fedora

jeudi 18 septembre 2014 à 13:27

atom-os_1

Le monde des distributions GNU/Linux est une immense jungle, où se côtoient le pire et le meilleur. Statistiquement d’ailleurs, il est plus facile de tomber sur le pire que sur le meilleur et ce n’est pas le Fred qui va me contredire ;). Vous avez d’un côté les distributions mères (Debian, Arch Linux, Red Hat etc) proposant une base solide, mais qui ne sont pas toujours faciles à prendre en main ou à maintenir. Vous avez ensuite les dérivés de premier plan (Manjaro, Ubuntu, Fedora etc), qui s’appuient sur les distributions mères et qui fournissent également une base solide, mais qui sont généralement plus faciles à utiliser par le grand public. Celles-ci peuvent se décliner en plusieurs versions qui généralement, sont de qualité équivalente. Vous avez enfin les sous-distributions, découlant des dérivés et qui en dehors de quelques exceptions telles que Linux Mint par exemple, sont souvent de belles usines à gaz.

Ceci dit tout n’est pas bon à jeter dans le monde des dérivés de second plan et nous pouvons trouver de temps à autre des projets intéressants (du moins sur le papier), comme Ozon OS. Il s’agit d’une distribution s’appuyant sur Fedora 20 et bâtie sur un environnement GNOME Shell, personnalisé à l’aide d’extensions conçues par les teams Numix et Niturx S.A associées pour l’occasion.

Le extensions inclues vont bien plus loin que de simples considérations visuelles (thème/icônes) et visent à fournir un ensemble complet, embarquant un panel, un launcher, un dock, une vue des applications et un système de notifications revisités à la sauce Atom. Le tout complété par un Shell Ozon spécifique pour GS.

Alors pour le moment rien n’est visuellement très parlant et il est encore difficile de se faire un avis objectif. Cela dit et pour plusieurs raisons, je trouve ce projet vraiment intéressant. Connaissant le potentiel d’innovation énorme de Red Hat et l’excellent niveau d’intégration de GNOME dans Fedora, le choix de cette distribution pour ce projet me paraît ultra cohérent. Ça change un peu des sous-produits utilisant une base Debian/Ubuntu.

Le deuxième point intéressant réside dans le fait que nous pouvons voir arriver une seconde distribution (sérieuse) partir de ce qui n’était qu’un ensemble de thèmes et qui peut-être, à l’image d’Elementary OS, apportera un nouvel ensemble visuel et applicatif original.

Alors si ça vous tente vous pouvez garder un œil sur la feuille de route et vous brancher sur la page Github du projet.

Si vous voulez tester une version Alpha est d’ores et déjà  disponible en téléchargement direct, ou en torrent.

Amusez-vous bien.

source et image

Gravatar de La vache libre
Original post of La vache libre.Votez pour ce billet sur Planet Libre.