MouTonLibre

3 commentaires

Il n'est pas 13h37, mais l'accouchement de cet article a été difficile. ;)

Par pure curiosité, j'ai voulu installer une version web de Scratch, le langage de programmation dédié aux enfants, sur mon serveur. Manque de pot, c'est compliqué et le tout tourne sous Flash. Voilà voilà... Moi qui voulait vous annoncer une instance de Scratch sur MouTonLibre, ben c'était un peu mort pour le coup.

J'ai donc regardé ce qui pouvait se faire d'autre et je dois dire que la liste n'est pas bien fournie (ou alors il faut commencer à ouvrir le portefeuille). Mais voilà, Google propose Blockly qui est sensiblement comme Scratch, le fun en moins. En fait, Blockly est une librairie pour effectuer de la programmation par bloc via un navigateur web mais ne propose pas un environnement pré-configuré pour les enfants. C'est un peu brut de décoffrage.

Mais peu importe, c'est libre et ça fonctionne ! Et en voici une preuve : https://moutonlibre.net/blockly. Alors ce n'est pas moi qui ai développé ça, j'ai juste repris un exemple parmi les démos proposées par Google et je l'ai adapté rapidement pour que ça tourne en standalone. Il est bien sûr possible de faire des jeux, des exercices de programmation et c'est cool de pouvoir les concevoir soi-même et pouvoir les héberger sur son serveur. :)

Il est aussi intéressant de noter que Scratch utilise maintenant Blockly pour les futures versions de son moteur. Comme quoi...

Enfin voilà je pense que ça peut intéresser quelques professeurs pouvant passer par ici... ;)

3 commentaires

À sa sortie, j'avais fait l'acquisition d'un Aquaris E4.5 Ubuntu Edition. Oui je suis un fou, c'est toujours sympa de devenir bêta testeur pour 180€. Mais bon, les mois (années) ont passé et il faut admettre que c'est toujours mon seul et unique téléphone et qu'il me convient toujours... Comme quoi.

Passée l'excitation des premiers tests, ce téléphone est devenu un téléphone comme un autre. Je téléphone, j'envoie des sms, je peux aller sur internet, je prends des photos (un peu dégueulasse, certes) et je peux jouer dans les salles d'attente. Que demander de plus ? Moi personnellement ça me suffit. Et question protection des données personnelles, je fais quand même plus confiance à Canonical que Google. C'est purement subjectif (oui car on peut désactiver les outils Google sur Android) et j'assume.

Mais à la différence des possesseurs de smartphone Android, qui restent figés sur une version pouvant atteindre 4 versions (en étant gentil) de retard sur la dernière sortie, j'ai toujours le plaisir de recevoir une mise à jour de système à peu près tous les 2 mois. Normalement les mises à jour étaient prévues pour être mensuelles, mais elles sont soumises à une batterie de test qui ne permet une release que si il n'y a pas de régression.Théoriquement... ;) Enfin après les bugs apparus ne sont pas bloquants. C'est déjà ça.

Et donc aujourd'hui, boum, nouvelle mise à jour. Et même si les changements ne sont pas exceptionnels, il faut admettre que le système progresse. Entre la configuration usine que j'ai reçu et le système actuel il faut reconnaître que le système va dans le bon sens. C'est fonctionnel et de plus en plus ergonomique. Difficile de cracher dessus.

Après on peut rigoler quant à la part de marché qu'a réussi à acquérir Ubuntu Phone, mais l'alternative a le mérite d'exister. Et de continuer à exister. Ce qui n'est pas rien face au monopole des grandes multinationales...

C'était la petite note d'optimisme du jour. :)

6 commentaires

Depuis quelques jours je suis dans une phase assez bizarre. Je suis ultra chargé au boulot, je me serais bien passé de certaines nouvelles (du genre qui rappelle que tout peut arriver à n'importe qui, n'importe quand), la politique commence à sérieusement me gonfler (je reviendrai sur framasphère en mai 2017 je pense... et merci de ne pas coller votre opinion absolument partout) et je dors très mal. Mais d'un autre côté j'ai la pêche, j'ai envie de profiter de chaque instant, notamment en famille, et j'ai de l'énergie à dépenser. Oui c'est paradoxal mais la fatigue met mon cerveau en ébullition. Entre deux micro-siestes. ;)

Le seul problème est que j'ai beau chercher dans tous les coins, je ne sais pas vraiment quoi faire. Non pas que je n'ai pas quelques projets (finir le 3hg-menu, contribuer à des projets en route sur 3HG, installer une openBSD, vous préparer quelques surprises), mais je n'ai rien qui me motive, là, dans l'instant. C'est vraiment très étrange de chercher à s'occuper sans y arriver alors qu'il y a de quoi s'occuper.

Auparavant je passais énormément de mon temps sur le projet HandyLinux. Maintenant tout est relativement calme dans la nouvelle façon de procéder avec DFLinux (qui consiste à regarder arpinux faire un travail de fou pour fournir un truc stable puis lui souhaiter de bonnes vacances). J'ai donc profité de ce temps libre pour enfin mettre en place le domaine MouTonLibre avec le lancement de tout un tas de services. Mais voilà, je n'ai plus d'idée pour en ajouter de nouveaux (sauf un qui devrait arriver d'ici peu mais qui nécessite un peu de travail). D'habitude j'arrive aussi à m'occuper en parcourant les différents blogs (qui sont d'ailleurs ma première source d'inspiration), mais je constate que c'est le calme plat en ce moment. Il y a bien eu le lancement de wallabag.it, mais n'utilisant pas ce genre de service je suis bien vite passé à autre chose. Mais cela ne m'empêche pas de souhaiter bonne chance à Nicolas Lœuillet pour cette nouvelle aventure. :) Pour tout vous dire, l'iso de AccessDV Linux aurait été disponible, je me serais fait un plaisir de la tester (ceci est une blague, je précise car ce sujet est sensible).

Bon du coup cela m'a permis de me poser en mode larve devant Interstellar. J'étais allé voir ce film au cinéma et je l'ai trouvé grandiose. Mais depuis je n'avais jamais trouvé le temps de le regarder à nouveau. Chose faite. Et j'ai encore pris le même plaisir, peut-être même plus encore par la compréhension de nouveaux éléments. Ce film, on l'aime ou on le déteste. Moi j'en suis tombé amoureux. Ah et si vous n'aviez pas compris mon dernier article, voilà peut-être l'information qui vous manquait.

Enfin voilà, je vais attendre doucement que les choses se décantent. Les vacances sont dans deux semaines et je vais certainement y voir plus clair. Le manque de vitamine D, tout ça... ;)

Aucun commentaire
En cherchant l'œil de Dieu, je n'ai vu qu'une orbite
Vaste, noir et sans fond, d'où la nuit qui l'habite
Rayonne sur le monde et s'épaissit toujours ;
Un arc-en-ciel étrange entoure ce puits sombre,
Seuil de l'ancien chaos dont le néant est l'ombre,
Spirale engloutissant les Mondes et les Jours!

Immobile Destin, muette sentinelle,
Froide Nécessité ! Hasard qui, t'avançant
Parmi les mondes morts sous la neige éternelle,
Refroidis, par degrés, l'univers pâlissant,

Sais-tu ce que tu fais, puissance originelle,
De tes soleils éteints, l'un l'autre se froissant...
Es-tu sûr de transmettre une haleine immortelle,
Entre un monde qui meurt et l'autre renaissant ?

— extrait du Christ aux Oliviers, Gerard de Nerval, 1884

Trou noir

PS : Point de religion ici.

5 commentaires

Si vous êtes dessinateur, ce qui n'est pas mon cas (si vous saviez à quel niveau je suis...), Willian Carvalho a développé il y a quelques temps un générateur de BD pouvant être hébergé sur une page internet : comicgen (dont vous pouvez voir l'application ici).

Alors je ne l'ai pas découvert tout seul, il s'agit en fait du moteur derrière beaucoup de générateurs de BD présents dans la sphère libriste. Et la première fois que je l'ai rencontré c'était sur Framasoft avec le générateur de Geektionnerd.

Mais il est également disponible chez Odysseus, lolobobo, sur le site du Forum Éducation Science Culture, etc.

David Revoy, le créateur de Pepper & Carrot a quant à lui mis à disposition à son arrivée sur diaspora* un générateur d'avatar avec des chats.

Tenez voilà ce que ça m'a donné pour « Starsheep ». Véridique ! Il aurait pu me coller un nœud rose mais a préféré me mettre devant un ordinateur... :)

Et pour finir cet article, je ne pouvais pas ne pas évoquer le Bouletmaton. Vous avez forcément déjà croisé un avatar en provenance de ce service... Hein Fred ! ;)

Et allez, c'est cadeau.

3 commentaires

Bon ben voilà, arpinux m'a confirmé que le service de prise de note que j'ai ajouté hier sur mon hébergement, à savoir Laverna, était bel et bien multi-utilisateur. Du coup je l'ai passée en service « officiel » dans la foulée. :)

Pour information, Laverna conserve vos préférences directement dans la base de données de votre navigateur. D'où le fait qu'après une première connexion il ne vous est pas demandé d'identifiant mais seulement un mot de passe qui sert de clé pour accéder à vos notes et les déchiffrer.

J'avoue que je ne connaissais pas du tout ce principe de « Indexed Database » ou de « Local Storage »... Mais je trouve ça extrêmement intéressant ! C'est quand même le pied de ne pas stocker d'informations de configuration et des clés de chiffrement sur le serveur. :) Après l'utilisateur est chargé d'importer et d'exporter sa configuration ce qui fait que la responsabilité de l'accès au service lui est transférée.

