Promouvoir et défendre le logiciel libre

09 December 2016

tnitot.png Tristan NITOT

En vrac du vendredi

Le 09 December 2016 à 18:50:00

Voici la chanson Sur écoute, par l’excellentissime JCFrog, qui comporte un clin d’oeil à votre serviteur :

Si vous aimez, il a une chaine Youtube, où on peut voir aussi Every mail you send (parodie/reprise de Every breath you take de Police), et Gare aux godillots! #PJLRenseignement, sur une musique de Georges Brassens.

Et puis quelques liens bien sentis pour clore tout ça :

jzimmermann.png Jérémie ZIMMERMANN

Open Government in France: an Empty Promise?

Le 09 December 2016 à 16:52:03

Paris, 9 December 2016 — As France is hosting the Open Government Partnership Global Summit, a number of Civil Society Organizations point out the inconsistencies of the French government. Some have decided not to attend.

The report on "open government" in France is co-signed by the following Civil Society Organizations (CSO): ANTICOR, April, BLOOM, DemocracyOS France, Fais ta loi, Framasoft, La Quadrature du Net, Ligue des Droits de l’Homme, Regards Citoyens, République citoyenne, SavoirsCom1.

While showcasing a "dialogue with civil society", France is far from being an exemplary democracy

Open government is a new way to collaborate between public actors and civil society, to find mutual answers to the important challenges democracies are facing: human rights, preservation of the environment, fighting corruption, universal access to knowledge, etc.

To this end, seventy countries joined the Open Government Partnership (OGP). Each state is required to co-create and implement a "National Action Plan" together with civil society.

France joined the Open Government Partnership in April 2014, and published its first National Action Plan in July 2015.Since October 2016 the French government co-chairs the OGP with WRI (World Resource Institute), a US-based civil society organization. As such, France will host the OGP Global Summit, in Paris, from December 7th to December 9th, 2016, announced as the "COP 21 for democracy".

As the "Country of Human Rights", co-chair and host of the OGP Global Summit, France should be exemplary regarding open government.

Unfortunately, actions do not match the promises, including in the three areas identified as "core priorities" by the French government itself (1. climate change and sustainable development ; 2. transparency, integrity and anti-corruption ; 3. building digital commons), despite the Government's self-satisfaction.Worse, some decisions, incompatible with democratic progress as promoted by the Open Government Partnership, are leading France on a dangerous path.

The Civil Society Organizations who co-sign this statement, publish their critical analysis of Open Government in France and ask the French Government and Representatives to reevaluate some choices that are widely inconsistent with general interest and OGP's principles, and to finally bring coherence between speeches and actions.

Read the entire document

Signatories

  • ANTICOR is a non-profit organisation founded in 2002 by Eric Halpen and Severine Tessier to fight corruption and bring ethics back into politics.
  • April is the main French advocacy association devoted to promoting and protecting Free/Libre Software. The involvement of its volunteers and staff enables it to carry out many and diverse actions to promote digital freedoms.
  • BLOOMis a non-profit organization founded in 2005 by Claire Nouvian that works to preserve the marine environment and species from unnecessary destruction and to increase social benefits in the fishing sector.
  • DemocracyOS France is a non-profit organization promoting the use of an open source web platform that allows transparent and collective decision making. 
  • Fais Ta Loiis a collective that aims at helping people furthest from the democratic debate to make their voice heard in Parliament.
  • Framasoft is a network dedicated to the promotion of free culture, in general, and free software in particular.
  • Ligue des Droits de l’Homme acts for the defence of the rights and liberties of all. It is in interested in social citizenship and proposes measures for a strong and vibrant democracy, in France and in Europe. 
  • La Quadrature du Net is a non-profit association that defends the rights and freedoms of citizens on the Internet.
  • Regards Citoyensis a French organization of citizens volunteering from all regions to work together on providing a better understanding of the French democratic institutions by levering public information in new and creative ways. Regards Citoyens has advocated for public Open Data in France since 2009. Their most prominent initiatives are parliamentary monitoring websites including notably: NosDeputes.fr; NosSenateurs.fr and LaFabriqueDeLaLoi.fr. 
  • République citoyenne is a French CSO, created in 2013, that aims at stimulating citizens' critical thinking on democratic issues and on open government, in particular.
  • SavoirsCom1 is a collective dedicated to promote Knowledge Commons in public policies.

bsibaud.png Benoît SIBAUD

Mini‐hackathon LinuxFr.org et Agenda du Libre le 8 décembre 2016

Le 09 December 2016 à 14:52:01

L’idée et l’envie d’un hackathon LinuxFr.org court depuis quelque temps au sein de l’équipe. Et la demande vient aussi de nos visiteurs.

Quelques rappels pour LinuxFr.org :

  • code : le site est principalement basé sur Ruby on Rails et contient aussi quelques services en Go et, bien sûr, du JavaScript, du shell, du SQL, de la CSS, etc. ;
  • fonctionnement : contenus écrits par nos visiteurs aidés d’une équipe (bénévole) de rédaction, un système de notation et auto‐modération, ainsi qu’une équipe (bénévole) de modérateurs ;
  • une association LinuxFr et un site LinuxFr.org qui vont fêter leurs 18 ans ;
  • administration système : Debian ou Ubuntu, des serveurs physiques, des conteneurs LXC et des machines virtuelles, un peu d’Ansible voire de Docker.

LinuxFr.org

Côté Agenda du Libre, le site est basé sur Ruby on Rails aussi, et fonctionne avec une équipe (bénévole) de modérateurs.

Les pistes de sujet (en fonction des présents) :

  • réduire le nombre d’entrées ouvertes dans le système de suivi des bogues et suggestion de fonctionnalités ;
  • produire de nouveaux logos, images de section, bannières, etc. ;
  • rédiger de nouvelles dépêches collaborativement ;
  • modérer les tags ou améliorer les règles de modération ;
  • améliorer des feuilles de style existantes ou en réaliser de nouvelles ;
  • mettre en place de nouveaux services ;
  • permettre d’avoir un agenda hebdomadaire pour les autres pays que la France ;
  • etc.

Cadre : on se greffe à l'événement hebdomadaire « Soirée de Contribution au Libre » organisé par Parinux.
Lieu : Fondation pour le Progrès de l'Homme (FPH) 38 rue Saint Sabin Paris Île-de-France.
Date : jeudi 8 décembre 2016.
Heure : de 19h30 à 22h30.

Prérequis

Quelques prérequis à mettre en place avant de venir contribuer :

  • être sur place le 8 décembre à la FPH (on ne peut pas s’engager par avance à pouvoir se coordonner avec des personnes distantes, car nous risquons d’être bien occupés sur place, donc sauf volontaire pour assurer cette coordination, on se limitera aux présents) ;
  • disposer d’un ordinateur portable (réseau et électricité seront disponibles sur place) ;
  • accepter de contribuer sous une licence libre (AGPL pour le code, CC By SA 4.0 pour les contenus ou les logos) ;
  • avoir un compte LinuxFr.org (peut‐être pas indispensable, mais sûrement pratique en l’occurrence) ;
  • merci de vous inscrire sur la page wiki pour aider à organiser et préparer ;
  • et suivant les cas :
    • pour contribuer sur les dépêches en rédaction ou rédiger de nouveaux contenus ou retravailler les règles de modération : votre navigateur préféré, éventuellement des greffons pour l’orthographe, la grammaire (Grammalecte pour Firefox, par exemple) ou le markdown,
    • pour produire des visuels : vos outils de dessin préférés (libres pour la partie logicielle), probablement une copie du dépôt Git de code pour avoir les images existantes,
    • pour améliorer les feuilles de style existantes ou en réaliser de nouvelles : votre navigateur préféré et idéalement plusieurs pour tester, éventuellement des greffons spécialisés (comme Firebug pour Firefox),
    • pour contribuer sur l’administration système : installer Ansible, OpenSSH (et avoir une clef générée), git, et idéalement un conteneur ou une machine virtuelle Debian sur votre propre ordinateur (on tachera de fournir une machine virtuelle sur les serveurs LinuxFr.org ou un Dockerfile sinon),
    • pour contribuer sur le code : une copie du dépôt git, de quoi faire du Ruby on Rails (ou du Go ou JS suivant les daemons choisis), idéalement un conteneur ou une machine virtuelle Debian sur votre propre ordinateur avec un LinuxFr.org local fonctionnel (on tachera de fournir une machine virtuelle sur les serveurs LinuxFr.org ou un Dockerfile sinon).

Lire les commentaires

08 December 2016

Isabelle DUTAILLY

De Wordpress à Spip : un tutoriel, 3

Le 08 December 2016 à 21:04:41

Comment, sans être développeur, injecter ses données Wordpress dans une base SPIP.

- Spip et al

jzimmermann.png Jérémie ZIMMERMANN

ePrivacy: unraveling the lobbies' falsehoods

Le 08 December 2016 à 16:26:34

Paris, 8 December 2016 — The review of the European ePrivacy directive on the confidentiality of electronic communications may not have reached the limelight yet, but this doesn't mean that the influence work and the fight over interests haven't started. On the contrary, as the draft text is tabled by the European Commission to be published in January 2017, interest groups are at the doors of the European executive power to get their two cents in the upcoming text.

To get an idea of the content of the discussion happening in high places, we just need to read the open letters, the position papers and others common declarations of ETNO, GSMA, DIGITALEUROPE and other lobbies of the digital and telecom industries: all call for the plain and simple repealing of the directive.

Much as during the negotiations for the General Data Protection Regulation (GDPR), expounding our arguments is not enough in the face of the industry's means and striking capacity, we need to review and examine all their misleading arguments, one by one.

Argument #1 : The ePrivacy directive adds legal and regulatory complexity when we should be “restoring user trust by decreasing the regulatory complexity”[1]

What we have here is the magic of the “rationalisation” argument at work. This logic suggests that the regulatory environment is a too big constraint for companies and that it should be simplified. However, it bears reminding that to “simplify” should never mean to weaken and least of all to delete guarantees that protect users.

Furthermore, this constraint is essential in order to oversee the practices of companies for whom our personal data represents a gold mine and is often the basis of their business model. The “Laissez-faire” and “self-regulation” approaches, constantly advocated by the industry, are lures that have never brought individuals more protection and confidentiality. Regulations exist to make services providers and other actors respect basic rules in terms of security, confidentiality and privacy. Wherever there is no clear regulation, their practices tend to be more exploitative of our privacy for commercial gain. Likewise, users must be able to know globally what are their guarantees and their rights: as we use tens of different services everyday, it is absolutely necessary to have a common base of guarantees that allows us to know what to expect.


Argument #2: The ePrivacy directive is rendered obsolete by the new General Data Protection Regulation.[2]

This is the industry's main argument: the new GDPR regulation would already cover almost all of the ePrivacy's provisions and this directive would therefore now be unnecessary.

As a reminder, the ePrivacy directive is intended to protect privacy and data confidentiality in the area of electronic communications. That is to say, is is intended mainly for communications such as instant messaging, SMS, VoIP communications like Skype, emails, phone calls, etc., for which it will determine obligations for service providers in terms of security and confidentiality. The General Data Protection Regulation adopted in April 2016 and which will enters into application in May 2018 intends, on the other hand, to guarantee the protection of personal data for each individual when this data is used by private corporations as well as public authorities. Recent technological developments have been such that the majority of transfers and movement of personal data now happens on the Internet via the many websites and services we access.

Both texts are therefore not equivalent: one –the Regulation– focuses on the personal data produced by our use of services, the other –the ePrivacy directive– focuses on respecting our privacy and the confidentiality of our exchanges with other parties.

The adoption of this new Regulation in April 2016 does not make the ePrivacy useless in any way. Indeed, it does not cover directly some fundamentals rights such as the right to communicate freely or the right to privacy. Furthermore, the ePrivacy directive covers issues that goes beyond personal data and that are not covered by the Regulation. It is the case, for instance, for unsolicited communications like spams or direct prospecting.

Because they are pervasive in our daily lives and because the informations they convey are of great value, electronic communications require a specific security and confidentiality regime, as protective as possible. The revision of this directive is a huge opportunity to strengthen this protection while still remaining perfectly consistent with the general legislation enshrined in the future Regulation.


Argument #3: User privacy protection is already guaranteed by the Regulation, it is not necessary to keep article 5(3) on the confidentialiy of your device. [3]

The ePrivacy directive was amended in 2009 and a 3rd paragraph on the confidentiality of “terminal device” (your phone –smart or not– or your computer) was added. It oversees “information storage” and “access to already stored information on the terminal device” (such as cookies), by submitting them to the consent of the user.

Today, it is poorly implemented by Service Providers who make consent not only compulsory to access a service (destroying the “freely given” nature of this consent; it is essential to ban this practice) but also uninformed because it is drowned in an incomprehensible amount of information. In this, the article 5.3 failed to give the control of their data back to the users but remains a crucial tool, both essential to limit the effect of online tracking and unique, as nothing alike exists in the General Regulation.

This article on the confidentiality and the integrity of terminal devices therefore needs to be rephrased in order to improve its implementation, but its scope must also be widened to include cases where the device creates information by default such as tracking using canvas fingerprinting.

All in all, privacy protection must include the confidentiality and the integrity of users' device. This article is thus essential but can be updated and made more efficient by widening its scope and reinforcing the guarantees for the users (which is exactly what industries do not want).


Argument #4: Online communication services are not covered by the directive. Thus, according to telecom operators: A “level playing field” for all actors must be created. Because they are at a terrible disadvantage compared to American service providers [4]

It is true that some services that are ubiquitous today, such as online messaging services such as Whatsapp, Signal, Viber (also called “OTT”: over-the-top services), did not exist when the ePrivacy directive was adopted in 2002 and are not subject to the security and confidentiality requirements of the ePrivacy directive.

On this issue, telecom operators and lobbies of the digital industry have developed a facade of opposition. When operators denounce the unfairness they face regarding new online services, these reply that they are already covered by the General Regulation. In reality, far from being opposed to each other, they all reach a common conclusion: the necessary abrogation of the directive. It is a nice trick on their part but a vain attempt in the end as the issue of the directive's scope should be fixed beforehand by the new European electronic communication code, currently being discussed in the European parliament. It should modify the definition of “electronic communication services” to add new players such as online messaging services.

Security and confidentiality obligations must apply to all service providers and in a equal way. Treating all operators, new online services and future services equally is necessary in order to be able to develop more ambitious rules about the confidentiality and security of our electronic communications.


