Christophe Schockaert

Toulouse, France

Citadin, j’aime la nature et les grands espaces. Touche-à-tout, curieux, rêveur. En chemin vers la liberté : logiciels libres. - - - #belgian #french #nature #artlibre #freesoftware #celtic

  • Dianara v1.3.5 is out!

    at 2016-10-09T18:10:50Z

    It's release time! A new version of my client for desktop systems just came out of the oven.

    The most noticeable changes since v1.3.4, as illustrated in the screenshot, are:

    • Items highlighted due to filtering rules will show the reason for highlighting. As visible on the left side of the screenshot, that post was highlighted due to it matching the words “” and “Security” in the post contents or title, which I had configured as a filtering rule previously.
    • After downloading an attachment, a button will appear, to open the file using the default program from the user’s desktop environment. So if a post has audio attached, after saving it, an “Open” button will appear (right side of the screenshot), and clicking it will open the file with Amarok, Qmmp, VLC, or whatever your default audio player is =)
    • Added buttons to rotate images in the image viewer. Also via keyboard, with Ctrl+Left and Ctrl+Right, and via context menu. This is mostly for the case of images uploaded upside down, or not taken in the right direction for whatever reason. (Lower part of the screenshot)
    • Some windows that used to block input (modal) to the rest of the program until they were closed, such as posts opened from the Meanwhile feed, will be independent now. You can keep them around for as long as you like, until you close the program.

    Also, building Dianara with Qt 5 is officially supported now (that’s how I’ve been using it for a while). Note that your system will need a Qt 5 build of the QOAuth library, which most GNU/linux distributions don’t provide yet. Mageia 6 does, and so does openSUSE (in a separate repository). This required some changes in the buildsystem. Hopefully it will still build successfully for everyone. If it doesn’t, your QOAuth might be missing a feature file (.prf).

    If your system’s language is German, you’ll also have an updated German translation, thanks to Mightyscoopa, who got the translation up to date again!

    Full blog announcement:

    Christopher Allan Webber, Daniel E. Renfer, Krugor, Christophe Schockaert and 8 others likes this.

    Colegota, Christophe Schockaert, Iván Ruvalcaba, soloojos and 3 others shared this.

    Show all 6 replies
    Wow, wonderful work Jan' :)

    Christophe Schockaert at 2016-10-10T21:10:57Z

    Thank you all =)

    I'm already working on making this version obsolete xD

    JanKusanagi at 2016-10-12T15:44:37Z

    Christopher Allan Webber likes this.

    We really need to get Dianara packaged in Guix!

    If I wasn't so swamped in ActivityPub stuff I'd give it a spin myself. :)

    Christopher Allan Webber at 2016-10-12T16:18:55Z

    >> Christopher Allan Webber:

    “We really need to get Dianara packaged in Guix!”

    That would be cool! =)

    JanKusanagi at 2016-10-12T22:57:33Z

  • Evan Prodromou at 2016-09-06T15:19:20Z

    'm very proud to say that the W3C working group I've been involved with for the last couple of years has published a Candidate Recommendation for Activity Streams 2.0.

    Activity Streams is a JSON format for encoding information about activities on a social network. Who posted a status update? When? Who liked it? Who commented on it, and what did they say?

    The format allows social networking software to interoperate -- exchanging information about people and stuff on the networks in a standard way. That helps with doing things like backing up your social network information, or sending live updates between networks.

    Programmers should start implementing Activity Streams in their software ASAP. Non-programmers should start asking for Activity Streams support in the software and services they use.

    Thanks a ton to friends and colleagues on the W3C Social Working Group for getting us to this point.

    Christophe Schockaert, Sean Tilley, Malvin, Blaise Alleyne and 22 others likes this.

    Christophe Schockaert, Screwtape, mnd, mnd and 12 others shared this.

    Show all 7 replies No. That's in the future.

    Claes Wallin (韋嘉誠) at 2016-09-07T05:10:01Z

    AJ Jordan likes this.

    Fixed, thank you @mnd, it now points to

    Christopher Allan Webber at 2016-09-07T22:24:49Z

    Wow, good work for achieving this !

    Christophe Schockaert at 2016-10-09T09:22:49Z

  • Now installing Red Hat... 5.2

    at 2016-09-06T23:15:22Z

    Yes, 5.2. No, not RHEL 5.2... bare "Red Hat Linux 5.2", from 1999.

    The first CD of GNU/linux I ever had, and also, the first one I installed, on a 486 machine.

    Installing it now on a QEmu machine... =)

    Christophe Schockaert, Andrew E, der.hans, Carol Chen and 4 others likes this.

    Show all 11 replies
    red hat 2.1 sep 96. later slackware and now debian. I feel old.

    FLWNQWUD at 2016-09-07T20:30:15Z

    I had CDs for Red Hat 6.x and 7.x ... probably tossed them during my move across the pond (US to Finland). Many other distros later (mainly Ubuntu and its variations) I'm using Fedora now that I've started working for Red Hat :P

    Carol Chen at 2016-09-07T22:56:28Z

    I had a 5.2 CD, but never installed it. I used RH 6.1 through 8.0. at 2016-09-13T04:25:42Z

    Waaahhh, real memories. I remember my first 6 CDs Linux boxed set with RedHat, Slackware, Mandrake, Suse and Debian, I think the last one was for docs and sources... Back in 1995-1996's ^^

    Christophe Schockaert at 2016-10-09T09:21:03Z

  • Tech Support Cheat Sheet

    Krugor at 2016-09-08T07:11:11Z

    Christophe Schockaert, Face, AJ Jordan, PuppetMast3r and 2 others likes this.

    Christophe Schockaert, Face, Face, Face and 3 others shared this.

  • Pubstrate + soci-el + ActivityPub update for 2016-09-10

    Christopher Allan Webber at 2016-09-10T23:32:09Z

    Following up from last week's update (well, plus a few days)... a lot has happened.

    In Pubstrate:

    • Session stuff was put to use. Logins/logout now work.
    • I wrote a configuration subsystem. You can now configure the application, and have the configuration validate against a spec. The configuration files are written in scheme, but pleasantly, there's a command line script which will generate a default config for you, with some infrastructure so that it will be a nice little wizard asking you questions later.
    • Backported some stuff from Guile 2.1/2.2 so that if you're still using Guile 2.0, you can still redirect from relative links. (This was originally against the HTTP 1.1 spec, but in a revised version, it was relaxed.)
    • Command line interface now supports multiple subcommands, used for config bootstrapping stuff mentioned above.
    • Much, much refactoring.
    • Wrote a full widget/form rendering library, a-la Python's WTForms, but without all the mutation.
    • Added page to authorize clients.
    • User outbox now renders as AS2 on a GET.
    • Various improvements and bugfixes.

    So 5 days ago, I hit the point where I needed to have a decent client to be testing things with. Prior to this I had just been using the guile REPL to do some crappy posting. I realized I wasn't capturing the experience of any kind of real use though, and I needed to demo a real client, so I started building one.

    I really fought with myself over what I should build it in. Weighing the options, I initially decided a Pumpa-like interface in GTK2 would be the most generally demonstratable, and would allow me to leverage the Guile bindings I had already written. So I started writing that, but soon ran into problems... I spent about 4 hours trying to get GTK box packing to cooperate on the most trivial things and realized I wasn't having any fun. I was feeling depressed and full of doubt.

    I kind of felt like, maybe an emacs client would be most fun for me. But that would mean reimplementing nearly all of the activitystreams handling code from Guile into Emacs Lisp. So I decided to take an evening to see if I could do it. Well, within a few hours I had nearly everything ported, and by the next day I had a generic methods written! I also made a mockup that felt compelling for an emacs interface, and was able to make use of that look... within a short period I had a working experimental rendering function, and shortly after that I managed to render another entry, this one borrowed from @rhiaro's blog (which exposes an AS2 version).

    So, emacs client it is! I've been forging forward, and as of right now I can connect emacs to my localhost instance of Pubstrate and pull down and render my outbox. Horray!

    I still need to be able to post things though. For the moment, I am thinking of taking the (hilarious?) route of being able to author content in org-mode (which will be rendered to HTML before being posted to the server).

    In the meanwhile, I am also trying to wrap up all the ActivityPub issues I can, though I've been more focused on the software.

    I feel like things are coming together, but I'm very afraid that even if I put in all my energy, I won't get things far along fast enough. I'm very stressed out because of this. I know some of you have said "it isn't worth your mental health", but maybe some deadlines, if they are important enough, are. Nonetheless my mental health is admittedly very poor right now... and my physical health isn't doing so great being in crunchtime either. If I step back and look at my productivity, it seems very good on its own. In put in context of a ticking clock, it feels like not enough.

    Not long left till TPAC. Wish me luck.

    Christophe Schockaert, Claes Wallin (韋嘉誠), der.hans, amz3 and 5 others likes this.

    Claes Wallin (韋嘉誠), Claes Wallin (at those times when has issues) shared this.

    Show all 7 replies Is this the kind of TPAC you are talking about?

    Claes Wallin (at those times when has issues) at 2016-09-11T13:33:37Z

    In Gtk2???? You know that Gtk3 has been out for 5 years now, and nobody is fixing Gtk2. Jut sayin'.

    Hubert Figuière at 2016-09-11T15:00:04Z

    Claes Wallin (韋嘉誠) likes this.

  • Linux Format 175

    at 2016-09-11T21:13:08Z

    Was reminded of my 15 minutes of fame on Linux Format in the Oct 2013 issue. Wish I was better prepared at that time (no idea I was going to get interviewed at FOSDEM) but still a proud moment.

    Christophe Schockaert, Marcos, eliotime™, Claes Wallin (韋嘉誠) and 1 others likes this.

    Wooohooo, you're famous! =)

    (btw, your avatar is broken :p)

    JanKusanagi at 2016-09-11T21:27:27Z

    Carol Chen likes this.

    Lol thanks, not sure what happened. I couldn't reach a few days ago, then when it finally loaded I couldn't make comments. and I saw others with missing avatars too. let's see how long this new avatar stays :D

    Carol Chen at 2016-09-11T21:36:48Z

    It just happened that you never changed your avatar in the "pump era", so it was still hosted at the domain, which has now expired =)

    JanKusanagi at 2016-09-11T21:52:55Z

    ah that makes sense..

    Carol Chen at 2016-09-11T22:09:08Z

  • Christopher Allan Webber at 2016-09-13T04:09:09Z

    Finally cut el-get out of my .emacs'ing, and down to only 3 packages using emacs' package interface... everything else I'm pulling out of Guix. Great!

    Christophe Schockaert, Claes Wallin (韋嘉誠), AJ Jordan, Ben Sturmfels likes this.

    Claes Wallin (韋嘉誠) shared this.

    Show all 6 replies

    @Christopher Allan Webber ah, okay. That makes a lot of sense.

    WRT security, that's a very good point. I use different computers often enough that not having my package list under version control is something that's unsustainable, but you're totally right. (MELPA in particular didn't even do TLS for a long time, although that's thankfully not the case these days.) *sigh* I guess I should add "make ELPA have better security" to my endless TODO list :)

    I've also never really regretted upgrading a package, even though I'm not even on MELPA Stable. How many packages do you use? (I'm sure it's more than me!) Or perhaps that's the wrong question - a better one might be, how many SLOC do you have in your .emacs that customize packages, and how complex are the customizations (e.g. just setq or something more complicated)?

    AJ Jordan at 2016-09-15T06:24:23Z

    @Alex Jordan My emacs config is public, but a little it crazy. You can view it here. There's a that shows how I set it up. Not all the files inmodes are currently used. You're on your own. Have fun exploring some emacs lisp wilderness!

    Christopher Allan Webber at 2016-09-15T20:44:31Z

    That's 2520 lines of emacs lisp configuration. Not all of it is very good.

    For a much more impressive .emacs, see @Karl Fogel's gigantic but heavily documented .emacs

    Christopher Allan Webber at 2016-09-15T20:47:11Z

    @Christopher Allan Webber thanks! Will check both of them out when I get the time. So, you know, Real Soon Now™ :P

    AJ Jordan at 2016-09-16T22:01:47Z

  • Some Pubstrate and soci-el screenshots

    Christopher Allan Webber at 2016-09-14T16:43:00Z

    Here's a Pubstrate screenshot, showing items in a feed. (It includes a little bit of a sappy micro-love-note. I was demo'ing to Morgan, sorry!) But the cool part is...

    Here's a screenshot of soci-el, the emacs ActivityPub client I've been writing. The neat thing is that you see that on the right side, the *soci-compose* buffers I composed the messages from (yes, it's using org-mode, yes I'm using comments to hackily handle the "headers" section). These were then sent across the wire using the ActivityPub protocol. On the left side you can see my outbox rendered, also pulled down through the ActivityPub API.


    Christophe Schockaert, der.hans, illyria, Gary Edwards and 4 others likes this.

    Christophe Schockaert, AJ Jordan shared this.

    Show all 6 replies

    I am SO. INTO THIS.

    YESSSSSSS. It gets cooler every time I see it, NO JOKE. So excited for the future of the federated web! :)

    AJ Jordan at 2016-09-15T06:26:36Z

    Claes Wallin (韋嘉誠), Christopher Allan Webber likes this.

    Is Pubstrate currently available for testing?

    Would love to play with it locally. :)

    Sean Tilley at 2016-09-15T17:43:24Z

    Claes Wallin (韋嘉誠) likes this.

    @Sean Tilley It could be, if you are brave, you can try it now. However, I recommend you wait a few weeks until I make a public release... there are huge gaps missing in the application, and there is no documentation. For example, there is no "registration" page; I load users into the database via the scheme REPL. That's not good external UX. ;) It's also probably harder to install, currently, if you're not using Guix, because of an obscure library (irregex) which isn't really needed, so I'll be removing soon.

    It's close to a "download and try it" alpha, but not there quite yet. But the foundations are good. After my demonstrations at TPAC I'll work on making it into a package that others can try out.

    I'm glad others are excited! :)

    Christopher Allan Webber at 2016-09-15T20:35:15Z

    Claes Wallin (韋嘉誠), Sean Tilley likes this.

  • Description de quelques nouveautés dans GNU Emacs v25.1

    Frédéric Couchet at 2016-09-23T07:26:16Z

    « La nouvelle version de l'éditeur multi-fonctions Emacs est sortie le 17 septembre 2016. La nouveauté la plus voyante est l'intégration de Xwidget, qui permet d'intégrer des widgets X directement, et ainsi ouvrir un navigateur web basé sur webkit dans Emacs et, pourquoi pas, de regarder des vidéos YouTube. »

    Christophe Schockaert likes this.

    Christophe Schockaert shared this.

    Impatient d'essayer cette nouvelle version !
    Pas trop le temps pour le moment :/
    Org-Mode 9.0 devrait sortir bientôt aussi ^^

    Christophe Schockaert at 2016-10-09T08:55:43Z

  • L’emprunt

    Krugor at 2016-09-23T09:19:49Z


    Eh oui ! Dans une économie basée sur la monnaie dette, l’être humain n’est pas libre de se consacrer pleinement à la création de valeurs de son choix.

    Pour qu’un être humain puisse se consacrer à la création de valeurs dans l’économie, il doit avoir de la monnaie.
    Monnaie, qu’il “supplie” au banquier qu’on la lui prête pour la réalisation de son projet.
    Cette monnaie lui sera prêtée a condition que le projet soit rentable et que l’emprunteur ait de quoi rembourser en cas d’échec.

    Que dis-je ? Les banquiers ne prêtent pas de monnaie. Ils prêtent des nombres préalablement créés sans efforts.

    Pourquoi ont-ils ce privilège de création monétaire ? Ça sent pas l’arnaque ça ? Pourquoi ne pourrions-nous pas créer de la monnaie à notre tour ?

    Si l’être humain souhaite se libérer de la religion de la monnaie asservissante, il peux participer à la création d’une monnaie libre dans laquelle chaque être humain est créateur de monnaie à parts égales.


    Christophe Schockaert likes this.

    Christophe Schockaert shared this.

  • Dennis Zeit at 2016-09-26T20:38:08Z

    How NOT to manage passwords
    Managing password resets without making headlines

    Christophe Schockaert, Kyosuke, Ben Sturmfels likes this.

    Christophe Schockaert shared this.

  • GnuPG this Past Summer | Great recap of the work in the community

    Free Software Foundation at 2016-09-28T14:53:34Z

    Read online:

    As usual, Werner has made a cornucopia of contributions. He improved --quick-addkey and --quick-gen-key, he changed gpg-agent and dirmngr to exit if their sockets disappear, he added an assuan logging monitor, he implemented new export and import filters, he did some work on g13, he added /run/user/UID/gnupg sockets, he introduced an option (--recipient-file) to work directly with keys stored in a file, and he made a number of improvements to GPGME including adding TOFU support.

    The filtering changes allow controlling what packets are imported or exported. For instance, if you want to only keep a single user id when exporting a key, you could use:

    gpg --no-options --import-options import-export \

    --import-filter keep-uid='mbox = joe at' \

    --import < >

    More information about this feature is available in his note to the GnuPG mailing list or gpg's documentation.

    The --recipient-file option is an oft-requested feature, which allows working with keys without importing them.

    Werner also fixed a critical bug in the way the mixer in the random number generator stirred the pool. Specifically, the bug allowed an attacker who obtains 580 bytes from the standard random number generator (RNG) to trivially predict the next 20 bytes of output. Fortuitously, this bug does not affect the default generation of keys (more details).

    Justus continued to improve our new test suite for GnuPG. The improvements included not only fixes to the new scheme-based driver, but also a bunch of new tests. A couple of the changes included bug fixes to TinySCHEME. Unfortunately, the upstream developers don't appear to be interested in the fixes.

    Most of Justus' time recently has been focused not on the test suite, but on improving the Python bindings for GPGME. This work was started by Ben McGinnes, who contributed an initial port of the PyME bindings to Python 3. Justus finished this port, restored Python 2 compatibility, and added more pythonic interfaces (e.g., making everything work with objects implementing the buffer protocol like byte strings). The low-level interface has, however, been retained and existing applications should continue to work (if not, this is a bug, please file a bug report). He also ported the GPGME test suite to the Python bindings. This uncovered a number of latent bugs in the bindings, which he fixed. From our perspective, these are now the official Python bindings for GPGME: we've added them to the GPGME repository, and we will continue to maintain them in the foreseeable future. Nevertheless, to be more compatible with Python developers' work flow, we are also packaging pyme3 for pypi, which means that the bindings can be installed using pip install pyme3. More information is available in Justus' blog post.

    Justus also set up a Jenkins host for continuous integration. In addition to running make check for each commit under several configurations, it also runs the checks with various sanitizers enabled. This has already prevented a number of minor bugs from making it into releases.

    Andre has made a number of end-user facing contributions. The most notable is for users of Kleopatra, which now has new dialogs for File Encryption and Decryption / Verification. These greatly reduce the number of required interactions to perform these operations. He also worked on the new file type registration on Windows so that decrypting a file only requires a double click. Additionally, he has continued his work on the GnuPG plugin for Outlook, which should be released with gpg3win-3 this fall. The code is already in good form, and testers are encouraged to check it out together with the new Kleopatra (see Test version of Gpg4win-3.) Andre has also been working on improving KMail's gpg support. One of the focuses of this work has been adding TOFU support to the libraries used by KMail. Andre also merged the C++ and Qt bindings for GPGME from KDE into the official GPGME repository. This included a port of the C++ API to pure standard C++ without boost, and the removal of some KDE-Framework use in the Qt bindings so that the bindings now only require Qt 5 base. This should make working with gpg in a Qt application even more convenient. In particular, executing operations asynchronously is very easy. Finally, Andre fixed some CRL-related bugs in dirmngr.

    Kai's recent work has focused on porting Mailpile to use GPGME rather than its own wrapper, which only works with GnuPG 1.4. Unfortunately, many projects decide to take a similar approach to Mailpile, and write their own code to interact with gpg. As a reminder, we strongly encourage all developers to not directly interact with gpg, but to use GPGME, which is not only more complete, but also has seen a lot of testing. We realize that GPGME's interface's are not always ideal, however, we are open to suggestions for improvements, and feature requests. Similarly, if you don't understand how to do what you want using GPGME, we encourage you to ask for help on the gnupg-devel mailing list.

    Jussi Kivilinna has continued his work optimizing libgcrypt. In the recent past, most of his effort was spent on implementing assembly versions of various cryptographic functions for the ARMv8/AArch32 architecture.

    Niibe worked on mitigating the recently published Flip Feng Shui exploit. Flip Feng Shui uses a cross-VM, row hammer-based exploit to change the trusted.gpg file, which is used by Debian's package manager apt to verify downloads, and apt's sources.list file, which determines where packages are downloaded from, in a controlled manner. This allows attackers to replace packages that are installed with their own versions. The fix is to make sure that gpgv always checks that self-signatures are valid.

    Niibe also spent time improving GnuPG's smartcard support. This has primarily consisted of many small, but important improvements including smartcard support for ECC keys and various bug fixes. Further, Niibe investigated adding signature verification for ssh keys stored in the authorizedkeys file. This would allow detecting corrupted keys, which could happen via a Flip Feng Shui-type attack. Although there is some support for signature verification in ssh, Niibe discovered that this particular mode of operation is not yet supported by ssh-agent.

    Finally, Niibe has released a new version of GnuK (1.2.1). GnuK is a fully free cryptographic token (hardware and software). Not only is GnuK based on free software, but the entire hardware specification is open, and the parts are relatively easy to buy and assemble. The GnuK token can be ordered from seeed or the FSF.

    As usual, dkg contributed various clean ups and bug fixes. He contributed a patch to avoid publishing the GnuPG version by default, and another to improve --quick-revuid. He also provided a patch to reenable exporting secret keys without a passphrase, which was possible in gpg 1.4 and 2.0, but, due to various technicalities, was not possible in 2.1. dkg also started a discussion about having systemd manage gpg's daemons. This would ensure that GnuPG's daemons are stopped when the user logs out. He provided patches, but so far these changes have not yet been accepted.

    Ben Kibbey made a number of contributions. Among his bug fixes and clean ups, he fixed the OpenIndiana (Solaris) builds.

    I (Neal) returned from a several month sabbatical. My first order of business was to tie up some loose ends with the TOFU support in GnuPG. Among other things, I added several checks to reduce the number of gratuitous conflicts. In particular, if two keys have the same email address and are cross signed, then they are almost certainly controlled by the same person. In fact, this is a usual way of indicating key rotation. I also set the default policy to "good" for keys that the user has directly signed.

    Christophe Schockaert, Jason Self likes this.

    Christophe Schockaert, Frédéric Couchet shared this.

  • Comment ajouter facilement une carte OpenStreetMap sur son site web

    Frédéric Couchet at 2016-09-29T07:35:12Z

    cartosm est un service web de mise à disposition d'iframe pour permettre l'intégration aisée de plan sur les sites web. cartosm utilise les données du projet OpenStreetMap en totale indépendance et n'a aucun lien direct avec le projet. Voir

    Christophe Schockaert likes this.

    Christophe Schockaert shared this.

  • Happy 6th Birthday, LibreOffice

    victorhck at 2016-09-28T15:47:11Z

    Christophe Schockaert, Matteo Bechini, Ben Sturmfels, Stephen Sekula and 5 others likes this.

    Christophe Schockaert, Benjamin Cook, Tuxita, Tuxita and 4 others shared this.

  • Lydie at 2016-10-03T16:51:03Z

    Dégooglisons saison 3 : 30 services alternatifs aux produits de Google & co

    Christophe Schockaert, Deunan likes this.

    Christophe Schockaert shared this.

    I think the only Google service I use is Youtube =)

    JanKusanagi at 2016-10-03T16:56:50Z

    Lydie likes this.

  • We Distribute at 2016-01-13T20:27:57Z

    Diaspora - Proposed Design Improvements

    It looks like some new design changes are being proposed for the #Diaspora platform by @Fla . The active pull request on GitHub can be seen here.

    Main Stream:


    Tag page:


    It's exciting to see Diaspora's interface receive some much-needed love. We're excited to see what comes of it!

    Luis, soloojos, gdk, Christophe Schockaert and 1 others likes this.

    Christopher Allan Webber shared this.

  • Frédéric Couchet at 2016-01-09T11:27:52Z

    Renaud annonce "son plus bel album depuis Mistral Gagnant" et il envisage de remonter sur scène hate de voir/écouter ça

    Christophe Schockaert likes this.

  • RDB

    Krugor at 2016-01-08T19:38:35Z

    Travail et numérique : le revenu de base dans les propositions du CNNum

    Un rapport du Conseil national du numérique (CNNum) remis ce mercredi matin à la ministre du travail Myriam El Khomri préconise d’étudier la mise en place d’un revenu de base, ou revenu universel, versé à tous les habitants sans conditions. Une forme de redistribution des richesses financée, entre autres, par les gains de productivité permis par l’automatisation croissante du travail.

    Christophe Schockaert likes this.

    Christophe Schockaert shared this.

  • dégooglisé

    Krugor at 2016-01-02T09:54:34Z

    Comment j’ai dégooglisé mon smartphone et mon PC


    Christophe Schockaert likes this.

    Instructif la vue d'ensemble sur la démarche !

    Christophe Schockaert at 2016-01-03T17:55:26Z