C'était la petite découverte du jour. :)

Du coup, j'ai mis à jour la page listant les services que je propose : https://moutonlibre.net/services. J'en ai profité pour rajouter un cadenas devant le nom des services si celui-ci est chiffré (ou ne permet pas d'être tracé). Donc si vous apercevez ce cadenas, c'est que la confidentialité des données qui transitent sur le service donné est assurée. :)

Faites-vous plaisir !

Capture d'écran de la page Services de MouTonLibre

6 commentaires

Hier soir, j'ai reçu un mail de Thuban que voici :

Rha j'ai envie de geeker ce soir mais trop de boulot :/
Votre mission pour compenser est d'écrire un script inutile mais rigolo
:)

Chose faite ! ;) Le 3hg-menu dispose donc d'un nouveau plugin qui permet de prendre des notes... C'est pas KISS, c'est pas UNIX, mais c'est rigolo.

Bon sinon, toujours à propos de prises de notes, j'ai besoin d'un retour à propos d'un nouveau service web. J'ai mis en place une instance Laverna et j'aimerai savoir si le multi-utilisateur fonctionne bien. Donc la question est simple : Est-ce qu'en allant à l'adresse https://moutonlibre.net/notes il vous est bien demandé quelques informations pour configurer votre compte ?

Pour information, Laverna est une application de prise de note avec chiffrement. Donc vos notes restent privées ! Cool non ?

2 commentaires

Et voilà. La première livrée d'iso de DFLinux, qui succède à HandyLinux sans en être l'héritière, est arrivée !

Autant l'annoncer de suite, si vous vous attendez à être pris par la main pour effectuer les tâches d'administration ou de configuration comme c'était le cas sur HandyLinux, restez sur HandyLinux. Une purge a été faite sur les outils facilitateurs... Eh oui, les temps changent.

DFLinux propose des accès facilités à la documentation, à l'aide en ligne (et humaine) et aux logiciels présents sur l'ordinateur (via le HandyMenu et des lanceurs rapides). Seul l'outil de mise à jour « automatique » a été conservé pour les tâches d'administration. Sinon c'est une Debian Xfce et on oublie donc les autres réglages comme le résolveur DNS, le rétroportage de Xfce, le lecteur d'écran par défaut, etc.

À vous de devenir maître de votre système. L'étape n'est pas infranchissable et tout est fait pour vous apporter l'aide dans vos mains. Mais sans vous cacher les rouages non plus...

« Mais alors pourquoi proposer une iso si c'est pour rajouter de la documentation ? » Pour une question de confort. C'est tout. Plutôt que d'aller télécharger des PDF et de mettre en favoris divers sites, ces isos empaquettes déjà une documentation de base. C'est quand même plus simple. ;) Ah et je caricature un peu car DFLinux ne se limite pas seulement à de la documentation intégrée dans le dossier des documents. Vous trouverez aussi divers outils capables de vous faciliter la vie de tous les jours (gestionnaire de mise à jour, actions personnalisées Thunar, outil permettant de poster votre configuration matérielle sur les forums, menu simplifié, gestionnaire d'imprimantes, etc.)

Enfin bref, testez-moi ça, ça ira plus vite qu'un long discours. ;) Et un énorme merci à arpinux qui s'est quand même tapé la quasi totalité du boulot. Chapeau l'artiste. :D

Et comme j'aime le répéter, tout est une histoire de compromis... ;)

PS : la traduction des cahiers du débutant en anglais est en cours. Si vous voulez y participer, courez ici car Yves de Emmabuntüs ne va pas vous laisser grand chose... ;)

DFLinux

18 commentaires

Comme vous avez pu le constater, pas d'articles de la série « 1337 » aujourd'hui. À vrai dire j'aurais bien aimé mais les petites modifications prévues pour aujourd'hui ont été un poil plus conséquentes que prévue...

On commence par les grandes nouveautés : deux nouveaux services sont disponibles ! Le premier est une page offrant une surcouche à Google et qui permet d'anonymiser vos recherches : https://moutonlibre.net/search/. C'est basé sur Googol, développé par Bronco, et permet juste de profiter de mon serveur comme un proxy. Alors le tout continue de se servir de Google, donc ce n'est pas l'idéal, mais pour des recherches pointues c'est toujours utile. Sinon je vous invite à utiliser Qwant pour la grande majorité des recherches. Je l'utilise quotidiennement et j'en suis très satisfait. :) Le deuxième service n'est ni plus ni moins qu'un agrégateur de flux RSS : https://moutonlibre.net/reader/. Il est basé sur Simple RSS et propose du multi-utilisateurs (d'où l'intérêt). Pas d'inscription automatique, envoyez-moi un mail si vous voulez un compte. C'est bien aussi les contacts humains. :)

J'ai bien cru que j'allais vous proposer un troisième service. Mais non. Simple Keeper, une application de prise de notes, est indiqué être multi-utilisateurs. Je l'ai retournée dans tous les sens mais rien ne va en ce sens... Donc soit j'ai loupé un truc, soit Simple Keeper n'est pas multi-utilisateurs. Si vous en savez un peu plus à ce sujet, je suis preneur. :) Après, j'ai regardé un peu le code et il y a moyen de reprendre ce qui a été fait pour Simple Reader pour l'intégrer à Simple Keeper. Ça demande un peu de temps mais ça me démange... ;)

Bon sinon avec tous ces nouveaux services, la page d'accueil de mon domaine devenait ingérable et peu ergonomique. J'ai perdu un peu de temps, j'ai piqué du code à droite à gauche (yeuxdelibad, PluCSS, Unixcorn et 3hg), j'ai retouché un peu le moteur de blog de Thuban swx, mais voilà la navigation sur les différents domaines devrait être plus aisée maintenant. :) Rendez-vous sur https://moutonlibre.net/ pour voir les changements et les nouvelles informations. J'ai encore 2-3 trucs à ajouter mais le principal est là. :)

Grosse journée, mais ce n'est qu'un début. :)

2 commentaires

Chose promise, chose due, j'ai lancé deux nouveaux services hier :

Pour le moment c'est but de décoffrage donc ne vous étonnez pas si le style sort de l'ordinaire et si le service est dans la langue de Shakespeare. Je verrai ça plus tard.

D'ici la fin de semaine, je vais proposer d'autres petites surprises. J'ai trouvé deux trois services sympas que je vais mettre en ligne. :) Bon cela implique la nécessité de réorganiser la page d'accueil du domaine. Ça va devenir un vrai bordel sinon. ;)

Bon sinon j'ai à nouveau perdu du temps sur Flightgear. Ce n'est pas de ma faute, une nouvelle version est sortie.

Ah et restez alerte, « Something great is coming » comme on dit... ;)

2 commentaires

Hier j'ai lancé un appel quant à des services que je pourrais proposer sur ce domaine. J'ai effectivement de la place et des ressources disponibles, et il serait dommage de ne pas les utiliser.

De ce fait, j'ai eu quelques propositions de la part de Thuban dans les commentaires, et il m'a surtout fourni un lien vers un wiki des applications web que je me permets de vous redonner ici. Une mine d'or.

Je vais donc mettre en place progressivement quelques uns de ces services :

  • un pastebin (basé sur PrivateBin) ;
  • un service d'envoi de photos (basé sur Fotoo) ;
  • un service d'envoi de documents (basé sur Jirafeau).

Le pastebin est d'ores et déjà disponible. Il est intéressant de noter que ce service était basé initialement sur ZeroBin, mais Mathias a judicieusement indiqué que ce dernier n'était plus soutenu. Le remplaçant est donc PrivateBin, que j'ai mis en place dans la soirée. À noter que le code que les utilisateurs envoient sur le serveur est chiffré.

Pour l'hébergement de document, j'ai choisi Jirafeau pour sa simplicité. En revanche, le chiffrement est une option et s'exécute du coté serveur ; le chiffrement côté client devrait être proposé lors d'une prochaine version. Donc pour le moment, afin de ne pas surcharger le serveur non plus, le chiffrement n'est pas effectué mais je l'activerai dès la mise à jour.

Enfin pour le service d'envoi de photos, là il n'y aura pas de chiffrement. Le but étant d'utiliser ce service pour partager les photos sur le web.

Si vous souhaitez également un compte sur mon instance BoZon, c'est tout à fait possible. Mais sachez que les données ne sont pas chiffrées et que je peux éventuellement y avoir accès. L'inscription n'étant pas automatique, je ne le compte pas vraiment dans les services que je propose. Sachez que c'est possible quoi. ;)

On verra à l'avenir pour d'autres services mais une chose est sûre  je n'ai pas vocation à devenir un CHATONS. Je lance plus ces services pour m'amuser et aider un peu à la décentralisation que pour proposer une vraie alternative. Si vous voulez du vraiment sérieux, dirigez vous vers eux. :)

8 commentaires

Cet article sera particulièrement fourre-tout. Piochez dedans ce qui vous intéresse... ;)

Comme vous avez pu le constater, j'ai - déjà - failli à mon engagement de publier un article par jour à 13h37. Le week-end ne comptant pas, j'ai quand même raté le rendez-vous hier... Mais il s'agit d'un cas de force majeur qui a comme une origine seulement une mise à jour. Mais vraiment pas là où vous vous y attendez... Point de serveur en carafe, point de mise à jour ratée, non non, il s'agit de ma voiture.