Argument #5: The derogations left to member States for national security purposes are too broad and endanger the possibility for service providers to offer some services, such as end-to-end encrypted electronic messages. [5]

Because of the Article 15.1, Member States do have the ability to limit the confidentiality and security requirements laid down in this directive for national security, defense or public security purposes. They may therefore adopt measures providing for the retention of data (such as France with article 6 of the 2004 law regarding Confidence in the Digital Economy or with decree n°2011-2019 of 25 February 2011) which run not only contrary to the EUCJ's decision of 8 April 2014 in the case Digital Rights Ireland, but are also conflicting with some technologies that service providers may offer such as end-to-end encryption tools. These very broad derogations left to Member States are therefore incompatible with high security and confidentiality requirements for our electronic communications.

This may explain why industry lobbyists, such as DIGITALEUROPE, strongly oppose an extension of the text's scope to OTTs, since article 15.1 would compromise the ability of these services to guarantee security and confidentiality of communications through encryption.

This is why there is a real need to question these broad derogations left to Member States for purposes as open and vague as “national security” and to drastically reduce the scope of article 15.1. To this end, the wording “measures providing for the retention of data” must be deleted. Furthermore, it is essential to specify that any national surveillance law falling within these derogations must be both targeted and enforced under prior control of a judicial authority.

To reinforce the right to privacy and to reassure service providers and users, La Quadrature du Net recommends the introduction of a separate article on the importance of encryption technologies. It could mention on one hand the essential role of encryption for the security and confidentiality of electronic communications and, on the other hand, remind service providers and Member States of their responsibilities in the promotion of the use of these technologies.


Argument #6 You will kill competitiveness!!! [6]

This argument, made nearly empty by how commonplace it is in the jargon of industry lobbyists, means that forbidding the development of certain practices or technologies considered as intrusive for privacy would put the European Union at a disadvantage because other States do not have such constraining regulations.

But today, users are more and more aware of what their personal data represents to them and some are turning to more privacy-respecting services. It is useless to hope to be competitive by engaging in the race to ever more intrusive tracking models, we must meet the challenge that lies ahead and see in an ambitious and privacy-respecting regulation the necessary incentive to the egregiously sought-after innovation.

But this change of orientation and change of companies' economic model will no happen thanks to free market competition. Without strong and ambituous regulation, companies will never accept to risk their immediate profit. The revision of the ePrivacy directive is the perfect occasion to promote this ideological turning point of which the digital economy is in dire need.

april.png Nouvelles April

Présentation de la Table ronde - Enjeux politiques et juridiques du domaine public

Le 08 December 2016 à 14:13:17


Alexis Kaufmann - Lionel Maurel

Titre : Présentation de la table ronde - Enjeux politiques et juridiques du domaine public
Intervenants : Marie Farge - Alexis Kauffmann - Véronique Boukali - Lionel Maurel
Lieu : 1er festival du domaine public - ENS
Date : Janvier 2015
Durée : 11 min 32
Visualiser la vidéo
Licence de la transcription : Verbatim

Transcription

Marie Farge : Je suis ravie de vous accueillir à l’École Normale et en particulier d’accueillir le 1er Festival du domaine public. C'est une brillante idée qui a été lancée récemment, au mois de juillet, par Alexis Kauffmann, qui est ici, et Véronique Boukali, et je leur laisse la parole parce que ce sont eux les maîtres de cérémonie.

Alexis Kauffman : Merci beaucoup Marie. Merci à l'ENS de nous accueillir. Merci à toi pour toute ton énergie à monter, non seulement cet événement, mais aussi demain. Demain on reste à l'ENS pour un concert, cette fois-ci. Donc voilà, c'est le 1er festival du domaine public. Je ne vais pas être long, il y a une trentaine d’événements sur quinze jours, ça se poursuit jusqu'au 31. Je suis ravi que ça ait pu se monter et, avec Véronique, on est ravis de proposer un temps fort, un peu politique, juridique, d'actualité, autour de toutes ces questions parce que, souvent, on est au-delà de 1944 pour des questions, soixante-dix ans après la mort des auteurs, on est un peu dans le passé mais, en fait, toutes ces questions sont éminemment d'actualité. Parmi les événements, je vous raconte, très rapidement, une petite mésaventure qui nous est arrivée pile aujourd'hui. Il y en a un qui a été programmé, à la Gaîté Lyrique, vendredi prochain, et il y avait un ciné-concert d'un artiste, dont on va vous montrer vraiment quelques secondes de sa bande annonce, parce qu'en fait, on n'a absolument pas le droit, du tout. Je vous expliquerez très rapidement pourquoi.

Projection de la bande annonce du ciné-concert Fantômas V2.0

Avec le son, oui. Donc voilà Fantômas. C'est titré Fantômas, ça c'est une première erreur. Et donc ici, nous sommes avec un remontage d'un film de Louis Feuillade. On est en 1913, première adaptation du feuilleton célèbre, Fantômas, qui lui, est paru en 1911. Et cet artiste, donc remonte, recolorise ; il y a eu cinq films, en fait, il les a remontés à sa sauce, il les colorise, il met des caches, il met de la musique et de la musique contemporaine par-dessus. C'est un spectacle qui a déjà été produit, qui a été présenté en province, dans des festivals. Et nous, quand on a pris connaissance de son travail, on s'est dit que ce serait tout à fait intéressant de le présenter dans le cadre du festival. Surtout que, très rapidement, on a vu Louis Feuillade, mort en 1925, il ne devrait pas y avoir de problème, donc allons-y. On va peut-être arrêter parce que, du coup, comme c'est filmé et qu'on n'a pas le droit, on se méfie maintenant ! Or, mail reçu hier avec accusé de réception, de l'ayant droit de Louis Feuillade, donc du réalisateur, qui nous dit : « Je prends connaissance à l'instant de votre événement — et qui nous dit — oui d'accord, c'est bien gentil l'entrée dans le domaine public, mais attention ça n'est que la fin des droits patrimoniaux, le droit moral, dont je suis, justement, le garant, l'héritier, etc., lui est imprescriptible, intemporel et j'estime que c'est un chef-d’œuvre, Fantômas est un chef-d’œuvre qui se suffit à lui-même ». Il a dû dire ça comme ça, et surtout, qu'il ne souhaite pas de remontage, pas de remixage. Nous, en plus, on avait présenté, on avait dit « voulant faire honneur, enfin c'est l'occasion de recréer sur la création passée, etc. »

Donc il s'est formellement opposé et, au passage, ils nous a rappelé qu'il y avait aussi atteinte au droit patrimonial, au droit d'auteur, puisque le film Fantômas se basait donc sur le feuilleton. Le feuilleton a deux auteurs dont un des auteurs, Marcel Allain, lui a vécu, tant mieux pour lui, a vécu longtemps, il est mort en 1969. Et donc il se retrouve, scénariste du film, puisque le film est une adaptation du roman et, au final, nous, on pensait que le film, de Louis Feuillade, Fantômas était dans le domaine public et, en fait, il ne l'est pas. Et donc, du coup, aujourd'hui, on a reçu non pas une lettre des ayants droit pour atteinte au droit moral, mais cette fois-ci on a reçu une lettre de la SACD, des ayants doit de Marcel Allain, donc de l'auteur, pour contrefaçon, atteinte aux droits patrimoniaux. On n'a pas demandé l'autorisation. C'est vrai, on n'a pas payé de droits. Et puis alors, cerise sur la gâteau, lettre aussi de la SARL Fantômas, du gérant de la Fantômas SARL, qui, non seulement gère les droits, mais aussi la marque Fantômas. Et donc, comme vous voyez, ça a été présenté comme Fantômas justement par l'artiste, là aussi, et on nous demande évidemment de tout arrêter parce qu'on n'a pas respecté.

Véronique Boukali : Non ! De nous mettre à jour avec eux et de payer le nécessaire.

Alexis Kauffman : Enfin, toujours est-il que vu les délais ! Nous, on a argué, on est naïfs, parce qu'on est naïfs sur cette série, et puis on n'est pas des juristes – les juristes et les spécialistes sont ici présents ce soir – on commencé « on est un petit festival, géré par une association à but non lucratif. L’événement est gratuit, il y a deux cents inscrits, on est à J-2, peut-être qu’exceptionnellement, voilà, vous ne pouvez pas faire ? » « Non non rien du tout ». Donc voilà ! On est en faute, on n’aurait pas dû. Le festival du domaine public, on aurait dû présenter une œuvre du domaine public, ça n'est pas le cas ! Ceci étant dit, on voit aussi que sur cette question de droit moral, les ayants droit ont une capacité de nuisance avec ce droit moral, en sacralisant l’œuvre et en souhaitant qu'on ne puisse absolument plus rien en faire, qu'elle soit figée et qu'on ne puisse pas remixer, alors qu'on est vraiment, justement avec les outils numériques, on a cette possibilité de faire, notamment la jeune génération adore faire ça, mais voilà, là on est bloqué1.

Toujours est-il que l’événement est annulé. Il va falloir qu'on mette tous les sites à jour. À la place on risque, pour ceux que ça intéresse, pour ceux qui comptaient venir, à la place on va présenter le documentaire sur la vie de Aaron Swartz. Je ne sais pas si vous voyez, donc ce jeune militant de l'Internet qui s'est suicidé à l’âge de vingt-trois ans, qui est sous Creative Commons. On a le droit de le présenter et ce sera l'occasion d'évoquer tout cela. Voilà. Merci d’être là, merci aux intervenants et je passe la parole à Lionel Maurel.

Applaudissements

Lionel Maurel : Bonsoir. Je suis très honoré de faire l'ouverture de cette soirée de débats. Je m'appelle Lionel Maurel, je suis cocréateur d'un collectif qui s'appelle Savoirscom1, sur les biens communs de la connaissance, et membre du conseil d'administration de La Quadrature du Net, une association de défense des libertés dans l'environnement numérique. Ce soir on va parler des enjeux politiques et juridiques du domaine public, et je crois que la péripétie qui vient de nous être racontée constitue à elle-seule, déjà, une bonne entrée en matière pour comprendre toutes les tensions qui peuvent exister autour de ce concept de domaine public et de difficultés qu'on peut avoir à l'identifier, à le connaître et à le faire vivre.

Il faut voir que le domaine public ça a longtemps été un enjeu qui était très présent dans le débat public. Quand le droit d'auteur est né, à la Révolution française, à l’Assemblée nationale, cette notion était très présente dans les débats. On a créé le domaine public en même qu'on a créé le droit d'auteur, et on en a beaucoup parlé à la Révolution comme un facteur d'équilibre dans le régime du droit d'auteur. Le domaine public était très présent au 19è siècle. À la fin du 19è siècle, quelqu'un comme Victor Hugo en a beaucoup parlé, de manière parfois ambiguë et contradictoire, mais la notion était là, il y a des gens qui la défendaient. On en a parlé aussi en 1936, au moment du Front populaire. Jean Zay voulait réformer le droit d'auteur et, un des points forts de sa réforme, c’était de donner un rôle beaucoup plus important au domaine public. Et puis, ensuite, le domaine public a connu une longue éclipse, après la guerre, quand, notamment, le concept de propriété intellectuelle s'est imposé. Et pendant très longtemps on n'en a plus parlé et la seule chose qu'on a constatée c'était un allongement de la durée des droits d'auteur, qui a provoqué une érosion lente et un peu inéluctable de la notion de domaine public.

Et puis finalement, avec le numérique, le domaine public est revenu sur la scène. Il est revenu par plusieurs biais. Il est revenu, par exemple, par le biais de l’Union européenne. La Commission européenne s'est intéressée, notamment, à la numérisation du patrimoine, et dans les travaux de la Commission, le domaine public était présent. Il est revenu, même au niveau de l'Organisation mondiale de la propriété intellectuelle, qui a des travaux, en ce moment, sur le domaine public. Et il a fini par revenir aussi en France, où, depuis quelques années, on en parle davantage. Par exemple, le domaine public était un des points, une des propositions, la reconnaissance du domaine public était un des points qui figurait dans le rapport Lescure qui a été rendu il y a deux ans maintenant, sur l'évolution du droit d'auteur. Et, pour continuer dans l'actualité, cette semaine, la commission numérique de l’Assemblée a mis en place une ombre de priorités législatives et, parmi ses points, il y a la réforme du droit et la reconnaissance positive d'un domaine public informationnel.

Donc en en parle. Le domaine public est un sujet qui fait l'objet d'un débat et, pour prolonger la réflexion, nous avons ce soir quatre intervenants que je vais vous présenter. Nous avons d'abord Séverine Dusollier, qui est juriste et professeur de droit à Science-Po Paris. Vous avez écrit, beaucoup écrit, sur la question du domaine public. Vous êtes l'auteur d'un rapport, aussi, à l'Organisation mondiale de la propriété intellectuelle sur la question et vous avez publié cette semaine un texte très intéressant sur un régime positif du domaine public, dont vous allez nous présenter les contours.

Nous avons aussi Isabelle Attard2, qui est au bout de la table, députée du Calvados, Nouvelle Donne. Vous êtes l'auteur d'une proposition de loi, déposée en décembre 2013, pour reconnaître, consacrer et étendre le domaine public. Et vous faites partie des députés qui, plusieurs fois, à l’Assemblée nationale ont pris la parole pour parler du domaine public dans les débats législatifs. Vous expliquerez, au niveau national, quels sont un peu les enjeux et ce qui se passe autour du domaine public.

Nous avons ensuite Gaëlle Krikorian3. Vous êtes conseillère au Parlement européen et vous suivez, depuis de nombreuses années, les questions de propriété intellectuelle, que ce soit dans le champ des brevets autour de la santé ou dans le champ du droit d'auteur, et vous nous parlerez des enjeux au niveau européen et aussi internationaux, parce qu'il y a traités internationaux, en ce moment, qui soulèvent également cette question.

Et enfin nous avons Danièle Bourcier4. Vous êtes directrice de recherche au CNRS. Vous œuvrez aussi au sein, depuis de nombreuses années, de Creative Commons France, et vous nous parlerez des instruments que Creative Commons France a développés, pour favoriser ce qu'on appelle un domaine public volontaire, c'est-à-dire la possibilité pour les artistes de verser directement leurs créations dans le domaine public. Voilà. Donc chaque intervenant a une vingtaine de minutes pour parler. Ensuite nous aurons un débat entre nous et avec la salle.

Jérémie Zimmermann en 2014 - Un an et demi après les révélations d'Edward Snowden

Le 08 December 2016 à 11:25:59


Jérémie Zimmermann

Titre : CitizenFour - Jérémie Zimmermann sur Radio-Canada - La Sphère
Intervenants : Jérémie Zimmermann - Matthieu Dugal
Lieu : En direct du Festival du Film de Lisbonne et d'Estoril
Date : Novembre 2014
Durée : 13 min
Écouter l'enregistrement
Licence de la transcription : Verbatim

Transcription

Matthieu Dugal : On va maintenant se déplacer au Portugal. On va aller joindre quelqu'un qui en fait son cheval de bataille, depuis longtemps. Il s'agit de Jérémie Zimmermann. Vous ne le connaissez peut-être pas, mais il a écrit un livre fascinant l'année dernière, c’était en collaboration avec notamment, Julien Assange. Le livre s'appelle Menace sur nos libertés : Comment Internet nous espionne, comment résister. C’est quelqu'un qui a fondé La Quadrature du Net1 ; c'est un activiste, il a fondé ça, c’est l'ex porte-parole, donc c'est une organisation de défense justement de ces libertés-là sur Internet et on va donc le joindre parce que c'est une question qui l'intéresse au plus haut point. Il est au bout du fil, à Lisbonne. Bonjour Jérémie Zimmermann.

Jérémie Zimmermann : Bonjour.

Matthieu Dugal : Jérémie Zimmermann, vous n'avez pas encore vu le film, vous allez le voir ce soir, donc le documentaire de Laura Poitras CitizenFour2, mais j'aimerais qu'on parle de votre regard sur l'état de nos vies privées sur Internet, un an et demi après les révélations d'Edward Snowden. Quel constat est-ce que vous dressez ?

Jérémie Zimmermann : Effectivement, là je suis au festival du film de Lisbonne et d'Estoril qui est, cette année, entièrement consacré à la question de la surveillance de masse, où sera projeté, dans quelques heures, le film de Laura, que j'ai, évidemment, très hâte de voir. Déjà, cela dit quelque chose en soi qu'un festival majeur, c'est le plus gros festival de cinéma du Portugal, qui est certes un petit pays mais un pays tout de même, que le plus gros festival d'un pays comme le Portugal puisse, tout entier, parler de surveillance. Cela fait penser au début d'un sursaut, au début d'une prise de conscience. Le tableau n'est évidemment pas tout rose. On sent que dans certains secteurs, en particulier, ces problématiques de protection de la vie privée, de protection des données, de protection des communications, sont en train d’être prises en compte. Un nombre croissant de journalistes, d’activistes, d'avocats, utilisent aujourd’hui des outils cryptographiques, ont abandonné leurs comptes chez Gmail ou chez Facebook, etc., et prennent vraiment très au sérieux ces questions, aujourd’hui.

Maintenant la question est, évidemment, de faire prendre conscience à la société tout entière de ces enjeux. Et j'ai l’impression que beaucoup de choses évoluent. Ce n'est évidemment pas en un an, en un an et demi, ce n'est pas en trois ans que les choses vont changer. On parle là de changements profonds qu'il est nécessaire d'opérer dans notre société. Il a fallu quelque chose comme quinze ou peut-être vingt ans, pour que l’informatique tout entière, la technologie tout entière, soit dévoyée de son but et retournée contre nous, citoyens, transformée en appareillage d'espionnage de masse. Donc trouver l’antidote à cela, si c'est encore possible, ne se fera évidemment pas en une nuit.

Ce qui avance, en tout cas, c'est que, d'une part, de très nombreux outils technologiques sont en train d'avancer à grands pas. Soit ils étaient déjà sur les rails, comme le projet Tor3, comme des messageries chiffrées, comme Pond, ou le protocole Off-the-Record, ou de très nombreux projets comme le projet Tails4 par exemple. Des projets technologiques, qui visent à protéger nos communications et nos données, avancent à pas de géants, depuis les révélations de Snowden, depuis qu'un nombre croissant d'informaticiens, mais pas que, que de participants, rallient ces projets de logiciels libres. Les vendeurs de snake oil, comme on dirait, dans un espace où l'on ne se priverait pas pour utiliser des mots anglais dans son français, les vendeurs, dessous, vont vous dire « notre nouveau service est général et respecte votre privée ; notre nouveau téléphone est machin et respecte votre vie privée, etc. » Donc on sent que ça devient un argument de vente, mais on ne peut pas se fier à n’importe quoi, on ne peut pas faire confiance, et c'est cette confiance qui doit être au cœur de nos réflexions lorsque l'on parle de protéger nos données.

On ne peut pas faire confiance à des individus qui vont vous fournir une service ou un produit qui ne sera pas strictement basé, d'une part, sur le logiciel libre. Le logiciel libre ce sont ces logiciels qui appartiennent à l'humanité tout entière, sur lesquels on a tous la potentialité de comprendre comment ils fonctionnent et donc de les contrôler mieux. Donc tout ce qui ne sera pas du logiciel libre et des services décentralisés, c’est-à-dire où on ne va pas tous envoyer toutes nos données au même endroit, chez Google ou sur Facebook, et tout ce qui ne reposera pas sur du chiffrement de bout en bout. C'est-à-dire utiliser cette fameuse cryptographie, utiliser les maths, utiliser les forces de la nature pour protéger ses données, chacun, avec cette cryptographie entre nos mains. Vous générez votre clef de chiffrement, je génère ma clef de chiffrement, on s'échange nos clefs publiques, et on n'a besoin de faire confiance à personne d'autre, pas à Apple, à Google ou à n'importe qui, pour garantir un niveau de confiance élevé dans nos communications. Donc si qui que ce soit essaye de vous vendre quelque chose en vous disant « c'est la sécurité, c'est la protection » et que ça n'est pas logiciel libre, décentralisé, avec du chiffrement bout en bout, déjà, vous savez qu'on est en train d'essayer de vous arnaquer.

Matthieu Dugal : Ce qui est fascinant dans votre discours c'est que vous semblez avoir complètement fait l’impasse sur la question de la surveillance des surveillants. En fait, vous nous parlez vraiment des réponses pratiques, donc « adoptez des logiciels de chiffrement pour vos communications ¢ et tout ça. Donc vous, là, la surveillance de l’État qui surveille les citoyens, vous avez abandonné là-dessus ?

Jérémie Zimmermann : Ah ! Non, non ! Certainement pas ! Si j'ai parlé de ça en premier c'est parce que c'est tout d’abord la réponse la plus immédiate à un problème urgent. Il faut, à tout moment, faire la différence entre la surveillance ciblée, celle qui est parfois justifiée lorsqu’elle est effectuée dans un cadre démocratique, par exemple sous contrôle de l'autorité judiciaire, et qu'elle est proportionnée. Il faut faire la différence entre celle-ci et la surveillance de masse, la surveillance généralisée des données de tout le monde, qui est une violation massive de liberté fondamentale et qui est injustifiable. Celle-ci on peut se protéger. On peut se protéger contre la surveillance de masse, on peut le faire dès aujourd'hui, et ça c'est quelque chose qui apporte une lueur d’espoir. J'ai parlé de la technologie en premier aussi, parce que c'était peut-être le terrain sur lequel on était déjà le plus avancé avant même les révélations de Snowden.

Matthieu Dugal : Il y en a des réponses donc, ouais ?

Jérémie Zimmermann : Mais évidemment ! Il y a aussi le terrain politique et il est essentiel. Et on voit, là-aussi, des activistes partout dans le monde qui commencent à formuler, ça va prendre évidemment beaucoup plus longtemps, mais qui commencent à formuler des plans d'action par lesquels on imposerait par notre nombre, par nos actions collectives, décentralisées, aux gouvernements, de respecter leur engagement de protéger nos libertés plutôt que les violer. Où l'on essaierait de reprendre le contrôle de ces institutions devenues folles, à l'image d'un cancer qui se serait retourné contre son hôte qui sont les institutions du renseignement. Mais évidemment, ces solutions politiques vont prendre plus de temps à émerger. Mais je pense que l'une comme l'autre, technologie comme politique, ces deux lignes d'action seront conditionnées par la troisième, qui est peut-être celle sur laquelle on a fait le moins de chemin et qui, à mon avis, aujourd'hui, au stade où j'en suis de ma réflexion, est la plus importante : il s'agit de la ligne d'action socio-culturelle. Et donc, faire comprendre à chacun que quand on dit protection de la vie privée, privacy, c'est un concept un peu creux, un peu lointain ; liberté fondamentale, si on n'a pas fait de sciences politiques, ou qu'on n'a pas un membre de sa famille qui est mort pour défendre les libertés, ça paraît un petit peu abstrait et faire comprendre.

Matthieu Dugal : Oui, mais justement cette semaine, je lisais dans les journaux ici au Québec des gens qui tiennent encore le discours : « Écoutez, moi je n'ai pas absolument rien à cacher. Ça ne me dérange pas que les services secrets viennent fouiller dans mes dossiers ». Ce discours-là il est encore très présent. Qu'est-ce que vous leur répondez aux gens qui tiennent encore ce discours-là ?

Jérémie Zimmermann : Ce discours est de plus en plus facile à démonter. Il y a de plus en plus de gens qui savent comment le démonter. Si quelqu'un vous dit : « Je n'ai rien à cacher », vous lui répondez : « Ah bon ! Eh bien donne-moi ton login et ton mot de passe sur Google, sur Facebook, et sur tous les services que tu utilises. Comme ça je vais aller fouiller dedans et tout ce que j'y trouverai, je serai libre de le publier ! » Et la personne, immédiatement, se rend bien compte que c'est une grave atteinte à son intimité, à son identité. On peut aussi lui dire : « Eh bien si tu n'as rien à cacher, on va mettre une caméra dans ta chambre à coucher ou dans ta salle de bains ! » Et là-aussi, les gens réagissent par un saut en arrière, en disant : « Mais non. Évidemment que non ! »

Et c'est ça qui est important à faire comprendre, c'est que ce n’est pas ce concept creux de vie privée ou après tout oui, moi je m'en fiche, moi j’ai mon petit boulot, ma petite vie et donc ce n'est pas grave. Non ! Quand on parle de protection de la vie privée, là aussi on sent que les discours évoluent, mais il va falloir énormément progresser encore là-dessus, faire évoluer les narrations. Quand on parle de vie privée, on parle, en fait, de protéger nos intimités. Nos intimités, ce sont ces moments dans lesquels on est en pleine confiance, dans lesquels on est vraiment nous-mêmes, dans lesquels on est libre d’être vraiment nous-mêmes, que ce soit seul ou avec autrui. Ce sont ces moments dans lesquels on va pouvoir expérimenter avec de nouvelles idées, de nouvelles théories, de nouvelles pratiques, créer de nouvelles œuvres, sans avoir peur d’être jugé. Et c'est dans ces moments-là que l'on se développe, que l'on s'améliore en tant qu’individu. C'est là que l'on expérimente avec son identité. Et c'est donc au cœur de la définition de qui nous sommes. Ce sont vraiment nos identités qui sont menacées là, et je pense que n'importe qui est susceptible de comprendre cela. Donc cela fait partie de ces tactiques, de ces narrations, que l'on doit continuer d'inventer pour faire comprendre pourquoi il s'agit d'un problème qui nous concerne tous, mais surtout d'un problème dans lequel nous avons tous un rôle à jouer. C'est au cœur…

Matthieu Dugal : Jérémie Zimmermann, dernière question. Écoutez, dans le documentaire on voit Edward Snowden qui se sent très petit face aux forces qu'il combat, mais, en même temps, à un moment donné, il dit cette chose, il dit : « Écoutez, moi si on me tue, si on me coupe la tête, c'est une hydre, ça va repousser un peu partout ». Vous semblez partager ce même optimisme-là, celui que manifeste Edward Snowden dans le documentaire.

Jérémie Zimmermann : Je n’irais pas jusqu’à appeler ça un optimisme, mais il s’agit d'une légère lueur d'espoir, qui est tout à fait différente de ne plus avoir d'espoir du tout. Effectivement, Snowden s'est inspiré de Manning, d'Assange, qui eux-mêmes se sont inspirés de Daniel Ellsberg et ses Pentagon Papers. Et Wikileaks a fait la démonstration, à la face du monde, qu'un lanceur d'alerte est un citoyen qui prend le pouvoir, que l'information c'est du pouvoir, que le secret est utilisé pour cacher des crimes, pour cacher des mensonges et qu'on a tous un rôle à jouer. Et au cœur de ça, il y a cette notion, excusez-moi il faut encore utiliser un mot anglais, mais cette notion d'empowerment, très mal traduite en français par « capacitation », dans laquelle on a tous un rôle à jouer. Mais, avant cela, il faut s'apercevoir que l'on a ce rôle à jouer et que l'on peut le jouer. Et je pense qu'à ce moment-là, la somme de nos individualités nous rende infiniment plus puissants que ceux qui se cachent derrière le secret pour cacher leurs mensonges et leurs crimes, et que c'est l'histoire qui tranchera si l'on sera en capacité, ou non, de rependre le pouvoir. Et il s’agit de reprendre le contrôle des machines et ainsi, de reprendre le contrôle de nos destins numériques et de reprendre le contrôle de notre société.

Matthieu Dugal : Jérémie Zimmermann, c'est absolument fascinant de vous entendre parler de ça. C'est évidemment une réflexion qu'on va poursuivre en allant voir ce documentaire-là ; c'est absolument un incontournable, je pense, en 2014. Je rappelle que vous avez coécrit avec Julien Assange, entre autres, un livre qui s'appelle Menace sur nos libertés : Comment Internet nous espionne, comment résister. Vous nous parlez en direct du festival de documentaires de Lisbonne et d'Estoril. C'est bien ça ?

Jérémie Zimmermann : Le festival du film, pas seulement documentaires.

Matthieu Dugal : Du film, oui, dont le thème cette année est la surveillance de masse. En tout cas vous êtes à votre place. Merci beaucoup de nous avoir accordé cette entrevue.

Jérémie Zimmermann : Avec un grand plaisir.

Célébrer à Nantes les 20 ans de l'April

Le 08 December 2016 à 10:34:06

17 Décembre 2016 - 17:00
17 Décembre 2016 - 17:00

L'association « Linux Nantes » propose de fêter les 20 ans de l'April autour d'un apéro samedi 17 décembre 2016 à partir de 17h00, au B17, 17 avenue Bellamy Nantes.