J'étais en déplacement ce week-end, et lors de mon retour une surchauffe moteur m'a obligé à sortir d'urgence de l'autoroute (une sortie en visuel m'a sauvé). Je vous passe le dépannage, l'hébergement d'urgence, la journée de travail qui saute, les galères avec le dépanneur qui ne livre pas la voiture au concessionnaire, la demande de rapatriement qui traîne à cause de l'absence de voitures de location sur place, le taxi trop petit et le rapatriement annulé. J'en viens directement au but : tout ceci était causé par l'absence de mise à jour de la sonde de température, qui envoyait donc une information erronée à l'ordinateur de bord... Voilà. Bon bien sûr comme il ne s'agit pas d'une casse ce n'est pas pris en charge par la garantie. Ça aurait été trop beau... Cyrille, tu n'as plus le monopole de la poisse. ;)

Bon sinon, et sur proposition de Thuban, j'ai mis en place un petit pastebin, et cela me donne des idées. Je lance donc un petit appel pour que vous me proposiez des services que je pourrais héberger sur MouTonLibre et que vous pourriez utiliser (comme le pastebin). Mais attention, je vous rappelle que je me contente maintenant de gérer le tout via du copier/coller par FTP. Donc il faut que cela reste le cas. :) Ah et souvenez vous que j'ai accès au serveur. C'est pour ça que je ne propose pas d'instances BoZoN au grand public : je ne pense pas que ça intéresse des personnes d'avoir un espace en ligne dans lequel je pourrais aller fouiller (même si personnellement je ne le ferais pas).

Enfin, aujourd'hui c'est le centième anniversaire de la mort de Jack London. La littérature n'est vraiment pas un truc qui me passionne mais les textes de cet auteur m'ont toujours fait vibrer...

12 commentaires

Comme je l'avais indiqué dans l’article « Choc de simplification : fin des sous-domaines », je souhaite pouvoir gérer toutes les applications de mon domaine via FTP. Cela implique que l'installation, la configuration, la sauvegarde et la migration puissent être effectuées par de simples « copier/coller » de fichiers dans des sous-dossiers de mon domaine.

Jusque là, j'avais mis en place une galerie à titre expérimental grâce à l'interface de gestion des applications Softaculous offerte par mon hébergeur o2switch. Cette galerie utilisant le moteur Lychee et ne répondant pas au critère donné ci-dessus (gestion via une base de données), malgré le fait que Softaculous permette de gérer ses applications très simplement via une interface graphique, je ne m'étais jamais vraiment attardé dessus. D'où le peu de photos présentes...

Aujourd'hui j'ai donc mis en place une galerie reposant sur le moteur MinigalNano de sebsauvage. Du KISS, du KISS et encore du KISS : une copie des fichiers sur mon domaine, la modification de deux fichiers et l’ajout de trois photos, et voilà le départ de ma galerie !

Bon pour le moment ce n'est vraiment pas très fourni (en même temps j'ai mis cela en place dans l'heure), mais j'ai vraiment un paquet de photographies à partager. Elles seront toutes disponibles sous la licence CC-BY 4.0.

En espérant que cela vous plaise... :)

4 commentaires

Note : Alors juste un petit changement sur la forme de ma série .::13:37::., je ne vais plus mettre ce « logo » dans le titre des articles. Je trouve que ça alourdit pas mal la page pour pas grand chose. En revanche, vous pouvez toujours lister les articles de cette série en utilisant le tag « 1337 », tout simplement. :)

Sinon je me suis fait pirater ma carte bleue... Mais je ne suis pas le seul, une demi-douzaine de collègue aussi... Simultanément. Le truc positif est que ça a permis de remonter à la source du problème : un hôtel.

Ben ouai, il y a encore des cons pour développer des sites web qui te demandent tes informations de carte bancaire pour une réservation et qui vont :

  1. les stocker en clair dans une base de données ;
  2. ne pas les supprimer une fois le paiement effectué ;
  3. se démerder pour offrir une faille de sécurité.

Bravo.

Au moins cela m'a permis de voir que je disposais d'e-carte pour les paiements sur internet. Donc voilà, je me suis fait avoir une fois et maintenant je suis devenu paranoïaque...

5 commentaires

Allez aujourd'hui je vais vous dire quelques mots sur l'organisation des OS libres et de leur utilisation en bureautique...

C'est l'histoire de décisions, chacune ayant été prise à un niveau précis entre le noyau et l'application exécutée en mode graphique, qui va mener dans un avenir prochain à une uniformisation voulue, ou subie, des OS libres.

Jusque là, freedesktop c'était plutôt cool car cela permettait de proposer des « standards » pour les environnements graphiques utilisant X Window System. C'était cool car, pour le bureau, cela fournissait une base de travail pour les systèmes GNU/Linux, mais aussi Unix-like.

Et puis, voilà que la révolution de la conteneurisation des applications débarque. Mais si vous savez, le truc qui permet d'isoler chaque application et ainsi d'améliorer la sécurité de votre système (au prix de bien des sacrifices mais bon...). Et freedesktop s'est donc lancé à pied joint dans ces technologies mainstream et a donc proposé sa solution : Flatpak. Flatpak c'est cool parce que tu empaquettes ton application avec ce logiciel, et il se retrouve disponible sur toutes les distributions capables de supporter Flatpak.

Oui mais voilà, la séparation des différents composants permettant de concevoir son système un peu comme on veut, en associant différentes briques qui si elles ont bien été conçues sont relativement compatibles entre elles, va prendre un sacré coup.

Allez je vous donne un petit exemple bien concret. Flatpak est utilisé par Gnome et je pense qu'à l'avenir cela deviendra la seule méthode supportée par le projet Gnome pour le déploiement de l'environnement. Aux bonnes âmes d'empaqueter sous différentes formes après. Mais bon, on sait tous que ce qu'on laisse aux bonnes âmes n'a pas un avenir bien tracé. Et Flatpak c'est tellement cool que ça ne te laisse pas le choix du sytème d'init : systemd bien entendu.

Donc si je résume, dans un avenir assez proche on va donc avoir :
Gnome -> Flatpak -> systemd -> Linux.

Donc les OS Unix-like vous pouvez aller vous gratter. Ben ouai gamin, c'est qui le patron ? Donc adapte-toi ou crève.

Plus le temps passe et plus on en vient à une situation de monopole de quelques technologies dans les OS libres. Les autres solutions ont le choix de soit se taper le support, soit développer des solutions compatibles, soit aller voir ailleurs...

Alors c'est peut-être cool d'avoir des trucs qui fonctionnent du tonnerre, mais personnellement j'ai toujours aimé jouer avec des briques. On monte, on démonte, on imagine des assemblages personnels en fonction de nos goûts et de nos besoins et on peut s'éloigner de l'illustration de l'emballage...

Allez j'ose...

Les OS libres entament leur mutation vers des OS Playmobil... Au détriment des OS Légo. :(

6 commentaires

Afin de dynamiser une peu ce blog je tente une petite expérience qui va prendre forme d'une série d'articles nommée « .::13:37::. ». Ces articles seront publiés à 13h37, tous les jours, et parleront de la première chose qui me passe par la tête. Édito, demande d'avis, brève, partage de lien etc. : il n'y aura pas de formalisme particulier et ce sera un peu mon fourre-tout. :)

Pour ce premier article, j'ai choisi de partager un coup de cœur. Un peu d'optimisme en ce moment ne peut pas faire de mal. ;)

On a tendance à l'oublier parfois, mais il y a des projets libres et communautaires relativement exceptionnels. Depuis quelques jours, je perds un nombre incalculable d'heures sur Flightgear, un simulateur de vol. Et tant pis pour le code qui attend d'être écrit...

Flightgear est le genre de logiciel que l'on tente de lancer une première fois parce que l'on a lu une dépêche bien sympa... mais que l'on supprime immédiatement parce qu'on ne comprend même pas comment le démarrer... Mais à la deuxième installation, on comprend 2-3 trucs en plus et on arrive enfin à avoir un avion... au milieu d'un océan... Désintallation puis réinstallation quand notre moral se sent l'envie de retenter l'aventure. Je vous rassure, au troisième essai on arrive enfin à placer un avion sur une piste. Bon malheureusement, ce bel avion reste cloué au sol faute d'arriver à démarrer le bestiau...

Mais la quatrième installation mène à la libération. Flightgear c'est un peu la quête du Graal du libriste passionné d'aéronautique. Une fois que l'on a compris les différents mécanismes d'installation des scènes, des objets et des avions, on se sent littéralement pousser des ailes. On veut visiter le monde entier à bord du jet privé, du petit coucou de l'aéroclub du coin, du bon vieux avion de transport de la seconde guerre mondiale.

Remonter le grand canyon, voler au dessus de chez soi, survoler les côtes bretonnes, contourner le Kilimandjaro sont autant de possibilités de détente (et de perte de temps) offertes.

Seul petit point à ne pas négliger, ce n'est pas un jeu mais un simulateur. Et il va falloir quelques heures d'entraînement et de lecture de documentation avant de prendre du plaisir...

Mais l'effort en vaut vraiment la peine. :)

Corse

Hélico

Alpes

C-47

2 commentaires

Pour faire simple, cette version apporte des changements majeurs. Et autant vous prévenir tout de suite : il y a un paquet de nouveautés à tester !

Cette nouvelle version introduit deux nouveaux concepts : les plugins et les profils.

Vous mangerez bien un peu de plugins ?

Les plugins permettent une gestion fine et personnalisable des fonctionnalités du 3hg-menu. La configuration minimale (sans plugin) revient aux fondamentaux de ce menu, à savoir afficher un menu en basant sa configuration sur une arborescence de fichiers .desktop. Le menu conserve quand même la possibilité d'être verrouillé (ne se ferme pas au démarrage d'une application) et continue de proposer une interface alternative et plus explicite pour les débutants.