L'April fête en effet cette année ses 20 ans. L'association a été déclarée le 20 novembre 1996 à la préfecture de Bobigny, et la création a été publiée au Journal Officiel n° 51 du 18 décembre 1996. L'association « Linux Nantes » organise une permanence samedi 17 décembre 2016 de 15h00 à 18h00 et propose un apéro « 20 ans de l'April » à partir de 17h00. Cela se passera au B17, 17 avenue Bellamy Nantes, consultez les informations pour se rendre sur place.

Pour connaître la liste des autres événements en cours d'organisation, consultez la page wiki.

07 December 2016

Carl Chenet

htop expliqué, partie 2 : le load average

Le 07 December 2016 à 23:00:08

Après une première partie consacrée à la notion d’uptime, voici la seconde partie traduite de l’excellent article htop explained : Explanation of everything you can see in htop/top on Linux (1er sur Hacker News, 1er sur /r/sysadmin, 2nd sur /r/linux), traduit avec l’accord de son auteur Pēteris Ņikiforovs, article présentant la commande htop et les notions de base d’un système GNU/Linux présentées par ce programme.

Aujourd’hui : le load average (charge moyenne du système).


Capture d'écran de htop

Une capture d’écran de htop

Load average

En plus de l’uptime, il y avait aussi 3 nombres qui représentent le load average.

$ uptime
 12:59:09 up 32 min, 1 user, load average: 0.00, 0.01, 0.03

Ils sont pris depuis le fichier /proc/loadavg. Si vous jetez un oeil à la sortie de strace, vous verrez que ce fichier est aussi ouvert.

$ cat /proc/loadavg
 0.00 0.01 0.03 1/120 1500

Les trois premières colonnes représentent la charge moyenne du système durant les 1, 5 et 15 minutes précédentes. La quatrième colonne montre le nombre de processus s’exécutant en ce moment et le nombre total de processus. La dernière colonne affiche le dernier identifiant (ID) de processus utilisé.

Commençons avec le dernier nombre.

Quand vous lancez un nouveau processus, il lui est assigné un numéro identifiant (ID). Les IDs de processus en général sont croissants, à moins qu’eils soient épuisés et sont ré-utilisés. Le processus avec l’ID 1 appartient à /sbin/init, lequel est lancé au moment du démarrage du système.

Jetons de nouveau un oeil au contenu du /proc/loadavg et exécutons ensuite la commande sleep en arrière-plan. Quand il est lancé en arrière-plan, son ID de processus sera affiché.

$ cat /proc/loadavg
 0.00 0.01 0.03 1/123 1566
 $ sleep 10 &
 [1] 1567

Donc le 1/123 signifie qu’il y a un processus s’exécutant ou prêt à être exécuté à ce moment et qu’il y a 123 processus au total.

Quand vous exécutez htop et que vous ne voyez qu’un seul processus, cela signifie qu’il s’agit du processus htop lui-même.

Si vous exécutez sleep 30 et que vous exécutez htop de nouveau, vous constaterez qu’il n’y a qu’un seul processus en cours d’exécution. C’est parce que sleep ne s’exécute pas, il dort ou tourne au ralenti (idling) ou en d’autres mots attend que quelque chose se produise. Un processus en cours d’exécution est un processus qui s’exécute en ce moment sur le CPU physique ou attend son tour pour s’exécuter sur le CPU.

Si vous exécutez cat /dev/urandom > /dev/null qui génère de façon répétée des octets aléatoires et les écrit vers un fichier spécial depuis lequel on ne peut jamais lire, vous verrez qu’il y a maintenant deux processus en cours d’exécution.

$ cat /dev/urandom > /dev/null &
 [1] 1639
 $ cat /proc/loadavg
 1.00 0.69 0.35 2/124 1679

Donc nous avons maintenant deux nous processus (la génération de nombres aléatoires et le cat qui lit le contenu de /proc/loadavg) et vous remarquerez que les load averages ont augmenté.

Le load average représente la charge du système moyenne pendant une période de temps.

Le nombre du load est calculé en comptant le nombre de processus en cours d’exécution (s’exécutant en ce moment ou en attente d’exécution) et les processus non-interruptibles (attente d’accès au disque ou activité réseau). Donc c’est simplement un nombre de processus.

Les load averages sont donc le nombre moyen de ces processus durant les 1, 5 et 15 dernières minutes, n’est-ce pas ?

En fait ça n’est pas aussi simple que ça.

Le load average est la moyenne exponentiellement amortie/pondérée en mouvement du chiffre du load. Dixit Wikipedia (en) :

Mathématiquement parlant, toutes les trois valeurs créent une moyenne de la charge système depuis le démarrage du système. Elles se désagrègent exponentiellement mais elles se désagrègent à des vitesses différentes. Donc, la charge sur une minute va ajouter 63% de charge de la dernière minute, plus 37% de la charge depuis le démarrage en excluant la dernière minute. Donc, il n’est pas techniquement juste que la charge sur une minute inclut l’activité des 60 dernières secondes (puisqu’elle inclut 37% du passé), mais qui inclut majoritairement la dernière minute.

C’est ce que vous attendiez ?

Retournons à notre génération des nombres aléatoires.

$ cat /proc/loadavg
 1.00 0.69 0.35 2/124 1679

Bien que techniquement incorrecte, c’est la façon dont je simplifie les load averages pour en parler plus facilement.

Dans ce cas, la génération de nombres aléatoires est limitée par le CPU, donc le load average de la dernière minute est 1.00 ou en moyenne un processus en cours d’exécution.

Comme il n’y a qu’un CPU sur mon système, l’utilisation CPU est de 100% puisque mon CPU ne peut exécuter qu’un processus à la fois.

Si j’avais deux coeurs, mon utilisation CPU serait de 50% puisque mon ordinateur peut exécuter deux processus en même temps. Le load average d’un ordinateur avec deux coeurs qui a 100% d’utilisation CPU serait de 2.00.

Vous pouvez voir le nombre de coeurs ou de CPUs dans le coin en haut à gauche de htop ou en exécutant nproc.

Parce que le chiffre du load inclut également les processus dans des états non-interruptibles, lesquels n’ont pas beaucoup d’effet sur l’utilisation CPU, il n’est pas tout à fait correct de déduire l’utilisation CPU depuis les load averages comme je l’ai fait. Cela explique également pourquoi vous pourriez constater un load average élevé mais peut de charge sur le CPU.

Mais il y a des outils comme mpstat qui peuvent montrer l’utilisation CPU instantanée.

$ sudo apt install sysstat -y
 $ mpstat 1
 Linux 4.4.0-47-generic (hostname) 12/03/2016 _x86_64_ (1 CPU)

10:16:20 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
 10:16:21 PM all 0.00 0.00 100.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
 10:16:22 PM all 0.00 0.00 100.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
 10:16:23 PM all 0.00 0.00 100.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
 # ...
 # kill cat /dev/urandom
 # ...
 10:17:00 PM all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
 10:17:01 PM all 1.00 0.00 0.00 2.00 0.00 0.00 0.00 0.00 0.00 97.00
 10:17:02 PM all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00

Pourquoi utilisons-nous les load averages alors ?

$ curl -s https://raw.githubusercontent.com/torvalds/linux/v4.8/kernel/sched/loadavg.c | head -n 7
 /*
 * kernel/sched/loadavg.c
 *
 * This file contains the magic bits required to compute the global loadavg
 * figure. Its a silly number but people think its important. We go through
 * great pains to make it work on big machines and tickless kernels.
 */

Traduction du commentaire dans le fichier source : Ce fichier contient des bits magiques requis pour calculer le chiffre du loadavg global. C’est un nombre idiot mais les gens pensent que c’est important. Nous éprouvons de grandes douleurs pour le faire marcher sur les grosses machines et les noyaux tickless.


Ce sera tout pour aujourd’hui 🙂 J’espère que comme moi vous aurez appris des éléments sur le load average de votre système. Nous continuerons cette série dès lundi avec les processus dans htop.

bansieau.png Benoît ANSIEAU

Privacy Digital Assistant

Le 07 December 2016 à 10:45:32

Alors que mes réflexions me portent sur les effets nocifs de l’hyper-connectivité de notre monde, mon esprit s’égare à imaginer les évolutions des «Personal Digital Assistant», fleuron des poches numérisée des années 90.

Qu’aurait pu donner la version 2016/2017 d’un Handled Pc, d’un Psion … Non pas ce qu’ils ont donné, mais ce qu’ils auraient pu.

En bref, quel pourrait être, avec les technologies actuelles, l’appareil dans cet esprit qui ne jouerait ni la surenchère technologique, ni l’hyper-connectivité, et qui aurait le bon ton de chercher à protéger notre vie privée.

Un «Privacy Digital Assistante» ou Gestionnaire Numérique de Vie Privée.

Cahier des charges

Simple

Un ordinateur est finalement un très bon idiot, il ne fait que ce qu’on lui demande avec la plus grande efficacité possible. Vouloir le rendre trop intelligent est souvent une erreur. Il devient plus difficile à comprendre et à vouloir en faire trop il en vient parfois à simplement faire mal : Combien de gens pestent contre la correction orthographique de leur téléphone portable qui parfois changent complètement le sens de leurs écrits ?

Un ordinateur simple, ce qui ne l’empêche pas d’être complet et efficace (bien au contraire), devient un assistant prévisible et fiable.

De plus un système simple qui ne fait pas une débauche de fonctionnalités peu permettre d’avoir un logiciel mieux optimisé et des besoins en ressources minimisé.

Ouvert et Standard

Toujours dans cette optique de simplicité, le système se doit d’être le plus standard et ouvert possible. Utilisant du logiciel libre audit-able, modifiable et corrigeable par les utilisateurs. Traitant des fichiers dans des formats standards et ouverts pour maximiser la simplicité de conservation et de traitement sur d’autres appareils.

Communication réduite

Ouvrir un appareil au monde, et le connecter de multiples façons, c’est lui permettre d’être à jour avec le monde. C’est lui permettre de communiquer les informations que l’on veux, mais aussi bien souvent celle que l’on ne veux pas (par malveillance ou inadvertance). Et si faire communiquer un appareil est le connecter au monde, c’est aussi connecter le monde, et toute l’hostilité dont il est capable, sur cet appareil.

Non contant de lui permettre, on oblige aujourd’hui les appareils à être «à jour» avec le monde. Un appareil «non à jour» est potentiellement vulnérable, et n’assure plus son rôle de protection des données privées qu’il contient. Pire : le matériel, souvent parfaitement saint, est souvent mis au rencard (ou au rebut) pour défaut de mise à jour logicielle, et d’adaptation au monde.

Pas de Wifi, Bluetooth, NFC, 3/4/5G ou autre systèmes de communication à la mode (ou non). Le tout est réduit au strict utile et essentiel : USB et Carte(s) mémoire(s) sont largement suffisants pour assurer toute la connectivité nécessaire hors de tout réseau.

Être déconnecté, en plus de réduire la nécessité des mises à jour et de limiter les vecteurs d’attaques de l’appareil, va restreindre les intérêts relatifs au pistage et à la publicité apporté par notre hyper-connectivité, mais aussi réduire la consommation d’énergie de notre appareil et augmenter son autonomie en mobilité.

Un compagnon du quotidien

Notre vie est de plus en plus mobile, et gérer ses informations personnelles ou que l’on soit est de plus en plus attendu. L’appareil se devrait donc d’être mobile, voir ultra-mobile. Un appareil pratique à utiliser, et que l’on puisse avoir avec soi le plus souvent possible. Idéalement qui puisse rentrer dans une (grande ?) poche.

Ajustements personnels

En un sens le format des Psion série 5 ou des Sony VAIO P, me semble très intéressant (même si je n’en ai jamais eu entre les mains et que je me fait peut être une mauvaise idée).

  • Format compact pour plus de mobilité
  • Écran de taille sympathique
    • La couleur n’est pas forcément nécessaire
    • Un bon trackpoint vaux mieux qu’un écran tactile
  • Un vrai clavier pour avoir un vrai confort de frappe

Réalisation

C’est une image très théorique que j’ai pour le moment d’un tel appareil, se basant essentiellement sur l’image que j’ai de machines passées.

Et même si un Raspberry Pi Zéro me semble avoir beaucoup d’atout pour constituer le centre nerveux d’un tel système (Compacité, puissance limité mais suffisante, connectivité limitée, matériel aujourd’hui courant, …) le reste du matériel (Écran, Clavier, …) me pose aujourd’hui bien plus de difficultés pour une concrétisation de cette idée.

D’autant plus pour arriver à quelques choses de compact et s’éloignant esthétiquement du bricolage sommaire.

bsibaud.png Benoît SIBAUD

Dons aux associations, épisode 5

Le 07 December 2016 à 09:38:14

Cette dépêche est la 5e de sa série, après celles de 2011, 2013, 2014 et 2015. Une nouvelle fois j'ai entendu des échos comme « merci d'avoir généré des dons l'année passée » ou « n'oublie pas de refaire ta dépêche sur les dons aux assos », donc nous y voilà.

Montre ton amour au libre