En revanche, toutes les autres fonctionnalités sont maintenant externalisées. Il est ainsi possible de les activer/désactiver facilement selon les besoins, et surtout, il est beaucoup plus facile d'étendre les fonctionnalités du menu via de petits scripts python. Ainsi l'affichage des applications récemment utilisées et la possibilité d'éditer les fichiers .desktop de l'arborescence sont maintenant gérés via des plugins. Et puis pour m'amuser et tester un peu ce nouveau moteur, je me suis amusé à en programmer un qui permet de marquer des applications favorites. C'est cadeau. ☺

Montre-moi ton beau profil

Le truc c'est que pendant le développement j'ai été confronté à un problème : il était possible de choisir quel dossier de configuration utiliser pour générer le menu, mais le choix des plugins s'appliquait à toutes les instances du menu... Et ça rendait le tout un peu trop rigide si quelqu'un veut proposer une session avec de multiples menus adaptés à des usages uniques (je pense à PrimTux par exemple).

Pour remédier à ce problème la notion de profil a été introduite. Un profil est donc constitué d'une arborescence de fichiers .desktop, ainsi que des plugins à activer pour ce profil. Il est donc possible de créer toute une série de menus indépendants avec le même exécutable (le moteur du 3hg-menu). Ce qui développe considérablement les possibilités d'usage de ce menu...

Mais ce n'est pas tout !

En plus de ces deux ajouts majeurs, de nombreuses petites choses destinées à améliorer l'usage ont été ajoutées.

Vous pouvez par exemple installer facilement le menu en exécutant (avec les droits root) un

make install

et le désinstaller avec un

make uninstall

à l'intérieur du dossier proposé au téléchargement.

Le menu est aussi beaucoup plus dynamique. Par exemple, si le menu est verrouillé et que le plugin "Récents" est activé, plus besoin de redémarrer le menu pour voir ces applications apparaître dans l'onglet approprié. Le menu est régénéré à chaud.

Et puis il y a eu bien sûr de la résolution de bugs...

À vous de jouer

Voilà voilà pour cette nouvelle version. ☺ Comme d'habitude, la documentation se trouve sur le site du collectif 3hg (indispensable avec cette nouvelle version...) et vous pouvez télécharger l'archive ici.

Ah oui n'oubliez pas que l'arborescence par défaut a été générée via des applications présentes sur mon système. Donc c'est normal que la plupart des lanceurs ne fonctionnent pas chez vous. À vous de reconfigurer une belle arborescence ! ☺

Bons tests !

2 commentaires

tl;dr: Ceci est le dernier article sous le nom de domaine blog.moutonlibre.net. Je transfère le tout sous moutonlibre.net/blog donc pensez à mettre à jour l'adresse du flux RSS dans vos agrégateurs !

Ces derniers temps, et ce n'est pas près de changer, j'ai beaucoup moins de temps à consacrer à la gestion de mes services personnels en ligne (MouTonLibre quoi). Je compte en effet récupérer ce temps pour me consacrer à mes autres loisirs (développement, sport, photographie, etc.). En ça je rejoins globalement les conclusions de Cyrille, à savoir que l'auto-hébergement voir même l'hébergement en général n'est pas encore adapté au grand public. Je ne pense cependant pas que ce soit un problème de compétences, mais de temps : il faut du temps pour acquérir les compétences mais aussi pour la maintenance régulière de l'hébergement.

Ne souhaitant cependant absolument pas fermer cet espace, j'ai donc cherché à simplifier le backend de MouTonLibre et je souhaitais partager avec vous mes conclusions.

Le Raspberry, c'est une perte de temps pour les solutions d'auto-hébergement. Et cela pour deux raisons qui se résument en cinq lettres : SD et ARM. Balancer un OS sur une carte SD est une hérésie du fait de sa fragilité. Les erreurs d'écritures s'enchaînent et sur un OS ça fait très mal. J'en ai déjà malheureusement fait la désagréable expérience... Alors après le Raspberry 3 permet de booter sur un disque dur externe, mais le partage du port Ethernet avec le port USB me rebute un peu... De même un processeur ARM (et les différents drivers non-libres...) c'est bien pour la bidouille, mais cette technologie limite malheureusement énormément les choix techniques. On est limité à un choix restreint de distributions et de solutions techniques. Ce qui peut ne pas nous correspondre... Bref, préférez des solutions plus traditionnelles comme un Q-nap ou un NUC. Ce n'est pas beaucoup plus cher, mais la fiabilité n'a vraiment rien à voir.

Ma deuxième erreur, qui semble être un détail mais qui devient finalement chronophage, est la multiplication des sous-domaines. Chaque sous-domaine doit être paramétré entièrement, de la gestion du DNS jusqu'à la génération des certificats de sécurité. De plus en cas de changement dans la configuration il faut attendre la propagation sur les serveurs DNS pour que le service soit disponible. Et pour quels avantages ? Dans mon cas : aucun. Un dossier placé à la racine avec le bon nom et le service approprié suffit largement et c'est quand même vachement plus simple.

On en vient donc au dernier point, et je rejoins une nouvelle fois Cyrille, rien ne vaut un service installable avec seulement une copie de fichiers via FTP. On crée le dossier, on copie les fichiers, on se connecte et basta. Ainsi c'est facilement installable, les sauvegardes sont d'une simplicité déconcertante et cerise sur le gâteau une migration se fait les doigts dans le nez. C'est peut-être là l'erreur faite par les différentes solutions d'auto-hébergement : la simplicité ne repose pas sur une belle interface graphique mais bien sur une gestion ultra-simple via des outils traditionnels. Tout le monde sait se déplacer dans une arborescence et faire des copier/coller mais ne sait pas forcément aller chercher dans des fichiers de configuration obscurs pourquoi l'installation "one-click" ne s'est pas déroulée comme prévu (je n'ai jamais réussi à installer un serveur mail sur Yunohost par exemple).

Donc aujourd'hui MouTonLibre se limite donc un nom de domaine complètement paramétré par o2switch (y compris les certificats Let's Encrypt) et des sous-dossiers contenant mes applications "copier/coller" (BlogoText, BoZon). Et pour la page d'accueil, tout est géré par le petit moteur de page statique de Thuban : swx. Il se charge lui-même de lister mes sous-dossiers et de générer les liens correspondant. Et si je veux rajouter d'autres pages statiques, cela se fait en quelques secondes par l'ajout de fichiers formatés en txt2tags. Ultra-rapide. La mise en place était d'autant plus facile que j'ai piqué la configuration de http://3hg.toile-libre.org/... ;-)

Avec tous ces petits changement, je peux maintenant gérer mon domaine en quelques minutes. Ce qui peut se faire en coup de vent le soir. Gros changement puisqu'il me fallait facilement une demi-heure durant le weekend pour tout gérer lorsque je m'auto-hébergeait sur le Raspberry... Mais l'apprentissage est devenu très limité...

Malheureusement, la conséquence de tout cela est que les adresses des flux RSS et ATOM du blog ont migré aussi... Du coup si vous souhaitez toujours me suivre, à partir de maintenant ce sera à ces adresses :
https://moutonlibre.net/blog/rss.php ou https://moutonlibre.net/blog/atom.php.

8 commentaires

Petite brève concernant le 3hg-menu (pour les articles de fond, il faudra encore attendre un peu)...

La publication des versions alpha du 3hg-menu a permis de passer à la vitesse supérieure pour le développement de cette application. Depuis la version alpha-2 quelques bugs ont encore été résolus :

  • meilleure navigation au clavier (exécution avec appui sur la touche entrée et déplacement via flèches directionnelles) ;
  • changement d'onglet possible via un scroll à la souris ;
  • correction du bug qui dupliquait les applications récentes.

Je pense que la version Gtk a maintenant atteint la maturité nécessaire pour une publication prochaine et c'est pourquoi je vous invite à tester la version bêta. :)

Comme d'habitude, la documentation est ici et vous pouvez télécharger la version bêta ici. :)

1 commentaire

Depuis le précédent article et grâce à quelques retours (merci trentanel) suite à la publication de la version alpha-1 du 3hg-menu, j'ai effectué quelques modifications.

La plus importante et la plus visible concerne l'interface graphique. L'ancien système à onglets (un StackSwitcher) avait une largeur fixe et ne permettait pas un redimensionnement du menu inférieur à cette largeur. Au delà de quelques onglets, on arrivait donc à un menu étiré et pouvant ne plus être contenu dans des écrans de petites tailles. J'ai donc basculé le menu vers un système à onglet plus classique (un Notebook) afin de permettre un redimensionnement libre.

Pour le reste, il s'agit surtout de corrections de bug :

  • en cas d'absence d'éditeur de texte, de terminal ou de lanceur d'application sur le système, un message d'avertissement est affiché ;
  • il n'est plus possible d'éditer les .desktop dans l'onglet "Récents" (car il n'existe pas physiquement dans l'arborescence) ;
  • et enfin les applications récentes sont mises à jour même en cas de liste pleine...

Pour plus d'informations, c'est toujours ici et pour télécharger une archive pour tester un peu le bousin c'est ici. :)

Amusez-vous bien !

Screenshot 3hg-menu 1 Screenshot 3hg-menu 2
Screenshot 3hg-menu 3
Screenshot 3hg-menu 4
Screenshot 3hg-menu 5

8 commentaires

Il y a peu avec Thuban nous avons établi à peu près simultanément un fait indéniable : le HandyMenu actuel met trois plombes à démarrer. C'est devenu une vraie usine à gaz avec le temps. Nous nous sommes donc amusés à réécrire des menus reprenant globalement la même interface mais ayant des moteurs totalement différents. Cela a donné aujourd'hui deux nouveaux menus :

  • le tkmeν proposé par Thuban ;
  • et le 3hg-menu dont je vais vous parler grandement ici.

Ces menus, bien que issus de la même idées, sont finalement totalement différents et pourraient même être complémentaires. Le tkmeν a pour vocation d'être le plus léger possible : un fichier de configuration tout simple et une interface minimaliste et hyper légère reposant sur la bibliothèque Tk. Quant au 3hg-menu, mon idée était de créer une menu reposant sur une arborescence de fichiers .desktop, qui je le rappelle sont standardisés par freedesktop.org et permettent d'exécuter les applications. Ainsi, n'importe qui peut créer rapidement son menu personnalisé en collant les fichiers .desktop des applications installées, présentes dans le répertoire /usr/share/applications, dans différents dossiers et en faisant pointer le menu sur ce dossier.

Après avoir exprimé mon idée sur Debian-Facile, phlinux m'a alors orienté vers popdown, un menu reposant lui aussi sur des fichiers .desktop. La merveille du Libre : j'ai alors repris une partie du code du menu popdown pour l'intégrer à mon projet.

Après un long travail pour découpler ce dont j'avais besoin de l'interface du menu popdown, après couplage avec une interface type "HandyMenu" mais permettant de se déplacer dans l'arborescence, après l'ajout de nombreuses fonctionnalités comme la gestion des dernières applications exécutées (deuxième capture d'écran ci-dessous) ou la possibilité d'afficher une interface dédiée à l'aide aux débutants (dernière capture) et après finalisation du tout, j'ai donc le plaisir de vous appeler à tester tout ça en téléchargeant la version alpha-1 ici. Tout est expliqué sur cette page et vous pourrez télécharger une archive avec tout le nécessaire pour les tests. Ce serait un immense plaisir que de recevoir des remarques de votre part !

Ah et profitez-en pour tester également le tkmeν...

3hg-menu
Applications récentes

Assistance 3hg-menu

37 commentaires

Aujourd'hui je vais changer un peu des billets techniques pour vous parler un peu de certains aspects du financement participatif. De ses dangers en fait, via un exemple concret... Aussi, je préfère vous prévenir que cet article est issu d'un coup de gueule et il se peut donc qu'il soit quelque peu sarcastique. Et oui je vais enfoncer des portes ouvertes.

Admettons que vous êtes à jour et que vous connaissez le fonctionnement du financement participatif (ou crowdsourcing pour faire hype) (pour les autres, zou sur Wikipédia !). Là on s'intéresse bien sûr au don avec contrepartie popularisé par Kickstarter.

Il y a des tas de points positifs à cette méthode de financement comme la limitation des intermédiaires (quoique les plateformes...), la proximité, etc. mais il existe aussi des dangers pour le financeur et le porteur de projet. Afin d'éviter les arnaques et les déceptions il faut en être parfaitement conscient avant de se lancer dans cette aventure.

Si on résume, en cas d'échec de la campagne, cela fait mal au porteur de projet car cela montre que son projet ne suscite pas grand intérêt. En cas de financement, et si on a affaire à un projet bien monté mais aussi que tout se déroule comme prévu, le porteur de projet et les financeurs peuvent s'y retrouver et être heureux. En cas de financement, il y a encore un risque que le projet n'aboutisse pas. Auquel cas le porteur de projet ET les financeurs se retrouvent lésés puisque le premier fonce vers une perte d'argent et que les derniers vont être déçus par la promesse non tenue.

Maintenant, on passe aux conseils de père Starsheep pour se lancer dans une campagne de financement participatif, ou par proposition contraposée ce qui est indispensable à la présentation d'un projet avant de s'engager sur le financement :

  • Avoir quelque chose de concret et se fixer un objectif réalisable. Ne demandez pas la lune, avancez par étape...
  • mais soyez extrêmement clair dans vos intentions à moyen/long terme (votre produit est-il destiné à ramener de l'argent ou bien est-ce un projet purement humaniste ?). Ne cachez rien de vos intentions.
  • Si vous n'êtes pas seuls à la réalisation de votre projet, indiquez vos partenaires. Mettez en lumière ce que vous êtes vraiment capables de faire ou non.
  • En cas de réussite de l'objectif initial, ne devenez pas trop gourmand en proposant de nouveaux objectifs inutiles. Cela se voit quand le porteur de projet va essayer d'amasser de l'argent pour le fun. Comme ça, parce que ça marche plutôt bien...

Le tout est d'être totalement honnête sur la démarche afin d'amener la confiance des financeurs. Cela passe bien entendu par la transparence.

Note importante pour bien saisir l'ironie de la suite de cet article : je suis un membre de l'équipe de la feue HandyLinux.

Passons maintenant à une étude de cas tirée au sort parmi un projet de mon choix (je fais ce que je veux, je suis chez moi, nah !). Prenons le cas du financement de HandyDV Linux une "solution logicielle éco-responsable, facile d'accès et gratuite".

Ah au temps pour moi, le projet concerne finalement l'externalisation de la création d'un site internet... Le titre est trompeur et il faut lire à partir de la seconde moitié de la page pour mettre en lumière les vrais objectifs du financement.

Ensuite qui est ce "nous" qui a construit cette distribution ? On a quelques noms, mais sont-ils rattachés à un association ? Une entreprise ? Est-ce un projet amateur ? Ils proposent le système HandyDV Linux gratuitement, certes, mais est-ce qu'ils proposeront un service payant autour de celui-ci ?

Bon j'ai fait des recherches à votre place :

Je résume : l'idée de base est bien de proposer des prestations de service autour de HandyDV Linux. Pas seulement de proposer ce système gratuitement. On sort donc totalement de l’amateurisme. Ça aurait été bien de l'indiquer surtout que l'on ne sait toujours pas si il y a un objectif lucratif ou non derrière.

Bon ben on continue les recherches. Que donne une recherche de "HandyDVLinux" dans votre moteur de recherche favori ? Gnagnagna HandyLinux gnagna HandyLinux... Ça a l'air vachement lié, je clique. C'est fou ça, je tombe sur une distribution GNU/Linux ayant globalement la même interface... Et les mêmes logiciels tiens... Ah j'ai trouvé une différence ! Le bureau cubique qui tourne (compiz) et le conky ! Très utile pour les malvoyants, soit dit en passant. Ah et un lecteur de document (j'y reviendrai). Ok donc ça donne une meilleure idée du travail de l'équipe.

Donc ce projet est tiré d'un autre projet libre, sous licence GPL, sans en faire aucune mention. Et on ne trouve nulle part le code source des applications modifiées alors même que la licence les y oblige en cas de redistribution. J'espère qu'ils ont bien gardé les isos pour eux en attendant leur portail...

Malgré cela, l'objectif initial a été atteint, preuve que la description du projet a fait mouche. Mais bon il en faut toujours plus. Personne ne pourrait s'arrêter en si bon chemin une fois l'objectif rempli. Donc nouveau palier ! 1000€ pour des clés USB. À vos chéquiers !

Plus sérieusement, cela peut passer pour une attaque gratuite mais le malaise est bien plus profond et ne peut être résumé en un article. Il s'agit ici d'un article personnel issu d'un ras le bol général après plus d'un an d'attaques incessantes de cette équipe. En gros c'est article doit être pris comme un "il faut que ça sorte". Cette campagne de financement participatif est la goutte d'eau qui a fait déborder le vase et je devais dénoncer la malhonnêteté autour de ce projet.

Je dis bien autour de ce projet. Car le projet en lui-même est louable. Extrêmement louable. Je reviens donc sur le lecteur de document intégré à HandyDV Linux qui semble être un petit outil bien pratique. Malheureusement, cet outil n'a jamais été proposé à la communauté. Pourtant c'est le genre de petit logiciel qui peut facilement être intégré dans n'importe quelle distribution et qui pourrait aider des malvoyants au-delà d'un système bien précis. De même, plutôt que de proposer un seul espace sur le Web accessible aux malvoyants et dédié à l'apprentissage de l'informatique, pourquoi ne pas travailler directement avec les "gros" projets ? Ici Debian par exemple.

Le problème est bien cette fameuse Liberté 0 énoncée par Richard Stallman qui stipule que le logiciel doit pouvoir être exécuté par n'importe quel individu. Ce qui amène logiquement à la notion d'accessibilité dans le logiciel libre. C'est cette liberté 0 qui doit être défendue pour réellement rendre accessible l'informatique. Cela passe dans l'idéal par une prise de conscience collective afin que chaque développeur propose une version accessible de son application, que ce code soit intégré aux distributions mères pour que cela se répande dans chaque système informatique. C'est la seule façon d'avoir des systèmes totalement accessibles et dont la pérennité est assurée.

Faire semblant de révolutionner l'accessibilité par un coup de truelle sur un projet existant, se dire humaniste en gardant pour soit les quelques lignes de code qui pourraient être utiles à tous, et demander de l'argent pour quelque chose qui pourrait être fait gratuitement par une simple demande, c'est bien ça que je désignais ci-dessus comme une démarche malhonnête...

PS : Pour un autre point de vue sur cette histoire, Thuban a fait un bel article :
Gagner de l'argent facilement avec le logiciel-libre

12 commentaires

Ceux qui passent, ou passaient, de temps en temps sur ce blog se sont certainement rendus compte de sa longue indisponibilité. Et cet article est une bonne nouvelle puisqu'il annonce le retour de MouTonLibre, mais sous une forme un peu différente... Au travers de cet article, je vais tenter de vous expliquer les problèmes que j'ai rencontré et, bien plus important, je vais vous dire les conclusions que j'ai pu tirer de toute cette aventure.

TL;DR : Mon serveur a planté lors d'une mise à jour, pas de sauvegarde du système (pas bien), pas le temps de tout réinstaller immédiatement, fin de l'auto-hébergement pour les services publics. L'hébergement, c'est du sérieux.

Il y a un mois, je devais renouveler mes certificats LetsEncrypt. Étant connecté sur mon serveur, j'en ai profité pour mettre à jour, naïvement, Raspbian. Tout s'était bien passé, à première vue, mais au redémarrage ce fut le drame. Le Raspberry était bloqué sur l'écran de démarrage que tous les possesseurs de la framboise connaissent.

Pour une fois, et c'est toujours ainsi que ça se passe, j'avais oublié de faire une sauvegarde... Oui, j'avais opté pour la solution de facilité : sauvegarde manuelle et régulière des fichiers de mon blog. Pas de rsync et de cron. Non, pour le moment j'étais resté sur une solution de facilité. Mais voilà la dernière sauvegarde était antérieure à la rédaction du dernier article. Boulet.

Donc vous voyez venir le problème. Le Raspberry ne démarrait plus et pas moyen de sauver le truc après avoir écumer le web à trouver une solution. Il fallait donc que je réinstalle Raspbian et mes services de A à Z. Mais avec en plus des solutions de backup plus professionnelles. La flemme, et surtout pas le temps, et l'argent, pour cela.

Donc l'auto-hébergement est une expérience intéressante, mais à partir du moment où il faut penser à mettre en place des solutions professionnelles, ou qui y ressemblent, pour assurer la continuité du service, alors l'amateurisme n'est plus adapté. De plus, cela commençait à empiéter de façon importante sur le temps libre et il faut alors le dire : ça saoule.

J'en suis donc arrivé à la conclusion que je souhaitais héberger mon blog, et éventuellement d'autres services publics à l'avenir, sur une solution de qualité professionnelle. Et quoi de mieux alors que de faire appel aux professionnels ? Si on considère que le temps c'est de l'argent, et que pour arriver à une qualité de service acceptable, je devais investir dans divers disques durs, on réalise vite que payer un hébergement n'est pas la mer à boire. J'ai donc pris l'abonnement à 5€ par mois chez o2switch qui propose le tout illimité (bande passante, espace disque, etc.). Pratique.

Dernier problème, j'avais pris mon nom de domaine chez OVH. Et le changement de registar n'est pas immédiat... Il faut rajouter à tout cela, une semaine et demi de délai pour le transfert du nom de domaine. Rien à faire, tout est très simple, mais c'est un peu long.

Bref, une fois tout cela réglé, j'ai donc basculé mon blog (amputé d'un article) sur mon hébergement o2switch. Il faut encore que je règle deux trois détails je pense (notamment les alias, les certificats LetsEncrypt, etc.), mais le plus gros semble être fait.