Pour la 5e fois, je m'adresse à toi libriste, qui a procrastiné jusqu'aux dernières heures pour faire des dons déductibles des impôts (ou non). Tu t'étais promis toute l'année (et celle d'avant) de soutenir telle ou telle action sur tel ou tel sujet qui te semblait extrêmement important. Citons par exemple quelques associations de promotion et défense du libre, des droits dans l'espace numérique ou de la liberté d'expression, dont les dons sont déductibles en France : Amnesty France, Debian France, Framasoft, Fédération internationale des ligues des droits de l'homme (FIDH), Ligue des Droits de l'Homme (LDH), OpenStreetMap France, Reporters Sans Frontières (RSF), Wikimedia France, etc.

Et comme tu fais vivre les principes du libre, que tu contribues à des projets libres et défends des idées, tu soutiens aussi des associations ne bénéficiant pas de la déductibilité des dons en France (par exemple des associations jugées trop dérangeantes ou trop critiques par le gouvernement… ou des associations européennes ou non). Citons par exemple AFUL, April, European Digital Rights (EDRi), FACIL, FFII, FSF (avec une longue liste de méthodes pour donner), FSF Europe (à confirmer, voir la décision C-318/07 évoquée plus bas), Internet Archive (déductible aux États-Unis), GNOME, KDE e.V, Léa-Linux, LILA, LQDN, OKFN, Toile Libre, Ubuntu-Fr, etc. (notez qu'elles peuvent parfois avoir la déductibilité des dons dans d'autres pays).

Cette dépêche récurrente vit aussi grâce à vos remarques, propositions d'ajouts, de compléments et vos retours sur les systèmes fiscaux et les dons dans vos pays respectifs. N'hésitez pas à la commenter pour l'enrichir.

    Sommaire

    Précision : la dépêche parle bien de « don » (je soutiens sans rien obtenir à titre personnel), pas de « financement participatif avec contrepartie » (je co-finance en échange de goodies/avantages), les deux étant destinés à des choses différentes. Pour ceux qui ont lu jusqu'ici, un dessin xkcd sur le sujet en récompense (et d'autres images plus loin pour récompenser les libristes patients qui liront jusqu'au bout).

    Pourquoi les associations ayant des permanents ont des besoins récurrents d'argent ? (tiré de l'épisode 3)

    Quand une association veut passer de zéro à un permanent ou à un permanent de plus, elle n'a généralement pas en réserve de quoi le payer sur une année complète. Elle prend donc un risque avec une visibilité sur x mois (comme n'importe quel chef d'entreprise), en faisant de son mieux pour que l'argent rentre (le nouveau permanent va « produire », une campagne de communication ou d'appels à don ou autres sera lancée, une subvention sera recherchée, une convention sera signée avec tel ou tel, des goodies seront vendus, etc.).

    Soutenez Framasoft, parce que le libre n'est pas qu'une question de logiciel

    Une association qui ne veut pas s'embêter à rechercher des fonds ou qui ne vise pas à passer le cap du premier permanent n'a pas du tout ce souci et peut être très indolente si elle veut.

    Dès qu'il y a un besoin récurrent de payer des salariés, de payer à date les charges de l'employeur — qu'il faut prévoir à 3 mois s'il faut gérer un préavis de licenciement économique ou pas, etc. cela devient plus compliqué (comme pour n'importe quel chef d'entreprise). Une association militante qui ne prendrait pas de risque financier du tout, ce n'est pas envisageable à mon avis. Toute la question étant de savoir combien elle réussit à faire rentrer d'argent au moment où c'est nécessaire, si elle peut continuer à embaucher pour grossir/faire plus d'actions/faire mieux, si elle doit licencier ou si elle doit stagner/continuer ainsi dans l'immédiat.

    Donc oui, on a toujours l'impression que les associations ayant des permanents recherchent de l'argent (et décembre est particulier car c'est la fin de l'exercice fiscal et traditionnellement la période des dons défiscalisés, notamment côté humanitaire associé aux bons sentiments des fêtes de fin d'année). Et oui en décembre, la Croix Rouge, April, RSF, LQDN, la FSF, Amnesty, Framasoft et bien d'autres font des appels à don.

    Soutenons La Quadrature du Net !

    Petit rappel pour ceux concernés par les impôts en France (tiré de l'épisode 4 et mis à jour)

    • l'article 200 du code général des impôts prévoit pour un particulier une déduction fiscale de 66 % (réduction d'impôt sur le revenu dans la limite de 20 % du revenu imposable, reportable sur cinq ans en cas de dépassement de ce plafond) des dons vers les associations d'intérêt général ou reconnues d'utilité publique. Ce pourcentage monte même à 75 % pour les organismes d'aide aux personnes en difficulté (dans la limite de 521 €, au-delà, on retombe sur les 66 %) ;
    • l'article 238bis du CGI prévoit une déduction fiscale de 60 % des dons pour une entreprise (réduction d'impôt sur le revenu ou d'impôt sur les sociétés dans la limite de 5 ‰ du chiffre d'affaires hors taxes, reportable sur cinq ans en cas de dépassement de ce plafond) vers les associations d'intérêt général ou reconnues d'utilité publique ;
    • Fiche pratique ServicePublic.fr : « À savoir : les sommes versées à des organismes agréés situés dans un État membre de l'Union européenne, en Islande ou en Norvège ouvrent également droit à la réduction d'impôt. À défaut d'agrément, vous devez justifier que l'organisme poursuit des objectifs et présente des caractéristiques similaires aux organismes situés en France. »

    Exemple pour un particulier : je suis imposable et donne 99 € à l'association XYZ bénéficiant de la déductibilité des dons à hauteur de 66 %. Mon don me coûte en fait (au final) 33 €, j'ai temporairement avancé 66 € qui seront ensuite déduits de mon imposition fiscale (dit autrement, j'ai choisi l'attribution de 66 € du budget de l'État).

    Soutenir Framasoft

    Autres infos :

    20 ans April

    Petit rappel pour ceux concernés par les impôts hors France (tiré de l'épisode 4 et mis à jour)

    Forcément je connais mieux le sujet pour la France, mais voici néanmoins quelques infos glanées pour d'autres pays (et je ne doute pas que les visiteurs compléteront dans les commentaires) :

    Exemple de dons financiers et parfois de temps (tiré de l'épisode 4 mais mis à jour)

    « Sacrifier une partie de son revenu pour faire un don à une association, c'est une affaire sérieuse. » (patrick_g)

    Liste non exhaustive de dons financiers ou de temps à des associations du libre ou pour libérer quelque-chose :

    April fête ses 18 ans

    Libreassociation

    Soutien April

    Exemple de dons de matériel / ressources (tiré de l'épisode 4 mais mis à jour)

    Liste non exhaustive :

    Johann "nojhan" - CC-BY-SA-fr, LAL, GFDL

    Diffusion des idées et questionnements autour du don (tiré de l'épisode 4 et mis à jour)

    Liste non exhaustive :

    Lettre au Père Noël - Clément Clem Quaquin - Licence Art Libre

    Don à une entreprise ? (tiré de l'épisode 4 et mis à jour)

    Une question un peu annexe ici vu le titre « dons aux associations » mais qui a déjà été posée ici ou sur LinuxFr.org : peut-on faire un don (sans contrepartie) à une entreprise ? Pour prendre deux sites que j'aime bien : il semblerait que Next INpact (SARL de presse) ait opté pour un statut premium (avec contrepartie donc) parce que ce n'était pas possible, mais bénéficie en plus de dons déductibles via la plateforme de dons pour la presse en ligne « J'aime l'info ». Tandis que Reflets.info (SAS) accepte les dons.

    Lors d'une recherche rapide précédente, j'avais vu évoquer l'utilisation du compte 7713 « libéralités perçues » du plan comptable, d'un justificatif clair pour la comptabilité (un expert comptable et/ou un notaire sont évoqués), d'une exonération de TVA si aucune vente de bien/service n'est associée ; bref la question des taxes/impôts à payer pour le donateur (60% entre non-parents ?) et l'entreprise n'est pas forcément claire. Cela reste assez flou et hypothétique, et ça mériterait une question aux impôts.

    "Oups j'ai procrastiné sur mes dons" Généré avec https://framalab.org/gknd-creator/.

    Logiciels libres pour gérer les dons (tiré de l'épisode 4 et mis à jour)

    La question avait été posée lors de l'épisode 3 de cette série de dépêches : quel(s) logiciel(s) libre(s) utiliser pour faire les dons ? Ou pour les gérer ? En général pour les faire, un navigateur fait l'affaire : paiement en ligne, réception de l'éventuel reçu fiscal, réception d'un éventuel message de remerciement.

    Pour les reçus fiscaux, il convient de les conserver avec les documents des impôts pendant le temps nécessaire (suivant la législation locale).

    Pour les dons via des intermédiaires, par exemple Liberapay, HelloAsso ou Tipeee, il faut conserver soigneusement les identifiants du compte créé pour l'année suivante.

    Si vous avez opté pour l'adhésion à une structure plutôt que le don, vous allez recevoir des identifiants aussi et probablement une lettre interne ou des choses du genre, ainsi qu'une convocation à une assemblée générale annuelle certainement.

    Et si vous avez opté pour versement régulier (virement ou prélèvement), ça ne change pas fondamentalement les choses ; éventuellement l'organisme qui prélève vous prévient un peu avant chaque prélèvement par courriel.

    Il existe aussi dans le libre des logiciels ou des événéments spécialement prévus pour les dons :

    À ma connaissance, le site HelloAsso évoqué dans un commentaire récent n'utilise pas une plateforme libre, contrairement à Liberapay.

    Lire les commentaires

    ggravier.png Gilles GRAVIER

    Is Your Open Source Strategy Serving Your Corporate Strategy ?

    Le 07 December 2016 à 08:28:46

    I just posted a new article on Wipro's corporate page about how to leverage your open source strategy to better serve your corporate strategy.

    The article is posted here : http://www.wipro.com/insights/industry-research/hitech/is-your-open-source-strategy-serving-your-corporate-strategy/

    And it is also available as a direct PDF to download here : http://www.wipro.com/documents/Is-Your-Open-Source-Strategy-Serving-Your-Corporate-Strategy.pdf

    I hope you find it useful!

    Don't hesitate to comment here!

    05 December 2016

    Carl Chenet

    htop expliqué, partie 1 : l’uptime

    Le 05 December 2016 à 23:00:45

    Avec l’accord de Pēteris Ņikiforovs, auteur original de l’excellent article htop explained : Explanation of everything you can see in htop/top on Linux (1er sur Hacker News, 1er sur /r/sysadmin, 2nd sur /r/linux), j’entreprends une série d’articles visant à traduire en français son excellente explication de htop et des notions de base d’un système GNU/Linux présentées par ce programme.

    L’approche didactique m’est apparue excellente et me semble pouvoir être d’une grande aide à toutes les personnes intéressées par ce qui se passe sur leur système GNU/Linux. Une traduction en français s’imposait donc 🙂

    Aujourd’hui : l’uptime.


    htop expliqué

    Explication de tout ce que vous pouvez voir dans htop/top sur Linux

    Bien longtemps je n’ai pas su ce que toutes les valeurs dans htop signifiaient.

    Je pensais qu’un load average de 1.0 sur ma machine à deux coeurs signifiait que l’utilisation CPU était de 50%. Ce n’est pas tout à fait vrai. Et entre autre, pourquoi 1.0 ?

    J’ai alors décidé de tout chercher et de le documenter ici.

    Il est aussi dit que le meilleur moyen d’apprendre quelque chose est de tenter de l’enseigner.

    htop sur Ubuntu Server 16.04 x64

    Voici une copie d’écran de htop que je vais décrire.

    htop

    Uptime

    L’uptime montre depuis combien de temps un système s’exécute.

    Vous pouvez voir les mêmes informations en exécutant la commande uptime :

    $ uptime 12:17:58 up 111 days, 31 min, 1 user, load average: 0.00, 0.01, 0.05

    Comment le programme uptime sait-il cela ?

    Il lit ces informations depuis le fichier /proc/uptime.

    9592411.58 9566042.33

    Le premier nombre est le nombre total de secondes pendant lequel le système s’exécute. Le second nombre est combien de secondes la machine a tourné au ralenti (idle). La seconde valeur peut être plus grande que l’uptime du système sur les systèmes avec de multiples coeurs puisqu’il s’agit d’une somme.

    Comment l’ai-je su ? j’ai observé quels fichiers le programme uptime ouvrait lorsqu’on l’exécute. Nous pouvons utiliser l’outil strace pour cela.

    $ strace uptime

    Il va s’afficher beaucoup de choses. Nous pouvons utiliser grep pour l’appel système open. Mais cela ne marchera pas vraiment puisque strace redirige tout sur le flux de l’erreur standard (stderr). Nous pouvons rediriger stderr vers le flux de la sortie standard (stdout) avec 2>&1.

    $ strace uptime 2>&1 | grep open
    ...
    open("/proc/uptime", O_RDONLY) = 3
    open("/var/run/utmp", O_RDONLY|O_CLOEXEC) = 4
    open("/proc/loadavg", O_RDONLY) = 4

    qui contient le fichier /proc/uptime que j’ai déjà mentionné.

    Il se trouve que vous pouvez aussi utiliser strace -e open uptime et ne pas vous embêter avec grep.

    Mais pourquoi avons-nous besoin du programme uptime si nous pouvons juste lire le contenu du fichier ? La sortie de la commande uptime est joliment formatée pour les humains tandis que le nombre de secondes est plus utile à réutiliser dans nos programmes ou scripts.


    Premier partie en forme de mise en bouche, nous continuerons dans le second article de cette série par la notion de load average.

    april.png Nouvelles April

    Revue de presse de l'April pour la semaine 48 de l'année 2016

    Le 05 December 2016 à 14:54:57

    La revue de presse de l'April est régulièrement éditée par les membres de l'association. Elle couvre l'actualité de la presse en ligne, liée au logiciel libre. Il s'agit donc d'une sélection d'articles de presse et non de prises de position de l'association de promotion et de défense du logiciel libre.

    En podcast.

    Sommaire de la revue de presse de l'April pour la semaine 48

    [la montagne] Puy-de-Dôme: les ordinateurs retrouvent une deuxième vie dans les écoles rurales

    Par Pierre Peyret, le vendredi 2 décembre 2016. Extrait:
    > Dans le Puy-de-Dôme, tous les ordinateurs jugés obsolètes ne finissent pas à la benne. L’association des maires ruraux en a déjà reconditionné et distribué plus de 400 à des écoles.
    Lien vers l'article original: http://www.lamontagne.fr/murol/ruralite/vie-associative/2016/12/02/puy-de-dome-les-ordinateurs-retrouvent-une-deuxieme-vie-dans-les-ecoles-rurales_12191456.html

    [Le Temps] Les dérives managériales de la théorie des incitations

    Par Michel Ferrary, le jeudi 1 décembre 2016. Extrait:
    > Comment amener le salarié à adopter le comportement attendu par l’employeur quand ce dernier ne peut pas le contrôler?
    Lien vers l'article original: https://www.letemps.ch/economie/2016/12/01/derives-manageriales-theorie-incitations

    [Numerama] L'Internet Archive appelle aux dons pour se dupliquer au Canada, loin de Trump

    Par Alexis Orsini, le mercredi 30 novembre 2016. Extrait:
    > La fondation américaine d'archivage du web, créée en 1996, appelle aux dons pour pouvoir dupliquer sa gigantesque base de données au Canada. Une décision motivée par ses inquiétudes sur l'avenir du web sous la présidence de Donald Trump.
    Lien vers l'article original: http://www.numerama.com/politique/212992-linternet-archive-appelle-aux-dons-pour-se-dupliquer-au-canada-loin-de-trump.html

    [Libération] Quand les multinationales forcent la porte des collèges

    Par Valérie Brun, Patricia Combarel, Liêm-Khê Luguern, Pascal Pragnère et Laurent Rouzière, le mercredi 30 novembre 2016. Extrait:
    > Des professeurs d'un collège du Tarn dénoncent les intrusions des entreprises telles que Nestlé, Total ou Microsoft sous la forme de «kits pédagogiques». Avec l'idée d'inculquer des comportements de consommateur aux individus dès leur plus jeune âge.
    Lien vers l'article original: http://www.liberation.fr/debats/2016/11/30/quand-les-multinationales-forcent-la-porte-des-colleges_1531992

    [Le Figaro] Les défenseurs du logiciel libre découragés par l'Education nationale

    Par Elisa Braun, le mercredi 30 novembre 2016. Extrait:
    > Accusant l'Education nationale de privilégier des partenariats privés avec Microsoft au détriment de solutions alternatives gratuites, Framasoft ne répondra plus à ses sollicitations.
    Lien vers l'article original: http://www.lefigaro.fr/secteur/high-tech/2016/11/30/32001-20161130ARTFIG00001-les-defenseurs-du-logiciel-libre-decourages-par-l-education-nationale.php

    [Next INpact] Regards Citoyens face à «l’extrême difficulté» d’analyser les consultations en ligne

    Par Xavier Berne, le lundi 28 novembre 2016. Extrait:
    > Consulter les internautes est une chose, en lire les commentaires en est une autre. Après avoir lancé un premier outil de crowdsourcing destiné à épauler les députés, l'association Regards Citoyens vient de publier une analyse de cette expérience.
    Lien vers l'article original: http://www.nextinpact.com/news/102293-regards-citoyens-face-a-l-extreme-difficulte-d-analyser-consultations-en-ligne.htm

    [Le Figaro] «3 % des femmes dans l'open, c'est trop peu»

    Par Sylvia di Pasquale, le lundi 28 novembre 2016. Extrait:
    > L'invité RH, Charlotte de Broglie, fondatrice de l'AdaWeek, nous parle de la place des femmes dans les STEM, acronyme anglais pour définir les métieurs scientifiques, techniques, ingénierie et mathématiques. Pour cadremploi.fr et lefigaro.fr elle explique à quoi sert l'AdaWeek.
    Lien vers l'article original: http://www.lefigaro.fr/emploi/2016/11/28/09005-20161128ARTFIG00260--3-des-femmes-dans-l-open-c-est-trop-peu.php

    [ZDNet France] Emploi: les entreprises du logiciel libre continuent à embaucher

    Par Thierry Noisette, le vendredi 25 novembre 2016. Extrait:
    > Fortes d'une croissance confortable en 2015-2016 dont elles prévoient le maintien, les sociétés membres du CNLL comptent recruter 1.000 salariés en 2017.
    Lien vers l'article original: http://www.zdnet.fr/actualites/emploi-les-entreprises-du-logiciel-libre-continuent-a-embaucher-39845228.htm

    Note

    Les articles de presse utilisent souvent le terme « Open Source » au lieu de Logiciel Libre. Le terme Logiciel Libre étant plus précis et renforçant l'importance des libertés, il est utilisé par l'April dans sa communication et ses actions. Cependant, dans la revue de presse nous avons choisi de ne pas modifier les termes employés par l'auteur de l'article original. Même chose concernant l'emploi du terme « Linux » qui est généralement utilisé dans les articles pour parler du système d'exploitation libre GNU/Linux.

    Le « gouvernement ouvert » à la française : un leurre ?

    Le 05 December 2016 à 12:28:51

    Alors que la France s’apprête à accueillir le Sommet mondial du Partenariat pour un Gouvernement Ouvert, plusieurs associations pointent les contradictions du gouvernement. Certaines ne s’y rendront pas.

    Bilan du gouvernement ouvert à la française (9 pages), co-signé par les associations et collectifs suivants : ANTICOR, April, BLOOM, DemocracyOS France, Fais ta loi, Framasoft, La Quadrature du Net, Ligue des Droits de l’Homme, Regards Citoyens, République citoyenne, SavoirsCom1.

    Derrière un apparent « dialogue avec la société civile », la France est loin d'être une démocratie exemplaire

    Le « gouvernement ouvert » est une nouvelle manière de collaborer entre les acteurs publics et la société civile, pour trouver des solutions conjointes aux grands défis auxquels les démocraties font face : les droits humains, la préservation de l’environnement, la lutte contre la corruption, l’accès pour tous à la connaissance, etc.

    Soixante-dix pays se sont engagés dans cette démarche en adhérant au Partenariat pour un Gouvernement Ouvert (PGO), qui exige de chaque État la conception et la mise en œuvre d'un Plan d’action national, en collaboration étroite avec la société civile.

    La France a adhéré au Partenariat pour un Gouvernement Ouvert en avril 2014, et publié son premier Plan d’action national en juillet 2015. Depuis octobre 2016, le gouvernement français co-préside le PGO, avec l’association américaine WRI (World Resource Institute) et la France accueille le Sommet mondial du PGO à Paris, du 7 au 9 décembre 2016, présenté comme la « COP 21 de la démocratie ».

    En tant que « pays des droits de l’Homme », nation co-présidente et hôte du Sommet mondial du PGO, on pourrait attendre de la France qu’elle donne l’exemple en matière de gouvernement ouvert.

    Hélas, à ce jour, les actes n’ont pas été à la hauteur des annonces, y compris dans les trois domaines que la France elle-même considère prioritaires (1. Climat et développement durable ; 2. Transparence, intégrité et lutte contre la corruption ; 3. Construction de biens communs numériques) et ce, malgré l’autosatisfaction affichée du gouvernement. Pire, certaines décisions et pratiques, à rebours du progrès démocratique promu par le Partenariat pour un gouvernement ouvert, font régresser la France et la conduisent sur un chemin dangereux.

    Les associations signataires de ce communiqué dressent un bilan critique et demandent au gouvernement et aux parlementaires de revoir certains choix qui s'avèrent radicalement incompatibles avec l’intérêt général et l’esprit du PGO, et de mettre enfin en cohérence leurs paroles et leurs actes.

    Lire le bilan complet (9 pages).

    Les co-signataires

    ANTICOR est une association fondée en juin 2002 par Éric Halphen et Séverine Tessier pour lutter contre la corruption et rétablir l’éthique en politique.

    L'April est la principale association de promotion et de défense du logiciel libre dans l'espace francophone. La mobilisation de ses bénévoles et de son équipe de permanents lui permet de mener des actions nombreuses et variées en faveur des libertés informatiques.

    BLOOM, Fondée en 2005 par Claire Nouvian, BLOOM est entièrement dévouée aux océans et à ceux qui en vivent. Sa mission est d’œuvrer pour le bien commun en mettant en œuvre un pacte durable entre l’homme et la mer.

    DemocracyOS France est une association qui promeut l'usage d'une plateforme web open source permettant de prendre des décisions de manière transparente et collective.

    Fais Ta Loi est un collectif qui a pour but d'aider les publics les plus éloignés du débat démocratique à faire entendre leur voix au Parlement.

    Framasoft est un réseau dédié à la promotion du « libre » en général et du logiciel libre en particulier.

    Ligue des Droits de l’Homme : agit pour la défense des droits et libertés, de toutes et de tous. Elle s’intéresse à la citoyenneté sociale et propose des mesures pour une démocratie forte et vivante, en France et en Europe.

    La Quadrature du Net : La Quadrature du Net est une association de défense des droits et libertés des citoyens sur Internet.

    Regards Citoyens est un collectif transpartisan né en 2009 qui promeut la transparence démocratique et l'ouverture des données publiques pour alimenter le débat politique. Il est a l'initiative d'une douzaine d'initiatives dont NosDeputés.fr et LaFabriqueDeLaLoi.fr.

    République citoyenne est une association, créée en 2013, qui a pour but de stimuler l’esprit critique des citoyens sur les questions démocratiques et notamment sur le gouvernement ouvert.

    SavoirsCom1 est un collectif dédié à la défense de politiques publiques en faveur des Communs de la connaissance.

    bsibaud.png Benoît SIBAUD

    LinuxFr.org : seconde quinzaine de novembre 2016

    Le 05 December 2016 à 09:36:37

    Soixante‐et‐unième épisode dans la communication entre les différents intervenants autour du site LinuxFr.org : l’idée est tenir tout le monde au courant de ce qui est fait par les rédacteurs, les admins, les modérateurs, les codeurs, les membres de l’association, etc.

    L’actu résumée ([*] signifie une modification du sujet du courriel) :

    Statistiques

    • 1 902 commentaires publiés (dont aucun masqué depuis) ;
    • 299 tags posés ;
    • 112 comptes ouverts (dont 2 fermés depuis) ;
    • 67 entrées de forums publiées (dont 3 masquées depuis) ;
    • 20 dépêches publiées ;
    • 27 journaux publiés (dont aucun masqué depuis) ;
    • 2 entrées dans le système de suivi (dont aucune fermée depuis) ;
    • 1 sondage publié ;
    • 0 page wiki publiée.

    Listes de diffusion (hors pourriel)

    Liste linuxfr-membres@ — [restreint]

    • R.A.S.

    Liste meta@ — [restreint]

    • [Meta] Première quinzaine de novembre 2016
    • [Meta] moules`bouffe

    Liste moderateurs@ — [restreint]

    • [Modérateurs] Linux, l’heure du test — épisode 1 — Linux Mint
    • [Modérateurs] Fermeture de compte

    Liste prizes@ — [restreint]

    • R.A.S.

    Liste redacteurs@ — [public]

    • R.A.S.

    Liste team@ — [restreint]

    • [team linuxfr] Fwd: Silex Labs et apéro networking le 30 nov

    Liste webmaster@ — [restreint]

    • R.A.S.

    Canal IRC adminsys (résumé)

    Tribune de rédaction (résumé)

    • discussions sur les séries de dépêches autour de l’électronique et du C++ ;
    • demande du logo d’hiver pour cause de froid ;
    • un bot qui réplique les messages entre IRC, XMPP et une tribune : replopbot ;
    • Saint‐Étienne accueillera la Linux Audio Conference 2017 et les RMLL 2017 ;
    • POSS : collecter des goodies, distribuer des autocollants et faire gagner des livres et des abonnements.

    Tribune de modération (résumé)

    • l’habituelle gestion du pourriel ;
    • préparation de la conférence à Capitole du Libre, direct et premiers retours ;
    • halte à la censure ;
    • nouveau sondage.

    Commits/pushs de code https://github.com/linuxfrorg/

    • R.A.S.

    Divers

    Lire les commentaires

    04 December 2016

    Carl Chenet

    L’édito de décembre 2016

    Le 04 December 2016 à 23:00:51

    Au cours du mois de novembre j’ai publié 8 billets relatifs aux usages et pratiques dans le Logiciel Libre et aux projets de logiciels que j’ai créés, comme Retweet ou PyMoneroWallet. La série d’articles Dans le Libre plaît bien et je m’en réjouis car il ne s’agit pas de billets simples en général, mais je pense qu’ils apportent vraiment des aspects souvent mal compris (ou compris trop tard) aux lecteurs qui iront au bout 🙂

    monero-logo

    Le Monero, crypto-monnaie dont j’ai déjà parlé ici, pour lequel j’ai écrit une bibliothèque PyMoneroWallet

    Spéciale dédicace à mon billet sur Pourquoi je préfère la licence GPL aux licence permissives type BSD/MIT. C’est un sujet délicat et je ne voulais surtout pas imposer mon point de vue comme une vérité et que ça parte en troll complet. Ma démarche a été comprise et les commentaires ont été de grande qualité.

    bsdvsgpl

    GPL vs BSD, une opposition ancienne reposant sur des conceptions différentes de la liberté

    Le réseau social Diaspora*

    J’ai investi beaucoup de temps dans le réseau social Diaspora* récemment. Je prends beaucoup de plaisir à relayer du contenu vers ce réseau social, à y créer des liens et à y lire ce qui s’y passe. Le format plus expansif que Twitter permet, je trouve, des bons formats intermédiaires, entre les 140 caractères et les classiques billets de blog.

    diaspora

    Le logo de Diaspora*

    Je vous conseille vraiment d’y jeter un coup d’œil si tout ce qui touche au Libre, aux mouvements alternatifs d’idées et à l’art actuel vous intéressent. J’ai personnellement un compte sur le Framasphere de Framasoft, merci à eux pour cette initiative, même si j’attends maintenant impatiemment l’implémentation de la fonctionnalité d’import/export d’un compte d’un pod à l’autre, fonctionnalité pour laquelle un financement participatif a été réalisé.

    Journal du hacker

    Le mois de novembre m’a réservé quelques surprises. Après la très réussie soirée anniversaire du Journal du hacker le 5 novembre dernier (merci à tout ceux qui étaient présents), j’ai repris mon travail sur la version 2 et les choses ont avancé beaucoup plus vite que je l’avais imaginé.

    logo-journal-du-hacker

    Le 20 novembre le blog du Journal du hacker ainsi que les services relatifs aux réseaux sociaux migraient vers le nouveau serveur. Et après un dernier coup de collier de la part de toute l’équipe sur la version 2, nous étions prêts à migrer le site principal vers le nouveau serveur. La migration du site principal ne saurait tarder.

    Perspectives pour le mois de décembre 2016

    Bon, on s’en doute, l’activité va fortement ralentir dans la seconde partie du mois de décembre avec les fêtes toussa, mais j’espère placer quelques articles d’ici-là, surtout qu’il y a des bonnes choses dans les cartons qui ne demandent plus qu’à en sortir (pas les cadeaux, les projets). Et ce dès mercredi 😉 À bientôt !

     

    bsibaud.png Benoît SIBAUD

    Conférence LinuxFr(.org), mais refaire ?

    Le 04 December 2016 à 12:26:36

    L’événement Capitole du Libre 2016 a eu lieu le week‐end des 19 et 20 novembre. Les différents supports de conférences, photos et vidéos seront bientôt mis en ligne par l’organisation (voir par exemple). Alors, en attendant je vais vous parler de la conférence que j’y ai donnée.

         Benoît Sibaud devant la première diapo          Photo de Wanda, organisation CDL

    Son sujet : « le site LinuxFr.org existe depuis plus de 17 ans. Profitons‐en pour une petite rétrospective tendance “Et si ?”. Au fil des années, le site LinuxFr.org et l’association LinuxFr ont connu de multiples changements. Cela concerne les évolutions techniques (matériel et logiciel) bien sûr. Mais cela comprend aussi des changements législatifs (ce qui est permis/interdit, ce qu’il faut modérer, etc.). Le public n’est plus le même et la façon de lire le site non plus. Les thématiques ont évolué, par exemple de l’ordi perso vers les services en ligne et les mobiles. Le coût d’un tel site a changé en termes financiers (domaine, certificat, etc.) ou en tracas juridiques (plaintes et menaces). Les bénévoles du site se sont succédés. Pourrait‐on refaire LinuxFr.org ? Le faudrait‐il ? Que faudrait‐il changer ? Et, que faudra‐t‐il changer ? »

    Sommaire

    Benoît Sibaud devant la diapo « Geekscottes »              Photo de Wanda, organisation CDL

    La conférence à Capitole du Libre

    Le support de conférence est disponible en PDF et en source HTML reveal.js (archive tar.xz), ainsi que quelques photos prises par Wanda pour l’organisation ou par tankey depuis la salle. Merci aussi à Benoît Salles pour le gazouillage en direct.

    Sommaire de la conférence : C’est quoi LinuxFr.org ? Pourquoi ce sujet plutôt qu’un autre ? Le nom, l’association, les services aux adhérents ou aux visiteurs, le modèle économique, l’équipe, les serveurs, l’hébergement, les logiciels, les questions techniques, les licences, l’audience, la modération, le juridique / législatif et les chatons.

    Un mini‐hackathon le jeudi 8 décembre 2016 à Paris

    Le mini‐hackathon évoqué durant la conférence aura lieu le 8 décembre dans le cadre des Jeudis contribution au Libre organisés par Parinux : en attendant d’organiser un événement dédié, commençons par profiter de la logistique d’un événement déjà en place et régulier. Et voyons aussi combien de gens viennent participer pour aider sur le code, l’écriture de contenu, les feuilles de style CSS, le graphisme ou l’administration système du site.

    Les questions hors conférence à Capitole du Libre

    Hors caméra/micro (de mémoire), quelques questions posées (les réponses données ici sont rédigées et ne correspondent pas forcément exactement à ce qui a été dit à chaud et en direct) :

    • Question : Est‐ce que tu es satisfait de venir à Capitole du Libre, avec une audience plus ou moins restreinte ?
    • Réponse : sur Capitole du Libre, il y a 13 autres conférences en parallèle et je ne m’attendais donc pas à faire salle comble. D’autant moins en sachant que je serais dans l’amphi de la plénière (capacité 400 places) :-). Dans les différentes conférences LinuxFr.org que j’ai pu faire (seul ou avec Bruno Michel, par exemple), aux RMLL un peu partout ou aux Ubuntu Parties à Paris, le public est toujours de quelques dizaines de personnes (globalement entre 20 et 50). Les visiteurs nous connaissent déjà pour la plupart, ce qui ne les incitent pas forcément à venir voir si notre conférence est palpitante ou non. Mais c’est intéressant de s’adresser à ceux qui ne connaissent pas encore le site et d’échanger sur la vie du site avec les autres. Et c’est aussi gratifiant de voir des gens satisfaits et reconnaissants.

    • Question : Ça fait 16 ans que tu es dans l’équipe, est‐ce que parfois tu n’as pas envie d’arrêter et de passer à autre chose ?

    • Réponse : Comme tout le monde, je passe par des hauts et des bas niveau motivation, avec des hauts après les rencontres physiques et les réalisations techniques, et des bas après le xe spammeur de la journée, la énième intervention de modération pour calmer le jeu, la dernière accusation de diffamation reçue et le dernier commentaire péremptoire nous expliquant que ce que l’on fait est trop nul et qu’il existe une solution simple et magique. Des fois, je me dis que « L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes. (B. Russell) » (voir aussi l’effet Dunnin‐Kruger, merci au dernier qui en a parlé ici récemment). Et d’autres fois, je me dis que « tant qu’il y aura des nouveaux, il y a aura des questions de nouveaux, des erreurs de débutants et des comportements de néophytes » et, tant mieux qu’il y ait des nouveaux qui viennent, soyons inclusifs, accueillants et compréhensifs (et j’ajoute alors «vous allez finir par vous aimer les uns les autres, bordel de merde ! ». L’autre point, qui est d’ailleurs la conclusion de la conférence, c’est que le site LinuxFr.org est une chose plutôt rare actuellement et qu’il serait difficile de le refaire ex nihilo. Il serait donc dommage de le laisser disparaître et il est donc important de continuer (au moins jusqu’à ce qu’une relève vienne dire aux vieux de l’équipe qu’il est temps de rentrer recompiler leur noyau).

    • Question : La tribune est‐elle problématique ?

    • Réponse : Les échanges y sont limités aux utilisateurs authentifiés, éphémères (une quantité limitée de messages stockés) et non archivés (pas de stockage à long terme ni d’indexation par les moteurs de recherche), ce qui réduit grandement les risques de recevoir des mises en demeure. Certains sites externes archivent les échanges sur la tribune, mais cela relève alors de leur propre responsabilité. Pour le reste, la présence de quelques modérateurs sur la tribune suffit à régler les rares problèmes résiduels, notamment grâce à la possibilité d’en priver temporairement un compte d’accès. Globalement la tribune est donc peu problématique.

    • Question : Comment as‐tu reçu la mise en demeure ? Comment réagit‐on dans ce cas ?

    • Réponse : Sereinement sur le fond, mais agacé par la forme (directement un recommandé parlant de prison et demandant de l’argent). Nous en avons discuté en interne, avons évalué le contenu en question et avons choisi de publier la lettre (et le courrier de signalement au barreau de Paris par la suite). L’inspiration venait notamment de Chilling Effects (devenu depuis Lumen) et son utilisation par Google pour les notices DMCA notamment : pour rendre public et garder trace d’une demande de suppression, la demande est publiée.

    • Question : Est‐ce que l’on va refaire une dépêche sur les dons aux associations comme les années précédentes ?

    • Réponse : Oui clairement. D’ailleurs, si des gens veulent aider voire lancer la dépêche en reprenant celle de l’année passée, tant mieux. Et, suite à la conférence sur la plate‐forme de dons récurrents Liberapay, une dépêche est en préparation sur le sujet et Liberapay sera évoqué dans la dépêche sur les dons

    Petite synthèse des échanges sur le sondage « La modération a posteriori des contenus et commentaires problématiques sur LinuxFr.org »

    Ce sondage montre un résultat inattendu (pour moi) : en excluant les réponse humoristiques, il semble que les répondants soient très largement satisfaits de la modération a posteriori (si tant est qu’un résultat de sondage LinuxFr.org soit non inepte à 23,22 % près).

    Les demandes :

    • plus de transparence sur la modération a posteriori, quantitativement (nombre d’opérations) et qualitativement (sur quels comptes) : sur le premier point, oui il faudrait [ajout dans l’entrée de suivi], sur le second point, il semble délicat et contreproductif de créer un mur de la honte. À noter que les rétrospectives de la quinzaine que je publie en journal rendent la modération plus transparente en termes de volumétrie (les « dont 5 masqués depuis » ou « dont 3 fermés depuis », mais pas les privations de commentaire et/ou de tribune), ainsi que par la nature des échanges sur la liste moderateurs@ ou la tribune de modération ;
    • le retour des commentaires anonymes : sans solide argumentation nouvelle et compte tenu des problèmes passés, aucune raison de revenir en arrière ;
    • faut‐il ou non indiquer raison et modérateur dans les cas de modération a posteriori ? Voir l’entrée de suivi concernée ;
    • une modération moins « laxiste », mais sans dire comment l’obtenir ;
    • une proposition de modification des règles de modération pour indiquer le comportement attendu/souhaitable
    • le rappel de l’existence du kill‐file sauce Usenet ;
    • l’ajout d’un bouton de signalement de contenu/commentaire problématique (voir l’entrée de suivi) ;
    • une gestion particulière des comptes postant par défaut à -10, par exemple une fermeture automatique du compte, un masquage automatique avec clic nécessaire pour démasquer, un CAPTCHA, etc. : en fait, ça concerne assez peu de monde (3 comptes au moment du sondage, dont deux ont été fermés suite à ce sondage (voir ce commentaire notamment) et une autre demande de purge en réaction) ;
    • le filtrage par adresse IP : rarement nécessaire, pour quelques spammeurs et quelques obsessionnels.

    Petite synthèse des échanges sur le sondage « Comment vous inciter à contribuer plus souvent à LinuxFr.org ? »

    Le sondage contient diverses propositions :

    • des demandes de nouveau contenu (avec toujours la question « Comment les susciter dans l’espace de rédaction ? ») :
      • des tests de distribution,
      • des tutoriels,
      • une nouvelle catégorie du genre annonce, sortie logicielle,
      • des vidéos,
      • des podcasts,
      • etc. ;
    • des contenus plus courts : comment les susciter dans l’espace de rédaction ? (la crainte de la « page blanche » et de « ne pas être à la hauteur » revient régulièrement dans les retours sur le site ou les stands) ;
    • un signalement des meilleurs articles de la presse ou des autres sites et, inversement, le signalement de nos meilleurs articles à d’autres sites ;
    • promouvoir plus de journaux en dépêches, plus rapidement ;
    • ne pas oublier les dépêches compilant les sujets les plus intéressants : revues de presse de l’April, meilleurs journaux du mois, agenda(s) du Libre ;
    • de la ludification (voir entrée de suivi) ;
    • moins de commentaires de reproches et de notes décourageantes ;
    • la possibilité de rester « anonyme » en apparence, tant que la note est négative ou pendant un certain temps ;
    • une identité plus « informatique libre » que LinuxFr.org ;
    • un petit bouton par type de contenu qui crée une dépêche à partir d’un modèle avec quelques paragraphes pré‐remplis ;
    • des demandes pour revoir la notation des commentaires (déjà plein de demandes dans le suivi sur ce sujet, plus ou moins argumentées) ;
    • des brouillons pour les journaux [entrée de suivi].

    Remerciements

    Et, pour finir, merci à l’excellente équipe d’organisation de Capitole du Libre. Merci à ceux qui ont tenu le stand LinuxFr.org à Paris Open Source Summit pour les remarques, suggestions et corrections sur la présentation, et merci à tankey< pour son accueil sur Toulouse.

    Lire les commentaires

    03 December 2016

    vbernat.png Vincent BERNAT

    Modification d'une dépendance à la compilation d'un projet Android

    Le 03 December 2016 à 22:20:21

    Dans cet article, je présente une méthode pour modifier une dépendance externe dans un projet Android lors de la compilation avec Gradle. Cette méthode met en œuvre l’API « Transform » et Javassist, un utilitaire de manipulation du bytecode Java.

    buildscript {
        dependencies {
            classpath 'com.android.tools.build:gradle:2.2.+'
            classpath 'com.android.tools.build:transform-api:1.5.+'
            classpath 'org.javassist:javassist:3.21.+'
            classpath 'commons-io:commons-io:2.4'
        }
    }
    

    À noter que je ne suis pas un programmeur expérimenté avec Android. Il est donc possible que cet article contienne des erreurs plus ou moins grossières.

    Contexte§

    Cette section contextualise l’exemple qui va servir de support. Sa lecture n’est pas essentielle.

    Dashkiosk est une application qui permet de gérer des tableaux de bords sur divers écrans. Elle dispose d’une application Android compagnon que l’on peut installer sur les clefs Android bon marché. En coulisses, l’application embarque une webview gérée par le projet Crosswalk. Cela permet d’avoir un moteur de rendu web à jour, quelle que soit la version d’Android1.

    Récemment, une vulnérabilité a été découverte dans la mémorisation des certificats invalides. Quand un certificat ne peut être vérifié, la webview délègue la décision à l’application en invoquant la méthode onReceivedSslError() :

    Indique à l’application qu’une erreur SSL a eu lieu en chargeant une ressource. L’application doit appeler callback.onReceiveValue(true) ou callback.onReceiveValue(false). La décision peut être réutilisée pour d’autres erreurs SSL. Le comportement par défaut est d’afficher une boîte de dialogue.

    Le comportement par défaut est spécifique à Crosswalk : la webview d’Android se contente d’annuler le chargement de la resssource. Malheureusement, le correctif appliqué dans Crosswalk est différent et a pour effet de bord de ne plus tenir compte de la méthode onReceivedSslError().

    Dashkiosk propose une option pour ignorer les erreurs TLS2. Le correctif casse cette fonctionnalité. L’exemple qui suit montre comment modifier Crosswalk pour restaurer l’ancien comportement3.

    Remplacement d’une méthode§

    Nous allons remplacer la méthode shouldDenyRequest() de la classe org.xwalk.core.internal.SslUtil avec cette version :

    // Dans la classe SslUtil
    public static boolean shouldDenyRequest(int error) {
        return false;
    }
    

    Squelette de la transformation§

    L’API de transformation de Gradle permet de manipuler les fichiers de classes avant que ceux-ci ne soient convertis au format DEX. Pour déclarer une transformation, nous ajoutons le code suivant au fichier build.gradle:

    import com.android.build.api.transform.Context
    import com.android.build.api.transform.QualifiedContent
    import com.android.build.api.transform.Transform
    import com.android.build.api.transform.TransformException
    import com.android.build.api.transform.TransformInput
    import com.android.build.api.transform.TransformOutputProvider
    import org.gradle.api.logging.Logger
    
    class PatchXWalkTransform extends Transform {
        Logger logger = null;
    
        public PatchXWalkTransform(Logger logger) {
            this.logger = logger
        }
    
        @Override
        String getName() {
            return "PatchXWalk"
        }
    
        @Override
        Set<QualifiedContent.ContentType> getInputTypes() {
            return Collections.singleton(QualifiedContent.DefaultContentType.CLASSES)
        }
    
        @Override
        Set<QualifiedContent.Scope> getScopes() {
            return Collections.singleton(QualifiedContent.Scope.EXTERNAL_LIBRARIES)
        }
    
        @Override
        boolean isIncremental() {
            return true
        }
    
        @Override
        void transform(Context context,
                       Collection<TransformInput> inputs,
                       Collection<TransformInput> referencedInputs,
                       TransformOutputProvider outputProvider,
                       boolean isIncremental) throws IOException, TransformException, InterruptedException {
            // Il faudrait faire quelque chose ici...
        }
    }
    
    // Enregistrement de la transformation
    android.registerTransform(new PatchXWalkTransform(logger))
    

    La méthode getInputTypes() retourne un ensemble de types de données gérés par la transformation. Dans notre cas, nous allons transformer des classes. Une autre possibilité est de transformer des ressources.

    La méthode getScopes() indique la portée de la transformation. Dans notre cas, nous ne voulons transformer que les dépendances externes. Il est aussi possible de transformer ses propres classes.

    Telle qu’implémentée, la méthode isIncremental() indique que l’on sait gérer la construction incrémentale. Ce n’est pas très compliqué à faire.

    La méthode transform() prend un ensemble de fichiers en entrée et doit les copier (avec ou sans modifications) à l’endroit que lui indique son quatrième argument. Nous n’avons pas encore implémenté cette fonction. Du coup, actuellement, la transformation retire juste toutes les dépendances externes de l’application.

    Transformation à vide§

    Pour garder toutes les dépendances externes sans apporter de modifications, nous devons copier les fichiers fournis :

    @Override
    void transform(Context context,
                   Collection<TransformInput> inputs,
                   Collection<TransformInput> referencedInputs,
                   TransformOutputProvider outputProvider,
                   boolean isIncremental) throws IOException, TransformException, InterruptedException {
        inputs.each {
            it.jarInputs.each {
                def jarName = it.name
                def src = it.getFile()
                def dest = outputProvider.getContentLocation(jarName, 
                                                             it.contentTypes, it.scopes,
                                                             Format.JAR);
                def status = it.getStatus()
                if (status == Status.REMOVED) { // ❶
                    logger.info("Remove ${src}")
                    FileUtils.delete(dest)
                } else if (!isIncremental || status != Status.NOTCHANGED) { // ❷
                    logger.info("Copy ${src}")
                    FileUtils.copyFile(src, dest)
                }
            }
        }
    }
    

    Le code ci-dessus nécessite deux imports additionnels :

    import com.android.build.api.transform.Status
    import org.apache.commons.io.FileUtils
    

    Comme nous ne gérons que des dépendances externes, nous n’avons qu’à nous occuper de fichiers JAR. Ainsi, l’itération a lieu uniquement sur jarInputs et non sur directoryInputs. Lors d’une construction incrémentale, il y a deux cas à gérer : soit le fichier a été retiré (❶), soit il a été modifié (❷). Dans les autres cas, nous considérons que le fichier est déjà à sa place.

    Modification d’un JAR§

    Lors du traitement du fichier JAR de Crosswalk, nous devons aussi le modifier. Voici la première partie du code (en replacement du code en ❷) :

    if ("${src}" ==~ ".*/org.xwalk/xwalk_core.*/classes.jar") {
        def pool = new ClassPool()
        pool.insertClassPath("${src}")
        def ctc = pool.get('org.xwalk.core.internal.SslUtil') // ❸
    
        def ctm = ctc.getDeclaredMethod('shouldDenyRequest')
        ctc.removeMethod(ctm) // ❹
    
        ctc.addMethod(CtNewMethod.make("""
    public static boolean shouldDenyRequest(int error) {
        return false;
    }
    """, ctc)) // ❺
    
        def sslUtilBytecode = ctc.toBytecode() // ❻
    
        // Écriture du nouveau fichier JAR
        // …
    } else {
        logger.info("Copy ${src}")
        FileUtils.copyFile(src, dest)
    }
    

    Il est nécessaire d’ajouter les imports suivant pour utiliser Javassist :

    import javassist.ClassPath
    import javassist.ClassPool
    import javassist.CtNewMethod
    

    Lorsque le fichier en cours est celui que nous voulons modifier, nous l’ajoutons à notre classpath et récupérons la classe qui nous intéresse (❸). Cela nous permet d’effacer la méthode shouldDenyRequest() (❹). Ensuite, nous pouvons ajouter notre propre version (❺). La dernière étape consiste à récupérer le bytecode correspondant à la classe modifiée (❻).

    Il reste enfin à reconstruire le fichier JAR :

    def input = new JarFile(src)
    def output = new JarOutputStream(new FileOutputStream(dest))
    
    // ❼
    input.entries().each {
        if (!it.getName().equals("org/xwalk/core/internal/SslUtil.class")) {
            def s = input.getInputStream(it)
            output.putNextEntry(new JarEntry(it.getName()))
            IOUtils.copy(s, output)
            s.close()
        }
    }
    
    // ❽
    output.putNextEntry(new JarEntry("org/xwalk/core/internal/SslUtil.class"))
    output.write(sslUtilBytecode)
    
    output.close()
    

    Il convient d’importer les classes suivantes :

    import java.util.jar.JarEntry
    import java.util.jar.JarFile
    import java.util.jar.JarOutputStream
    import org.apache.commons.io.IOUtils
    

    Il y a deux étapes. En ❼, toutes les classes, à l’exception de SslUtil sont copiées dans le nouveau fichier JAR. En ❽, le bytecode précédemment modifié pour SslUtil est ajouté.

    C’est tout ! L’exemple complet est disponible sur GitHub.

    Fonctions avec dépendances§

    Dans l’exemple précédent, la nouvelle méthode n’utilisait aucune dépendance externe. Supposons maintenant que nous voulons remplacer la méthode sslErrorFromNetErrorCode() de la même classe avec celle-ci :

    import org.chromium.net.NetError;
    import android.net.http.SslCertificate;
    import android.net.http.SslError;
    
    // Dans la classe SslUtil
    public static SslError sslErrorFromNetErrorCode(int error,
                                                    SslCertificate cert,
                                                    String url) {
        switch(error) {
            case NetError.ERR_CERT_COMMON_NAME_INVALID:
                return new SslError(SslError.SSL_IDMISMATCH, cert, url);
            case NetError.ERR_CERT_DATE_INVALID:
                return new SslError(SslError.SSL_DATE_INVALID, cert, url);
            case NetError.ERR_CERT_AUTHORITY_INVALID:
                return new SslError(SslError.SSL_UNTRUSTED, cert, url);
            default:
                break;
        }
        return new SslError(SslError.SSL_INVALID, cert, url);
    }
    

    La principale différence est l’importation de classes supplémentaires.

    Import du SDK Android§

    Le SDK Android ne fait pas partie des dépendances externes. Il convient de l’importer manuellement. Le chemin complet vers le fichier JAR est :

    androidJar = "${android.getSdkDirectory().getAbsolutePath()}/platforms/" +
                 "${android.getCompileSdkVersion()}/android.jar"
    

    Il faut l’ajouter au classpath avant d’ajouter la nouvelle méthode dans la classe SslUtil :

    def pool = new ClassPool()
    pool.insertClassPath(androidJar)
    pool.insertClassPath("${src}")
    def ctc = pool.get('org.xwalk.core.internal.SslUtil')
    def ctm = ctc.getDeclaredMethod('sslErrorFromNetErrorCode')
    ctc.removeMethod(ctm)
    pool.importPackage('android.net.http.SslCertificate');
    pool.importPackage('android.net.http.SslError');
    // …
    

    Import d’une autre dépendance externe§

    Nous devons aussi importer org.chromium.net.NetError et donc mettre le fichier JAR approprié dans le classpath. La façon la plus simple de faire ceci est d’itérer de nouveau sur toutes les dépendances externes et de les ajouter au classpath :

    def pool = new ClassPool()
    pool.insertClassPath(androidJar)
    inputs.each {
        it.jarInputs.each {
            def jarName = it.name
            def src = it.getFile()
            def status = it.getStatus()
            if (status != Status.REMOVED) {
                pool.insertClassPath("${src}")
            }
        }
    }
    def ctc = pool.get('org.xwalk.core.internal.SslUtil')
    def ctm = ctc.getDeclaredMethod('sslErrorFromNetErrorCode')
    ctc.removeMethod(ctm)
    pool.importPackage('android.net.http.SslCertificate');
    pool.importPackage('android.net.http.SslError');
    pool.importPackage('org.chromium.net.NetError');
    ctc.addMethod(CtNewMethod.make("…"))
    // Puis reconstruction du fichier JAR...
    

    Happy hacking !


    1. Avant Android 4.4, la webview était largement obsolète. Depuis Android 5, elle se trouve sous forme d’un composant séparé maintenu à jour comme une application. L’utilisation de Crosswalk reste pratique pour s’assurer de la version utilisée. 

    2. Cela peut sembler dangereux et c’est le cas. Toutefois, si l’on utilise une CA interne, il n’est pas possible de demander à la webview de l’utiliser. Le magasin de certificats système n’est pas utilisé non plus. Il est également possible d’utiliser TLS uniquement pour l’authentification avec des certificats clients, ce qui est une possibilité supportée par Dashkiosk

    3. Crosswalk étant un projet libre, une alternative aurait été d’en modifier le source et de le recompiler. Toutefois, le projet embarque Chromium et nécessite énormément de ressources pour venir au bout de la compilation. 

    bansieau.png Benoît ANSIEAU

    Hyper Connectivité et Publicité

    Le 03 December 2016 à 16:30:18

    Quand je regarde notre monde numérique actuel, je suis un peu triste.

    Triste qu’autant de capacité, qu’autant de possibilités qui s’offrent à nous dans ce monde, soient aussi mal utilisées. Que le formidable potentiel que représente notre technologie actuelle soit autant utilisé à l’encontre des utilisateurs ou de la bonne intelligence.

    Un monde plein de potentiel

    L’état de la technique nous permet de trouver des ordinateurs pour moins de 10€ (RaspberryPi Zero), en vente au grand publique, et tellement populaire que l’acquisition en est restreinte dans toutes les boutiques. Machine minimaliste par la taille (65x30x5mm) et par les capacités (1Ghz 512 Mo de Ram), mais capable d’innombrable choses en comparaison de ce que l’on pouvais faire il y a 20 ans (Le Psion série 5 de 1997 fonctionnais avec quelques dizaines de Mhz et 8 Mo de Ram).

    Et si l’on prend un peu de recul par rapport à la course à la technologie actuelle, c’est simplement prodigieux : On peut aujourd’hui tous avoir accès à des puissances de calcul largement suffisante pour des quantités phénoménales d’usages. Et quand bien même on en arriverait à avoir des besoins véritablement importants, le prix de machines puissantes n’en reste pas moins assez abordable.

    Hyper Connectivité

    Aujourd’hui le maître mot est la «connectivité». Il faut communiquer, tellement communiquer que l’on en arrive à faire discuter tout avec n’importe quoi pour échanger des informations au mieux inutiles, voir, et surtout, qui n’aurait pas à l’être. On communique dans la seule finalité de communiquer jusque à l’overdose. Et si cela était à l’origine réservé aux ordinateurs, ça n’en est aujourd’hui qu’une part minoritaire.

    Ordinateur, Téléphones, Tablettes, Automobile, Télévision, Radio, Consoles de jeu, … La maison connectée, et son électroménager n’en étant qu’a leurs débuts. L’objectif assumé du mouvement de «l’objet connecté» et de l’«internet des objets» étant de connecter tout ce qui pourrait l’être. L’humain l’étant lui même depuis longtemps.

    Nous sommes dans un monde tellement connecté, et tellement dépendant de cette connectivité, que la plupart de ces appareils perdent une grande part de leurs fonctionnalités (quand ils ne deviennent pas simplement inertes) en cas d’absence de connexion. L’accès au réseau devient une dépendance maintenant vue comme vitale.

    On délègue l’intelligence nécessaire à nos usages à un service distant hors de notre contrôle, alors que bien souvent nous sous exploitons ou simplement gaspillons celle que nous avons, chez nous et sous notre contrôle.

    Notez que cette connectivité déplaçant de plus en plus le contrôle de l’utilisateur vers le constructeur, ce dernier à tout intérêt à vous en vendre : Cela augmente son contrôle et son pouvoir.

    L’orgie publicitaire

    Mais cette connectivité exacerbée ne vient pas seule. L’un des domaines les plus prolifiques de ces dernières années est la publicité. Et si le modèle traditionnel (Télévision, Radio, Journaux, Magasines et Affichage de rue) peu déjà se montrer envahissant, cette hyper-connectivité la rend omniprésente.

    Tout ce matériel communiquant recueille d’énorme quantité d’informations sur vous dans le but de déterminer ce que l’on a le plus de chance d’arriver à vous vendre, et de vous renvoyer, partout ou vous pouvez être, et quoique vous fassiez, ces innombrables publicités.

    Cette formidable capacité que nous avons entre les mains de pouvoir traiter de l’information et la communiquer est majoritairement utilisé contre leur utilisateur pour les rendre dépendants des constructeurs et distributeurs, et pour multiplier les espaces publicitaires.

    Illustration

    Un exemple d’illustration (Mais ils sont nombreux) : Le livre (électronique et connecté) par Amazon.

    Dans l’absolu le livre électronique peut être une très bonne chose : On supprime tout les coût et les problèmes d’impressions (gestion de stock, nombre d’exemplaire limité, délais de livraison, …), on peut à moindre coût en faire une nouvelle édition corrigée, on a un document qui ne s’abîme pas, on peu facilement le dupliquer, et en transporter (même d’importantes quantités) prend physiquement un poids et une place individuelle négligeable.

    La peur des chaînes de distributions de perdre le contrôle à mener à la création de la Gestion des Droit Numérique (DRM), préfèrent utiliser la technologie pour restreindre les possibilités des utilisateurs que de leur accorder leur confiance. Mais ce n’est pas le sujet (par ailleurs intéressant) de ce billet.

    Le livre par Amazon a (au moins) deux caractéristiques intéressantes :

    On peut déjà citer une affaire, célèbre à son époque, ou Amazon à prouver qu’ils contrôlés ces appareils au point de pouvoir en effacer certains documents de la mémoire (Ici deux livres de George Orwell).

    La seconde caractéristique sont que, en l’échange d’une réduction possible de 10€ à l’achat de l’appareil, on bénéficie d’offres spéciales (l’option étant activable gratuitement pour ceux qui aurais pris l’appareil sans cette capacité). Concrètement, quand vous ne lisez pas, la couverture de votre livre affiche de la publicité pour les produits de son constructeur.

    C’est beau la technologie.

    Des solutions ?

    Se couper de toute cette technologie permet d’échapper à ces désagréments, mais nous prive aussi de tout son potentiel. Et je sais qu’aujourd’hui certains s’y résignent simplement (dans une certaine mesure tout du moins), car c’est finalement la solution la plus simple, et celle qui demande le moins de connaissance techniques.

    J’essaye pour ma part de naviguer au mieux dans ce monde.
    Ma maîtrise, meilleur que la moyenne, de l’outil informatique me permet en même temps de profiter de cette technologie et d’esquiver une part de ces pertes de contrôles et de ce matraquage publicitaire.

    Je milite, à mon niveau, contre ce fonctionnement nocif à notre monde moderne. Préférant notamment payer d’argent plutôt que de vie privée certains de mes services numériques.

    Évoquant parfois, au détour d’une réflexion, mon échappée (tout du moins partielle) de cette folie mondiale …


    Powered by Planet!
    Mise à jour: Le 10 December 2016 à 08:32:24