Pour autant, je n'ai pas totalement abandonné l'auto-hébergement. Dans le fond, le seul avantage de l'auto-hébergement est d'avoir un contrôle de ses données personnelles. Quel est donc l'intérêt d'auto-héberger son blog, qui est un lieu public ? Aucun. En revanche, pour ce qui est de l'hébergement d'un cloud personnel, cela reste intéressant.

Donc aujourd'hui ma stratégie d'hébergement de mes services web est finalement assez simple :

  • les services publics (blog et galerie pour le moment, destinés à être visibles par des tiers) sont hébergés sur une solution professionnelle ;
  • les services privés (que je suis donc seul à utiliser) et recueillant des données personnelles sont auto-hébergés.

Je pense avoir trouvé ici un juste équilibre entre coût, contrôle des données personnelles, qualité du service et perte de temps. J'ai commencé l'auto-hébergement pour apprendre, et l'apprentissage doit être un jeu. Proposer des services publics fait quitter l'auto-hébergement du simple loisir, et il faut en être conscient avant de se lancer.

Aucun commentaire

C'est un peu l'actualité du moment dans le monde des distributions GNU/Linux : des nouvelles méthodes d'empaquetage d'application débarquent sur à peu près toutes les distributions et sont annoncées comme révolutionnaires. Mais qu'en est-il vraiment ?

Je vous préviens tout de suite, je ne suis pas un expert dans ce domaine et il se peut qu'il y ait quelques imprécisions. J'ai essayé de me renseigner au maximum avant d'écrire cet article afin de ne pas trop écrire d'aberrations, mais je n'ai pas fait une étude approfondie du code source pour être sûr de ce que j'avance. De toute façon même si je le voulais je n'en aurais pas les capacités. ;) Mais surtout n'hésitez pas à apporter des précisions dans les commentaires, dans d'autres articles, etc.

Dans cet article, je ne parlerai que de deux types de paquets dits "universels" :

  • Flatpak, proposé par freedesktop.org (un projet chargé de proposer des solutions pour favoriser l'interopérabilité dans le secteur des environnements de bureaux libres) ;
  • Snap, proposée par Canonical (la société derrière Ubuntu).

L'existence même des ces types de paquet repose sur la volonté de lancer les applications dans des "bacs à sable". Il s'agit en fait d'isoler les applications du système d'exploitation. L'application évolue de façon autonome et les interactions avec le système hôte ne sont possibles qu'en cas d'accord explicite de la part de l'utilisateur/administrateur. Cela reprend un peu le fonctionnement des applications, Android, iOS qui demandent par exemple la permission d'utiliser la webcam, ou la connexion réseau.

Commençons déjà par décrire le fonctionnement de Flatpak, un poil plus conventionnel que Snap à mes yeux. Accrochez-vous, mais sachez que si vous comprenez la méthodologie utilisée par Flatpak, vous comprendrez le fonctionnement de Snap.

Flatpak repose sur une approche basée sur 2 couches :

  • les runtimes ;
  • l'application.

Un runtime peut être vu comme une librairie partagée et étendue. Alors pourquoi étendue ? Car en plus de la communication vers le système d'exploitation (comme cela se fait actuellement), le runtime est aussi chargé de gérer les accès vers le système hôte. Il est chargé d'ouvrir tel ou tel droit (comme l'accès au réseau, aux fichiers de l’utilisateur) aux applications qui utiliseront ce runtime.

Le paquet à proprement parler intègre l'application mais aussi toutes ses dépendances annexes. Il faut bien comprendre que seul un runtime peut-être partagé entre plusieurs applications. Toutes les autres dépendances doivent être intégrées de façon brute au paquet.

Prenons l'exemple de l'installation de Firefox (en version Gtk idéalement) par le biais d'un paquet Flatpak. Firefox nécessitera le runtime org.gnome.Platform 3.xx (qui propose Gnome SDK) pour les accès au réseau, ainsi que la bibliothèque Gtk (ce qui permet d'alléger l'application). Bien sûr l'idée est aussi de pouvoir gérer de façon précise les droits en verrouillant/déverrouillant certains accès comme bon vous semble. Le fait de baser une application sur un certain runtime, ne donne pas accès à tout les droits gérés par ce runtime. Imaginez maintenant que vous vouliez que la langue de Firefox s'adapte à votre locale. Alors l'application Firefox devra également se baser sur le runtime org.gnome.Locale 3.xx qui se chargera de gérer les accès à la locale du système. Toutes les autres dépendances de Firefox (SQLite, ffmpeg, mesa, python, etc.) sont directement intégrées au paquet et ne pourront pas être partagées avec une autre application.

Dernier point concernant Flatpak, il est actuellement impossible de faire communiquer deux paquets ensemble. Dans le cas de LibreOffice et de son utilisation via Flatpak, il est par exemple impossible d'ouvrir un navigateur via un clic sur un lien hypertexte présent dans un document. De même, il est impossible d'accéder à une aide en ligne, ou même une aide locale sous forme html sans intégrer un moteur de rendu html... Vous sentez venir les emmerdes non ?

Pour ce qui est de Snap, le fonctionnement est légèrement différent. Chaque package comprend l'application ainsi que l'intégralité de ses dépendances, enfin jusqu'à un certain niveau (vous allez comprendre après la lecture des prochains paragraphes), afin de fonctionner en totale indépendance.

En revanche, il existe des paquets Snap un peu spéciaux. Ces paquets ne sont pas des applications (qui je le rappelle fonctionnent en toute indépendance les unes envers les autres) mais des "frameworks". En fait il s'agit d'extensions au système initial (ubuntu-core pour le moment) qui ont des privilèges un peu spéciaux. On va dire que les frameworks sont relativement libres. Les applications communiquent ensuite directement avec ce framework et la gestion des droits se fait donc entre les Snaps "applications" et les Snaps "framework". Comme framework disponible sur Snappy Ubuntu Core, il y a par exemple Docker. Vous commencez à comprendre le truc ? On peut finalement voir de grandes similitudes entre les frameworks de Snap et les runtimes de Flatpak, mais à différents niveaux (Flatpak pour le bureau, Snap pour des services).

À noter que le logiciel chargé de communiquer directement avec le système d'exploitation est lui même considéré comme un paquet Snap. Mais il est spécial dans le sens que les frameworks se basent dessus, et que des applications peuvent également s'en servir comme base. Pour l'instant il n'existe que "ubuntu-core" mais ces derniers jours l'annonce a été faite que Snap serait adapté à la majorité des grandes distributions GNU/Linux.

Cependant, à la différence de Flatpak, il est possible de faire communiquer différents Snaps entre eux via un système d'interfaces. Un Snap peut proposer un "slot" (voyez cela comme la prise dans le mur), tandis que les autres snaps ont la possibilité d'utiliser ce slot pour s'y brancher et démarrer des communications (en utilisant une fiche adaptée à la prise). En listant les interfaces, il est alors possible de visionner l'ensemble des "slots" ainsi que les "plugs" (paquets connectés) associés. Il faut bien comprendre que chaque application basée sur un paquet Snap est capable de se lancer de façon totalement autonome, mais peut cependant communiquer avec les autres applications via un système normalisé permettant un contrôle fin des droits.

Voilà pour le fonctionnement. Si je pouvais résumer les similitudes et les différences je dirai que les deux types de paquets que j'ai présenté sont donc capables de lancer des applications de façon sécurisée (bac à sable) et avec un contrôle précis des droits. Mais Flatpak ne permet pas aux applications de communiquer entre elles, ce qui peut vite devenir embêtant comme on l'a vu avec LibreOffice. Pour les paquets Snap, ceux-ci doivent intégrer l'ensemble des librairies nécessaire à la construction de l'application (pas de liens dynamiques). Ce qui entraîne des tailles de paquet énormes... On repassera donc pour la légèreté des systèmes d'exploitation avec cette méthode...

En fait, après étude de ces nouveaux types de paquets, il me semble que toute cette technologie n'est pas encore assez mature mais semble prometteuse pour certaines applications. L'idéal serait d'arriver à rassembler la légèreté des paquets Flatpak avec les possibilités offertes par les paquets Snap.

Je comprends bien l'intérêt d'avoir des paquets "universels" à des fins de tests ou des applications isolées dans le cadre d'une gestion de serveurs mais je n'arrive pas à comprendre en quoi cela serait "révolutionnaire" et pourquoi cela est présenté comme la méthode d'empaquetage du futur.

Les créateurs de ces paquets insistent bien sur le fait que ces technologies sont complémentaires aux méthodes d'empaquetage "traditionnelles" (rpm, deb, etc.) mais j'ai peur que ces nouvelles méthodes ne soient utilisées à tout bout de champ sans raison valable par les développeurs et en oublient les paquets traditionnels (voir par exemple cet article). Avec Snap et Flatpak il devient très facile de créer son paquet (plus qu'un deb en tout cas) et il y a un effet de "hype" du fait de la nouveauté. Mais franchement, ça n'a quasiment aucun intérêt dans le cas d'une utilisation bureautique. Le seul intérêt concerne la sécurité dans le cas d'une application vérolée... Ce qui reste relativement rare dans le cadre des logiciels libres. J'ai par exemple du mal à saisir l'intérêt de proposer un Snap pour FreeCad. Si ce n'est pour s'amuser...

Mais parlons sécurité justement, car il s'agit bien de l'argument majeur en faveur du déploiement d'applications isolées. Les applications Snap et Flatpak sont empaquetées avec l'ensemble des librairies nécessaires à leur fonctionnement. Ce qui implique que le paquet doit immédiatement être mis à jour lors de la détection d'une faille de sécurité dans une des librairies... Et je ne pense pas que le développeur d'un logiciel proposant son paquet universel pour être tranquille avec le déploiement dans tout l'écosystème GNU/Linux soit plus réactif que des mainteneurs uniquement en charge de la librairie... Imaginez en plus si une faille est découverte dans OpenSSL (toute ressemblance avec un événement réel est purement fortuite). Un administrateur système devra alors s'amuser à chercher tous les paquets ayant empaqueté les versions compromises de OpenSSL (ah oui car en plus, la gestion des versions est totalement libre) pour les désactiver un par un en attendant que tous les créateurs de paquets les remettent à jour... Voilà voilà, je vous laisse méditer là dessus.

J'ai vraiment cherché à me faire une idée de mon côté. En repartant de la base et du fonctionnement de ces nouvelles méthodes d'empaquetage. Et je dois dire que le seul usage que je peux y trouver est un usage de test. On installe une application dans un bac à sable en veillant bien à limiter les droits d'accès au système, on teste un peu, puis on supprime le tout sans laisser de traces. Pour le reste... Très peu pour moi.

J'espère donc que les développeurs ne sauteront pas sur Snap ou Flatpak comme si c'était la solution à tous les problèmes. Restez sur les bonnes vieilles méthodes... S'il vous plaît.

10 commentaires

J'ai failli appeler cet article « Bozon, c'est bon. Mangez-en ! » ou « Bozon, c'est pas de la bouse ! », mais voyez que j'arrive encore à me retenir... Toujours est-il que l'idée est là : BoZoN, dont j'ai appris l'existence par Cyrille, est un logiciel plutôt exceptionnel.

Du fait que j'auto-héberge mes services web sur Raspberry et que je débute dans ce domaine, j'ai besoin de services légers, faciles d'accès et facilement maintenables. Au contraire d'un Owncloud tendant vers l'usine à gaz (CozyCloud étant exclu car mono-utilisateur), BoZoN est une plateforme de stockage et partage de fichiers très minimaliste. Tout fonctionne sans base de données et repose uniquement sur le parcours de l''arborescence des dossiers utilisateurs et la création de liens de partage uniques, permettant une gestion complète (installation, sauvegardes, mises à jour, etc.) via de simples copier/coller. Et c'est le pied.

Je ne vais pas faire l'étalage de toutes les fonctionnalités ici, vous les retrouverez sur le site officiel, mais le seul manque éventuel est l'impossibilité de synchroniser des dossiers afin d'effectuer des sauvegardes facilement. Mais on finit par se faire aux *.zip.

Maintenant passons aux choses sérieuses. Premièrement, afin d'avoir un espace de stockage adapté au cloud (la carte SD du Raspberry étant un peu limite...), j'ai acheté un disque dur externe de 1.5 To. Ce qui laisse quand même pas mal de marge... À noter que ce disque dur est alimenté via une prise secteur, indispensable dans le cas d'un branchement sur Raspberry puisque ce dernier ne délivre nativement pas assez de puissance pour alimenter un disque dur via les ports USB. Afin que le disque dur soit monté automatiquement au démarrage du Raspberry, il faut rajouter une ligne au fstab. Pour cela, vous pouvez dans un premier temps brancher et monter votre disque dur puis copier la ligne correspondante dans le fichier /etc/mtab pour la coller dans le fichier /etc/fstab. Attention cependant, il est nécessaire de faire quelques adaptations. Dans mon cas, il a fallu modifier :

  1. l'identifiant de l'utilisateur à uid=33 pour qu'il corresponde à www-data ;
  2. l'identifiant du groupe à gid=33 pour qu'il corresponde également à www-data ;
  3. le point de montage vers l'emplacement sur le serveur ;
  4. le driver en ntfs-3g (et non ntfs) afin de pouvoir avoir accès en écriture au disque dur.

Ce qui donne finalement une ligne de ce type dans mon cas :

/dev/sda1 <emplacement sur le serveur> ntfs-3g rw,relatime,uid=33,gid=33,fmask=0177,dmask=077,nls=utf8,noserverino,errors=continue 0 0

Maintenant que le disque dur est monté automatiquement au démarrage, il ne reste plus qu'à installer BoZoN ! Pour cela, seules quelques étapes sont nécessaires.

  1. Téléchargez l'archive.
    wget https://github.com/broncowdd/BoZoN/archive/master.zip
  2. Décompressez l'archive (unzip est une dépendance à BoZoN, à installer au préalable).
    unzip master.zip
  3. Copiez le dossier vers la racine de votre site.
    cp -R BoZoN-master/* <emplacement sur votre serveur>
  4. Ajoutez la configuration Nginx suivante. (Attention à mettre à jour les différents champs.)
    server {
    	listen 80;
    	listen [::]:80; #ipv6
    	server_name <nom de domaine>;
    	return 301 https://$server_name$request_uri;
    }
    server {
    	listen 443 ssl;
    	listen [::]:443 ssl; #ipv6
    	server_name <nom de domaine>;
    
    	index index.php;
    	root <emplacement sur votre serveur>;
    	client_max_body_size XXXXM; # XXXX à remplacer avec la taille maximale autorisée pour l'envoi de fichiers. Attention à actualiser le fichier php.ini également.
    
    	location ~ \.php$ { 
    		try_files $uri = 404;
    		fastcgi_pass unix:/var/run/php5-fpm.sock;
    		include fastcgi_params;
    		fastcgi_intercept_errors on;
    		fastcgi_param HTTPS on;
    		fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    	}
    
    	# On protège certains dossiers.
    	location / {
    		location ~ (uploads|private|thumbs) {
    			deny all;
    		}
    		location ~ core {
    			deny all;
    			location ~* \.js$ {
    				allow all;
    			}
    		}
    	}
    
    	# Configuration HTTPS
    	ssl_certificate <emplacement du certificat>;
    	ssl_certificate_key <emplacement de la clé>;
    	ssl_trusted_certificate <emplacement de la chaîne de contrôle de l'autorité de certification>;
    
    	ssl_protocols TLSv1.2;
    	ssl_ecdh_curve secp384r1;
    
    	ssl_ciphers EECDH+AESGCM:EECDH+AES;
    	ssl_prefer_server_ciphers on;
    
    	resolver 80.67.169.12 80.67.169.40 valid=300s;
    	resolver_timeout 5s;
    	ssl_stapling on;
    	ssl_stapling_verify on;
    
    	ssl_session_cache shared:SSL:10m;
    	ssl_session_timeout 5m;
    	ssl_session_tickets off;
    
    	add_header Strict-Transport-Security "max-age=15552000; includeSubdomains; preload";
    }
    
  5. Relancez Nginx.
    service nginx reload

Rendez-vous sur votre site avec votre navigateur préféré, et il ne vous reste plus qu'à vous connecter ! À noter qu'à la première connexion, il vous sera demandé de créer le compte administrateur.

Le petit plus que j'apprécie vraiment est que suite à la copie de ma bibliothèque musicale sur BoZoN, je peux maintenant l'écouter n'importe où grâce au lecteur intégré. Allez si je peux me permettre une suggestion, il serait vraiment génial de pouvoir créer des playlists... La création de liens symboliques dans un dossier via BoZoN ne pourrait pas être envisageable ? ;)

À noter que, du fait de mon amateurisme, il se peut que la configuration de Nginx soit perfectible. BoZoN est prévue pour fonctionner de base avec Apache, et la configuration que je vous ai donnée relève du bricolage. N'hésitez donc surtout pas à me faire part de vos remarques.

9 commentaires

Suite aux différentes remarques reçues via les commentaires de mon article sur Let's Encrypt, j'ai décidé de remettre un peu les mains dans le cambouis.

Ma configuration de Nginx était un peu flaibarde et trop simpliste. Ce qui me donnait une note de B au SSL server test de Qualys SSL labs. En suivant le tutoriel donné par Angristan, j'ai donc remis à jour ma configuration de Nginx.

Cela aurait pu durer 5 minutes, le temps d'écrire les lignes, mais non. Disons que chez moi, ça ne marche jamais du premier coup. La faute à l'activation du protocole spdy qui, je ne sais pas pourquoi, fait tout planter... Pour résoudre le problème j'ai donc été forcé d'ignorer la ligne :

listen 443 ssl spdy;

pour réécrire la ligne « par défaut » :

listen 443 ssl;

Bon hormis ce petit problème, la configuration donnée par Angristan est géniale ! Merci à toi.

Et pour conclure je me permets donc de comparer ma configuration à celle de ma banque (haha). À vous de juger.

LCL niveau C blog niveau A

11 commentaires

Suite à de nombreuses remarques quant à ma sécurisation SSL bidon dans les commentaires de mon précédent article, j'ai décidé de corriger ça ce soir.

Dans un premier temps, je me servais d'un certificat auto-signé. Et autant vous dire que les navigateurs ne me considéraient pas comme une entité de toute confiance. À raison. Non pas que je cherche à pirater des données personnelles, mais bien parce que techniquement je me classe dans la catégorie des amateurs. Et n'ayant même pas confiance en moi, je vois mal des organismes m'accorder la leur.

Donc pour faire un peu plus sérieux, et accessoirement pour sauver mon flux RSS, je suis passé par le service de certification gratuit "Let's Encrypt". Et il n'y a pas à dire, ça assure.

Pour générer des certificats, rien de plus simple. Dans un permier temps, on installe Let's Encrypt :

git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt
./letsencrypt-auto --help

À partir de là, il faut couper le serveur (et comme je suis un fou, j'ai fait ça le soir pour faire chier le plus de personne possible) avec la commande suivante (avec Nginx comme logiciel de serveur web) :

service nginx stop

Et là vous vous hallucinez car vous reconnaissez SysV et non systemd... Oui j'aime nager à contre-courant (en fait je n'ai rien choisit mais on s'en fou, c'est pour la postérité). Mais là n'est pas la question et si jamais vous êtes sous systemd, la commande pour couper le service est :

systemctl stop nginx

À ce moment là, il ne reste plus qu'à générer les couples certificats/clés avec cette commande :

./letstencrypt-auto certonly --standalone --agree-tos --email email@exemple.org -d exemple.org

Après quelques secondes, vous retrouverez le certificat (fullchain.pem) et la clé (privkey.pem) dans le dossier suivant :

/etc/letsencrypt/live/exemple.org/

Et... C'est tout ! Il ne vous reste plus qu'à changer la configuration de Nginx pour prendre en compte les nouveaux certificats et le tour est joué. Simple comme bonjour.

Juste un détail, quand vous définissez l'adresse du certificat dans la configuration de Nginx, ne faites pas une erreur de frappe comme moi... Ça peut vous ruiner une soirée.

35 commentaires

Le fait que vous pouvez lire ce texte aujourd'hui ne repose que sur une seule raison.

Comme tout lecteur de blog, vous vous attendez certainement à ce que cette raison soit une envie de partage, le besoin d'une fenêtre afin d'exprimer publiquement ses opinions, le désir d'un espace d'échange, mais non ce n'est pas la raison principale. Disons que ces divers aspects sont en quelque sorte la cerise sur le gâteau. Assez de suspens maintenant, la principale raison est tout simplement... Le challenge !

De nos jours, ouvrir un blog n'est cependant pas un challenge en soit. En quelques clics, il est possible de s'acheter un espace sur bien des hébergeurs ou même des fournisseurs d'accès à internet. Mais le challenge que je me suis fixé est d'auto-héberger quelques services internet. Pas question d'utiliser un serveur chez un tiers, je dois le voir, le toucher et pouvoir brancher un clavier et un écran dessus. Ce n'est pas la solution la plus simple, la plus sécurisée aussi, de s'offrir un espace sur le web, mais elle a le mérite de forcer l'apprentissage. La lecture de tutoriels ou diverses documentations ne remplacera jamais l'expérience. Sans mettre les mains dans le cambouis, il est impossible de savoir si l'on est capable de le faire ou non. Voilà la vraie raison de l'ouverture de cet espace.

L'objectif initial reposait donc sur quatre choses :

  • disposer d'un serveur à domicile ;
  • ouvrir un blog ;
  • proposer un espace de cloud pour les proches ;
  • le tout devant être basé sur des technologies libres.

Pour cela, et comme un serveur est destiné à rester allumer 24h/24 et 7 jours/7, il est essentiel que la consommation électrique et la pollution sonore soient réduites à leur strict minimum. Les nano-ordinateurs à processeur ARM remplissent parfaitement ces critères. Si les premières versions de ces cartes avaient des ressources trop limitées pour servir de serveur, les nouvelles générations peuvent satisfaire la majorité des besoins. Pour un blog et un espace de cloud personnel limité à quelques utilisateurs, cela est amplement suffisant. Le Raspberry Pi 2 Model B, bien que pas forcément la carte la plus puissante, a la force d'être soutenu par une immense communauté. Ainsi il est très facile de trouver des ressources pour configurer un serveur grâce à un Raspberry Pi.

La configuration du serveur a été réalisée grâce à l'excellente documentation de mon Thuban adoré (qui sera, je n'en doute pas une seconde, le premier à déposer un commentaire sur ce blog). Cela consiste en l'installation d'une version minimale du système d'exploitation Raspbian (Debian pour Raspberry Pi), puis en l'installation progressive des différents services nécessaires à un serveur.

Les ressources d'un Raspberry étant limitées, il était impossible d'installer des usines à gaz comme système de gestion des contenus. Pour le blog, j'ai suivi les conseils de Thuban et j'ai installé BlogoText développé par Timo van Neerden. Ce moteur, actuellement en version 3.2.8, a l'avantage d'être très léger et de proposer un ensemble de services nécessaires à l'activité de blogueur (partage/sauvegarde de liens, partage de fichiers, micro-blogging, lecteur de flux rss, etc.). Tout repose sur une base de donnée SQLite qui n'agit que sur un fichier, ce qui facilite grandement les sauvegardes. J'utilise ce moteur dans l'ombre depuis quelques temps et je dois dire que j'en suis très satisfait. Le seul petit manque serait une gestion des pages statiques afin de réutiliser facilement le template du blog. Timo si tu m'entends... ;)

Pour le cloud personnel, j'ai longtemps hésité à vrai dire. Quand on parle de cloud dans le monde du logiciel libre, le premier nom qui vient à l'esprit est Owncloud. Ce logiciel, très complet, est certainement trop lourd pour une utilisation sur un Raspberry Pi. Je ne dis pas que c'est impossible, mais le choix d'un Raspberry Pi entraîne la recherche de logiciels minimalistes. Plus qu'une restriction imposée par le matériel, c'est aussi un choix (dicté par le principe KISS). Cozy ne disposant pas de fonctionnalités multi-utilisateurs, ce choix a également été mis de côté. Sans d'autres alternatives à ma connaissance il y a quelques semaines, Owncloud s'avérait être le choix par défaut. Mais voilà que le blogueur le plus radical (par ses avis plus que tranchés mais respectables) du logiciel libre, j'ai nommé Cyrille Borne, a jeté son dévolu sur un petit logiciel inconnu au doux nom de BoZoN. Après un déferlement de remarques comme lui seul peut le faire, Bronco a su tenir bon sous la charge de travail et a fournit une magnifique version 2.4. Après une installation des plus simples et l'ajout d'un disque dur externe de 1.5 To à mon Raspberry, je suis maintenant en mesure de proposer un espace de cloud gratuit à ma famille. Et autant le dire tout de suite, ça marche du tonnerre. :)

Les petites technologies libres rendues disponibles par des personnes avides de partage, mises bout à bout grâce à la volonté de certaines personnes de vouloir transmettre leur savoir, permettent à des petits gars comme moi sans bagage initial en informatique d'installer leur propre espace web.

C'est ça la magie du libre.