Linux (fr)

  • ils l'ont voulu, ils l'ont obtenu, et ils l'ont dans le baba... (Journaux LinuxFR)

    Depuis quelques dizaines d'années, le « management » est devenu un métier de spécialistes, formés dans des « écoles » où on reçoit les préceptes d'une religion qui prétend améliorer le bon fonctionnement d'une entreprise ou administration. Comme avec toutes les religions/sectes récentes, le dogme repose sur une pseudo-science dont les croyants refusent de discuter la « vérité » des résultats. Les deux grands préceptes qui appuient le dogme sont :

    • il existe une comptabilité analytique : il serait possible de calculer, pour chaque marchandise ou prestation vendue, le coût de celle-ci pour l'entreprise, ainsi que ce qu'elle rapporte
    • la décision nécessite l'évaluation : en définissant des indicateurs, il est possible d'avoir une évaluation efficace du bon ou mauvais fonctionnement d'une entreprise, d'une stratégie ou des « ressources humaines », cette évaluation permettant de prendre les bonnes décisions

    Pour les non-croyants travaillant dans des entreprises pas trop petites ou dans une administration, ce mode de fonctionnement se traduit souvent :

    • par une gestion de l'argent irrationnelle (le fameux « il faut dépenser le budget avant la fin de l'année »)
    • par une sous-traitance irrationnelle (basée sur la comptabilité analytique pour le coût, et sur l'évaluation par des indicateurs pour les bénéfices)
    • par une baisse de la qualité des services fournis par les prestataires et les salariés (ils finissent par bosser quasi-exclusivement pour leurs indicateurs, à en oublier le service pour lequel ils sont payés)
    • par des coûts de gestion qui seraient considérés comme prohibitifs si la comptabilité analytique existait réellement (riez avec un gestionnaire : demandez-lui le coût marginal d'un indicateur)
    • par une inefficacité du personnel inquiétante (quand ils ne travaillent pas pour leurs indicateurs, ils remplissent l'outil de compatibilité analytique ou rédigent des explications des indicateurs)
    • par une hypocrisie généralisée et institutionnalisée (trafic des chiffres des indicateurs, mensonge systématique au contrôle de gestion, parfois même à son chef, ses collègues ou ses clients)

    Malheureusement, seuls des évangélistes évaluent ces croyances, si bien que ce n'est pas prêt de changer, à moins que cette religion ne disparaisse. Je n'y croyais pas, mais je viens de lire un article d'un prêtre-enseignant déclarant que c'est n'importe quoi de voir son activité évaluée avec des indicateurs qui l'obligent à se concentrer sur ceux-ci plutôt que sur son travail, que l'argent soit distribué selon des concepts qui ne s'appliquent pas à son activité, et appelant le clergé à la révolte.

    Franchement, à la première lecture j'ai pensé « bien fait pour ta gueule, j'espère que c'est toi qui a formé ceux qui t'imposent ça. À la deuxième j'ai ri avant de penser la même chose. Mais même si je ne crois à la conversion-express, j'ai en moi un petit espoir que cela ébranle ses croyances et que l'enseignement du catéchisme s'en trouve modifié

    Notes :

    • si certains croyants ont lu ce journal, je leur prie de bien vouloir éviter de crier leur colère en commentaires suite à mes nombreux blasphèmes, vous pouvez utiliser sur le bouton « inutile » ci-dessous qui permettra de calculer automatiquement le seul KPI public de ce journal
    • ce journal ne contient volontairement aucun lien, ne souhaitant pas vous inviter à lire des textes religieux. Si vraiment ça vous manque, je vous invite à vous abonner au boutin train du dimanche matin.

    Lire les commentaires

  • Applications de type vim-like (Journaux LinuxFR)

    Voici une liste de logiciels dont l’interface est inspirée de vim.

    qutebrowser

    Léger, puissant, cohérent et configurable aux petits oignons.
    J’ai longtemps cherché une alternative à firefox/vimperator, et je pense l’avoir trouvée.

    vimiv

    Visualisateur d’image, bien conçu, utilisation fluide.

    vifm

    Gestionnaire de fichier en mode texte, de type double panel.

    L’analogie avec vim est intuitive.

    Par exemple : cw (change word) -> renomme un fichier

    w3m

    Navigateur en mode texte. L’interface ressemble à un assemblage de less et de.
    emacs Léger, très configurable, peut servir aussi de pageur .

    Autres

    Si vous en connaissez d’autres, n’hésitez pas à me le signaler.

    Les interfaces de type emacs sont aussi les bienvenues (si si, j’utilise org-mode)

    Lire les commentaires

  • My name is looker... (Dépêches LinuxFR)

    « My name is looker, I live on the second floor… » Non ça c'est les paroles de la chanson Luka de Suzanne Vega.

    Icône

    looker est un lecteur vidéo minimaliste comme les autres, c'est-à-dire qu'il lui est possible de lire, mettre en pause, passer au chapitre suivant ou précédent, etc. Vous pourrez aussi ajuster le volume, faire une capture d'écran et la fonction ce qui le rend spéciale est:

    La fonctionnalité spéciale de looker, c'est la capacité de celui-ci, qui est le comportement par défaut mais configurable, d'enregistrer le moment ou vous arrêtez la lecture de votre vidéo. looker est donc capable de relancer la vidéo là où vous avez arrêté ! En fait looker recule le moment d'une minute (techniquement).

    Capture d'écran

    Capture d'écran

    Contrôles

    Looker vous assure les fonctionnalités suivantes dans la barre des contrôles, que vous pouvez faire apparaître et disparaître en cliquant sur l'écran principal :

    1. Play/Pause ;
    2. Next/Previous chapter ;
    3. timeline avec temps de lecture écoulé et la durée totale ; vous pourrez tirer sur le slider afin de positionner votre vidéo au moment ;
    4. passer du mode petit écran en mode plein écran.

    Sachant que quand vous démarrez une vidéo la fenêtre est de la taille de la vidéo et non maximisée. Mais vous pourrez aisément maximiser ou passer en plein écran en usant des décorations ou du bouton à votre droite (qui changera d'icône) « passer en plein écran ».

    Barre d'en-tête

    Les autres options sont situées dans la barre d'en-tête, les utilisateurs de l'environnement de bureau Gnome doivent être habitués à cette interface qui ne comprend que deux éléments :

    1. Un bouton de volume ;
    2. Un bouton de menu qui comprend les entrées suivantes :
    • ouvrir un fichier ;
    • faire une capture d'écran ;
    • incrémenter le volume ;
    • décrémenter le volume ;
    • nettoyer le fichier qui conserve la position d'arrêt des vidéos (j'y reviendrai) …
    • préférences.

    Cette dernière option vous mène sur une fenêtre dans laquelle vous pourrez :

    • Mettre looker comme lecteur vidéo par défaut pour les formats supportés ;
    • Choisir de demander à l'utilisateur à l'arrêt si vous voulez enregistrer la position (sachez qui si vous répondez non looker n'écrit rien et efface l'entrée du fichier si elle existe) ;
    • Où placer vos captures d'écran, dont le nom est choisi aléatoirement :
      • Bureau ;
      • Documents ;
      • Téléchargements ;
      • Musiques ;
      • Vidéos.

    La dernière entrée du menu est « À propos ».

    Formats de fichier pris en charge

    • *.avi (video/avi) ;
    • *.asf, *.asx (video/x-ms-asf) ;
    • *.mpeg, *.mpg, *.mpe (video/mpeg) ;
    • *.qt, *.mov (video/quicktime) ;
    • *.ogv (video/ogg) ;
    • *.ogx (application/ogg) ;
    • *.wmv (video/x-ms-wmv) ;
    • *.webm (video/webm) ;
    • *.mpv, *.mkv (video/x-matroska).

    Note de l'auteur

    J'ai construit ce lecteur vidéo basé sur libvlc et gtk+-3.0 afin de pouvoir enregistrer la position où j'arrête de regarder car il m'arrive souvent de regarder par exemple 40 minutes d'un film le matin puis 40 minutes le soir. Et j'en avais franchement marre de me rappeler le time-code !!!

    Je vous assure que vous serez pleinement satisfait, même si des fois la demande d'enregistrement du time-code est nécessaire, à la fin de la vidéo afin de ne pas polluer le fichier qui conserve ces time-code.

    Sachez enfin que je suis autant désolé que vous que ce formidable lecteur vidéo ne fonctionne que sous Linux et peut-être sur des systèmes Unix. Mais pas sous Windows ou macOS. Cela doit venir des dépendances à libvlc et/ou du manque de rigueur de ma part.

    Bogue

    Il peut vous arriver que les contrôles sortent de la fenêtre vers le bas, car j'ai remarqué qu'en le compilant avec une vieille version de GTK+ la header bar est sûrement comptabilisée dans les anciennes versions et non dans les récentes, supérieures ou égales à 3.20. Et le problème étant que le décalage est vertical (du haut vers le bas) et du coup concerne la fenêtre des contrôles.

    J'ai donc changé le code dans le fichier RPM (car j'ai remarqué le dysfonctionnement sous Mageia en créant le fichier RPM).

    Donc si vous utilisez le fichier RPM et que le programme dysfonctionne, utilisez plutôt le tarball. C'est facile, il suffit de décompresser l'archive tar puis d'ouvrir un terminal dans le dossier où tar a décompressé les fichiers. Puis de taper les commandes suivantes :

    $ ./configure       # Perform a system check.
    $ make              # Build the program.
    $ make strip        # Remove unneed symbols.
    $ sudo make install # Install the program
    $ su root  # Ou passer en mode administrateur grâce a la commande:
    password:
    $ make install

    Je suis ouvert à toutes formes de critiques, même une critique négative peut faire fructifier le programme, mais évitez les critiques purement péjoratives.

    Lire les commentaires

  • Revue de presse de l'April pour la semaine 46 de l'année 2017 (Dépêches LinuxFR)

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

    Sommaire

    [Factor Today] Richard Stallman and the Vanishing State of Privacy

    Par la rédaction, le vendredi 17 novembre 2017. Extrait:

    (Nous sommes à présent sujets à un plus grand niveau de surveillance qu'à n'importe quel autre point dans l'histoire, et la plus grande part vient de la révolution numérique des dernières décennies) We are now subject to a greater level of surveillance than any point in history, and most of it is thanks to the digital revolution of the last few decades. Lucy Ingham hears from the legend Richard Stallman about how the digital transformation has dramatically eroded our privacy, and what it means for our lives

    Lien vers l'article original: http://magazine.factor-tech.com/factor_winter_2017/richard_stallman_and_the_vanishing_state_of_privacy

    Et aussi:

    [Rue89Lyon] Eau, logiciels libres et monnaies locales: 5 choses à savoir sur les communs

    Par Philippine Orefice, le vendredi 17 novembre 2017. Extrait:

    L’eau, les logiciels libres, les jardins partagés, les monnaies locales… autant de réalités qui sont aujourd’hui englobées dans l’appellation «communs». Pourtant, alors même qu’on les croise tous les jours, il est parfois difficile de comprendre leurs spécificités.

    Lien vers l'article original: http://www.rue89lyon.fr/2017/11/17/logiciels-libres-monnaies-locales-5-choses-a-savoir-sur-les-communs

    [estrepublicain.fr] Ville numérique: quelles économies?

    Par Ghislain Utard, le mercredi 15 novembre 2017. Extrait:

    La Ville de Nancy a amorcé le virage du logiciel libre et multiplie les services en ligne. Pour quelles économies? Avec quels bénéfices pour le citoyen? Éléments de réponse avant la semaine de l’innovation publique.

    Lien vers l'article original: http://www.estrepublicain.fr/edition-de-nancy-ville/2017/11/15/ville-numerique-quelles-economies

    [ZDNet France] Linux domine totalement les supercalculateurs

    Par la rédaction, le mercredi 15 novembre 2017. Extrait:

    C'est finalement arrivé. Aujourd'hui, les 500 supercalculateurs les plus importants du monde utilisent Linux.

    Lien vers l'article original: http://www.zdnet.fr/actualites/linux-domine-totalement-les-supercalculateurs-39859992.htm

    [Libération] Surveillance: la première boîte noire est née

    Par Pierre Alonso et Amaelle Guiton, le mardi 14 novembre 2017. Extrait:

    Le président de la Commission de contrôle des techniques de renseignement a révélé que cet algorithme utilisé par les services de renseignement est mis en œuvre depuis plus d'un mois.

    Lien vers l'article original: http://www.liberation.fr/france/2017/11/14/surveillance-la-premiere-boite-noire-est-nee_1609993

    Et aussi:

    [La gazette.fr] Mounir Mahjoubi: «Le numérique doit libérer les agents de tâches inutiles»

    Par Delphine Gerbeau et Romain Mazon, le lundi 13 novembre 2017. Extrait:

    L’administration innove-t-elle assez ? Comment peut-on parvenir à 100 % de procédures dématérialisées à court terme? A quelles conditions resteront-elles accessibles au plus grand nombre? Quels seront les impacts de cette transformation sur les services publics, et la fonction publique, de l’Etat comme territoriale? A quelques jours du lancement de la semaine de l’innovation publique, interview de Mounir Mahjoubi, secrétaire d’Etat au numérique

    Lien vers l'article original: http://www.lagazettedescommunes.com/533016/mounir-mahjoubi-le-numerique-doit-liberer-les-agents-de-taches-inutiles

    [Developpez.com] Qu'advient-il du code open source après le décès du développeur?

    Par Olivier Famien, le lundi 13 novembre 2017. Extrait:

    Alors que l’on a assisté pendant longtemps à un combat entre les logiciels open source et les logiciels propriétaires, il faut reconnaître que depuis plusieurs années, ces deux mondes ne sont plus perçus comme opposés, mais plutôt complémentaires.

    Lien vers l'article original: https://www.developpez.com/actu/172888/Qu-advient-il-du-code-open-source-apres-le-deces-du-developpeur-Quelles-solutions-adopter-pour-eviter-les-problemes-lies-a-l-abandon-du-code

    Lire les commentaires

  • [Faust] coder de l’audio en sifflotant (Dépêches LinuxFR)

    FAUST (Functional Audio Stream) est un langage de haut niveau (c'est à dire loin du métal) qui permet d'écrire des applications audio complexes en manipulant des abstractions (relativement) simples. Ce langage fait partie de la distribution FAUST, initialement développée et portée par le GRAME (centre national de création musicale, à Lyon) bénéfice aujourd'hui d'une communauté mondiale, le projet éponyme réunit ce langage fonctionnel de haut-niveau, son compilateur et de nombreux outils.

    Une spécification de traitement du signal écrite en FAUST peut être compilé pour une grande variété de langages cibles (C++, C, JAVA, JavaScript, ASM JavaScript, LLVM IR, WebAssembly etc.). La même spécification écrite en FAUST peut être intégrée et utilisée dans un grand nombre de logiciels, greffons et bibliothèques (CSOUND, LADSPA, MAX/MSP, PureData, Q, SuperCollider, VST, AU, LV2, etc.)

    Enfin, le compilateur FAUST ne demande que les bibliothèques standards C++ et aucun autre dépendance.

    NdM : Le compilateur est sous licence GPL2

    Sommaire

    Une appli audio…

    Aujourd'hui des applications audio fonctionnent sur CPU, et des appliances, matériels dédiés, y passent également. Mais nombreuses sont les applications spécialisées dans l'audio qui utilisent des processeurs dédiés, dont la programmation est toutefois notoirement complexe.

    Comme un CPU, un DSP est mis en œuvre en lui associant de la mémoire (RAM, ROM) et des périphériques. Un DSP typique se présente sous la forme d’un microcontrôleur intégrant généralement de la mémoire, des timers, des ports série synchrones rapides, des contrôleurs DMA, et divers ports d’Entrée / Sortie.

    Dans le cas de l'audio, on peut résumer (en simplifiant) le rôle du DSP à la partie exclusivement numérique du traitement audio, celle qui se trouve entre les convertisseurs Analogique / Numérique (en entrée) et Numérique / Analogique (en sortie) de l'interface audio, aussi appelée "carte son".

    …C'est surtout des MATHS

    Après avoir été numérisé, le signal se présente sous la forme d’une suite de valeurs numériques discrètes. Cette suite de valeurs (ou échantillons) est apte à être stockée et traitée par un système informatique. Par nature, le traitement numérique du signal revient à effectuer essentiellement des opérations arithmétiques de base du type A = (B * C) + D.

    Un CPU classique va nécessiter plusieurs cycles d’horloge pour effectuer un tel calcul, par exemple un 68k a besoin d'une dizaine de cycles pour effectuer une addition, et 70 pour une multiplication.

    Les DSP sont conçus pour optimiser tout ça, et disposent de fonctions permettant de calculer A beaucoup plus rapidement, voire en garantissant un temps d'exécution, afin d'obtenir une latence (le temps écoulé entre l'entrée et la sortie du signal) mesurable et constante.

    Faust

    Le compilateur Faust est contenu tout entier dans un seul exécutable, invoqué par une unique commande : faust.

    Opérateurs

    Le signal audio est figuré par des opérateurs très intuitifs :

    1. A , B Parallèle : A est à gauche, B à droite ;
    2. A : B Séquence : A entre dans B
    3. A <:B,C Séparation : A est séparé en deux signaux, B et C ;
    4. A,B :>C Fusion : A et B sont réunis en un signal C ;
    5. A ~ B Récursion: La sortie de B est séparée en deux signaux, le premier étant connecté à la première entrée de A, l'autre étant une sortie.

    process = 0;

    Ici, on a donc du silence (0) :

    Silence

    Qu'on va passer en stéréo :

    process = 0 <: _ , _;

    Stereo

    (Ici, _ n'est pas un opérateur mais une primitive (voir manuel : "égalité", en l'occurence, le signal passe) comme + ou *.

    Exemple : un instrument basique

    sine.dsp

    Le code suivant :

    import("stdfaust.lib");
    
    declare name "LinuxFR SINE";
    declare author "Faust Team";
    
    phasor(f)   = f/ma.SR : (+,1.0:fmod) ~ _ ;
    osc(f)      = phasor(f) * 6.28318530718 : sin;
    
    process     = osc(hslider("freq", 440, 20, 20000, 1)) * hslider("level", 0, 0, 1, 0.01);

    Est un simple générateur d'onde sinusoïdale, sans entrée ni audio (pas de traitement du son, juste de la génération) ni MIDI (pas de contrôle au clavier) on ne pourra donc en moduler la fréquence (la hauteur perçue de la note) qu'à l'aide du slider "osc" défini ci-dessus.

    Dans cet exemple, quelques définitions de fonctions, du pattern-matching, des fonctions FAUST standard comme ma.SR et des abstractions d'interface comme hslider("paramName",default,min,max,step).

    L'implémentation d'une entrée MIDI standard pour le contrôle de la fréquence au clavier est typiquement assez complexe en C/C++, et si triviale en Faust qu'elle est présentement laissée en exercice au lecteur.

    Sauvé dans un fichier sine.dsp, son "chemin de signal" peut être visualisé à l'aide de la commande suivante:

    faust -svg sine.dsp

    Qui va produire ce diagramme :

    Sine

    Pour compiler ce programme vers un environnement (architecture / toolkit) donné, utiliser le script correspondant, ici par exemple, Linux x86_64 / lv2 :

    faust2lv2 -gui sine.dsp

    Ce qui produira un dossier sine.lv2 :

    ./sine.dsp        # Fichier source
    ./sine.cpp        # Fichier C++ généré
    ./sine.lv2        # Dossier du plugin
        manifest.ttl  # Manifeste LV2
        sineui.so     # Binaire exécutable de l'UI (optionnelle)
        sine.ttl      # Fichier de définition de l'UI
        sine.so       # Binaire exécutable du plugin
    ./sine-svg        # Dossier des diagrammes
        process.svg

    qu'il suffit de copier dans le chemin de découverte (en général et au choix, /usr/lib/lv2/ ou ~/.lv2/) pour être immédiatement utilisable dans une des pistes MIDI d'un hôte/DAW.

    LinuxFR Sine

    Le plugin, compilé pour Linux 64 / Jack / Qt.

    Le code C++ généré, ainsi que les fichiers spécifiques à l'architecture cible, sont en annexe.

    Multi-plateformes

    En utilisant le script idoine, notre plugin deviendra une application autonome.

    Le "paquet" Faust contient les scripts cibles de la plupart (sinon toutes : VST/Windows, AudioUnit/MacOS, etc.) des plateformes actuelles.

    La liste est longue de tout ce que propose FAUST comme sorties.

    Il devient donc possible, avec Faust, de développer rapidement des applications audio extrêmement puissantes et/ou complexes, en s'assurant de produire du code valide.

    Faust est à l'origine de nombreux gros projets, notamment dans le monde Linux Audio, comme le montre cette liste partielle.

    Annexes

    Longue liste des cibles atteignables

    Cible Script Faust
    Android app faust2android
    WebAudio code asmjs faust2asmjs
    WebAudio Web app faust2webaudioasm
    iOS app faust2ios
    iOS app avec Qt faust2caqtios
    CoreAudio app avec Qt faust2caqt
    Raspberry Pi ALSA cli app faust2rpialsaconsole
    Raspberry Pi JACK cli faust2rpinetjackconsole
    ROS (Robot OS) app faust2ros
    ROS app avec GTK faust2rosgtk
    API générateur faust2api
    CLI pour le debug DSP faust2plot
    ALSA cli faust2alsaconsole
    ALSA avec Qt faust2alqt
    ALSA avec GTK faust2alsa
    JACK cli faust2jackconsole
    JACK app avec Qt faust2jaqt
    JACK app avec GTK faust2jack
    NetJack cli faust2netjackconsole
    NetJack app avec Qt faust2netjackqt
    LADSPA greffon faust2ladspa
    SuperCollider faust2supercollider
    VST greffon faust2faustvst
    LV2 greffon faust2lv2
    PureData faust2puredata
    MaxMSP 5 patch et greffon faust2msp
    MaxMSP 6 et plus faust2max6
    Audio Unit plugin faust2au
    BELA programme faust2bela
    CSOUND Opcode faust2csound
    OWL App faust2owl
    PDF diagramme faust2pdf
    PDF documentation mathématiques faust2mathdoc
    PNG diagramme faust2png
    SVG diagramme faust2svg
    SVG graph faust2graph
    SVG signal faust2sig
    Octave script faust2octave

    Code C++

    sine.cpp

    //----------------------------------------------------------
    // name: "LinuxFR SINE"
    // author: "Faust Team"
    //
    // Code generated with Faust 0.10.2 (http://faust.grame.fr)
    //----------------------------------------------------------
    
    /* link with  */
    #include <math.h>
    #ifndef FAUSTFLOAT
    #define FAUSTFLOAT float
    #endif  
    
    
    #ifndef FAUSTCLASS 
    #define FAUSTCLASS mydsp
    #endif
    
    class mydsp : public dsp {
      public:
        FAUSTFLOAT  fslider0;
        float   fConst0;
        float   fRec0[2];
        FAUSTFLOAT  fslider1;
        int fSamplingFreq;
    
      public:
        virtual void metadata(Meta* m) { 
            m->declare("name", "LinuxFR SINE");
            m->declare("author", "Faust Team");
            m->declare("maths.lib/name", "Faust Math Library");
            m->declare("maths.lib/version", "2.0");
            m->declare("maths.lib/author", "GRAME");
            m->declare("maths.lib/copyright", "GRAME");
            m->declare("maths.lib/license", "LGPL with exception");
        }
    
        virtual int getNumInputs() { return 0; }
        virtual int getNumOutputs() { return 1; }
        static void classInit(int samplingFreq) {
        }
        virtual void instanceConstants(int samplingFreq) {
            fSamplingFreq = samplingFreq;
            fConst0 = (1.0f / min(1.92e+05f, max(1e+03f, (float)fSamplingFreq)));
        }
        virtual void instanceResetUserInterface() {
            fslider0 = 4.4e+02f;
            fslider1 = 0.0f;
        }
        virtual void instanceClear() {
            for (int i=0; i<2; i++) fRec0[i] = 0;
        }
        virtual void init(int samplingFreq) {
            classInit(samplingFreq);
            instanceInit(samplingFreq);
        }
        virtual void instanceInit(int samplingFreq) {
            instanceConstants(samplingFreq);
            instanceResetUserInterface();
            instanceClear();
        }
        virtual mydsp* clone() {
            return new mydsp();
        }
        virtual int getSampleRate() {
            return fSamplingFreq;
        }
        virtual void buildUserInterface(UI* ui_interface) {
            ui_interface->openVerticalBox("LinuxFR SINE");
            ui_interface->addHorizontalSlider("freq", &fslider0, 4.4e+02f, 2e+01f, 2e+04f, 1.0f);
            ui_interface->addHorizontalSlider("level", &fslider1, 0.0f, 0.0f, 1.0f, 0.01f);
            ui_interface->closeBox();
        }
        virtual void compute (int count, FAUSTFLOAT** input, FAUSTFLOAT** output) {
            float   fSlow0 = (fConst0 * float(fslider0));
            float   fSlow1 = float(fslider1);
            FAUSTFLOAT* output0 = output[0];
            for (int i=0; i<count; i++) {
                fRec0[0] = fmodf((fSlow0 + fRec0[1]),1.0f);
                output0[i] = (FAUSTFLOAT)(fSlow1 * sinf((6.2831855f * fRec0[0])));
                // post processing
                fRec0[1] = fRec0[0];
            }
        }
    };
    
    
    #ifdef FAUST_UIMACROS
        #define FAUST_INPUTS 0
        #define FAUST_OUTPUTS 1
        #define FAUST_ACTIVES 2
        #define FAUST_PASSIVES 0
        FAUST_ADDHORIZONTALSLIDER("freq", fslider0, 4.4e+02f, 2e+01f, 2e+04f, 1.0f);
        FAUST_ADDHORIZONTALSLIDER("level", fslider1, 0.0f, 0.0f, 1.0f, 0.01f);
    #endif

    Manifeste LV2

    manifest.ttl

    ########## https://faustlv2.bitbucket.io/sine ##########
    
    @prefix doap: <http://usefulinc.com/ns/doap#> .
    @prefix foaf: <http://xmlns.com/foaf/0.1/> .
    @prefix lv2:  <http://lv2plug.in/ns/lv2core#> .
    @prefix ui:   <http://lv2plug.in/ns/extensions/ui#> .
    @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
    
    <https://faustlv2.bitbucket.io/sine>
        a lv2:Plugin ;
        lv2:binary <sine.so> ;
        rdfs:seeAlso <sine.ttl> .
    
    <https://faustlv2.bitbucket.io/sineui>
        a ui:Qt5UI ;
        ui:binary <sineui.so> .
    
    

    Fichier de définition de l'Interface Graphique Utilisateur

    sine.ttl

    @prefix doap:  <http://usefulinc.com/ns/doap#> .
    @prefix foaf:  <http://xmlns.com/foaf/0.1/> .
    @prefix lv2:   <http://lv2plug.in/ns/lv2core#> .
    @prefix ui:    <http://lv2plug.in/ns/extensions/ui#> .
    @prefix epp:   <http://lv2plug.in/ns/ext/port-props#> .
    @prefix atom:  <http://lv2plug.in/ns/ext/atom#> .
    @prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
    @prefix rdfs:  <http://www.w3.org/2000/01/rdf-schema#> .
    @prefix units: <http://lv2plug.in/ns/extensions/units#> .
    <https://faustlv2.bitbucket.io/sine>
           a lv2:Plugin ;
           doap:name "LinuxFR SINE" ;
           lv2:binary <sine.so> ;
           lv2:optionalFeature epp:supportsStrictBounds ;
           lv2:optionalFeature lv2:hardRtCapable ;
           doap:maintainer [ foaf:name "Faust Team" ] ;
           ui:ui <https://faustlv2.bitbucket.io/sineui> ;
        lv2:port [
        a lv2:InputPort ;
        a lv2:ControlPort ;
        lv2:index 0 ;
        lv2:symbol "freq_0" ;
        lv2:name "freq" ;
            lv2:portProperty epp:hasStrictBounds ;
            epp:rangeSteps 19980 ;
        lv2:default 440 ;
        lv2:minimum 20 ;
        lv2:maximum 20000 ;
        ] , [
        a lv2:InputPort ;
        a lv2:ControlPort ;
        lv2:index 1 ;
        lv2:symbol "level_1" ;
        lv2:name "level" ;
            lv2:portProperty epp:hasStrictBounds ;
            epp:rangeSteps 100 ;
        lv2:default 0 ;
        lv2:minimum 0 ;
        lv2:maximum 1 ;
        ] , [
        a lv2:OutputPort ;
        a lv2:AudioPort ;
        lv2:index 2 ;
        lv2:symbol "out0" ;
        lv2:name "out0" ;
        ]
    .
    

    Lire les commentaires

  • LinuxFr.org : première quinzaine de novembre 2017 (Journaux LinuxFR)

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

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

    Statistiques

    Du 1er au 15 novembre 2017 :

    • 1665 commentaires publiés (dont 3 masqués depuis) ;
    • 426 tags posés ;
    • 85 comptes ouverts (dont 1 fermé depuis) ;
    • 52 entrées de forums publiées (dont 1 masquée depuis) ;
    • 21 dépêches publiées ;
    • 29 journaux publiés (dont 0 masqué depuis) ;
    • 7 entrées dans le système de suivi ;
    • 1 sondage publié ;
    • 2 pages wiki publiées (dont 1 masquée depuis).

    Listes de diffusion (hors pourriel)

    Liste linuxfr-membres@ — [restreint]

    • R.A.S.

    Liste meta@ - [restreint]

    • R.A.S.

    Liste moderateurs@ - [restreint]

    • [Modérateurs] [LinuxFr] Section Fedora 28 dans la dépêche Fedora 27
    • [Modérateurs] Fwd: Impossibilité de se connecter à Linux.org
    • [Modérateurs] Connexion à linuxfr

    Liste prizes@ - [restreint]

    • [Prizes] LinuxFr prizes recap du mercredi 1 novembre 2017, 19:56:33 (UTC+0100)

    Liste redacteurs@ - [public]

    • R.A.S.

    Liste team@ - [restreint]

    • [team linuxfr] Invitation à l'Ubuntu Party 25/26 novembre 2017

    Liste webmaster@ — [restreint]

    • [webmaster] IBAN pour donation
    • [webmaster] Don par virement
    • [webmaster] ce serait pour un don

    Canal IRC adminsys (résumé)

    • freshclam a du mal avec un miroir pas à jour et génère des alarmes
    • collecte de liens liés à la mise en demeure n°2
    • faut-il coder la détection d'un lien déjà donné dans la dépêche lors de l'écriture d'un commentaire ?
    • des mises à jour de sécurité

    Tribune de rédaction (résumé)

    • sujets de dépêche non encore traités : TOP500, Ubuntu 17.10

    Tribune de modération (résumé)

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

    • Branche master
      • Merge pull request #217 from devnewton/master
      • fix TSV backend
    • Branche redesign :
      • fix TSV backend
      • WikiPage: run annotate to update schema informations
      • WikiPage: update database schema to add the truncated_body and fill i…
      • WikiPage: don't force body value to view WikiPage as it has now body …
      • WikiPage: add automatic value on save for the new column truncated_body
      • Update html-pipeline-linuxfr

    Divers

    Depuis la création du site, statistiques liées au légal :

    • deux mises en demeure reçues (pour zéro assignation)
    • une réquisition judiciaire reçue (qui au final ne nous concernait pas, mais a donné l'occasion de discuter avec la police nationale)
    • un cas d'usurpation d'identité et de harcèlement type « revenge porn » (discussion avec la gendarmerie nationale)

    Lire les commentaires

  • LinuxFr.org : première quinzaine de novembre 2017 (Journaux LinuxFR)

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

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

    Statistiques

    Du 1er au 15 octobre 2017 :

    • 1665 commentaires publiés (dont 3 masqués depuis) ;
    • 426 tags posés ;
    • 85 comptes ouverts (dont 1 fermé depuis) ;
    • 52 entrées de forums publiées (dont 1 masquée depuis) ;
    • 21 dépêches publiées ;
    • 29 journaux publiés (dont 0 masqué depuis) ;
    • 7 entrée dans le système de suivi ;
    • 1 sondage publié ;
    • 2 page wiki publiée (dont 1 masquée depuis).

    Listes de diffusion (hors pourriel)

    Liste linuxfr-membres@ — [restreint]

    • R.A.S.

    Liste meta@ - [restreint]

    • R.A.S.

    Liste moderateurs@ - [restreint]

    • [Modérateurs] [LinuxFr] Section Fedora 28 dans la dépêche Fedora 27
    • [Modérateurs] Fwd: Impossibilité de se connecter à Linux.org
    • [Modérateurs] Connexion à linuxfr

    Liste prizes@ - [restreint]

    • [Prizes] LinuxFr prizes recap du mercredi 1 novembre 2017, 19:56:33 (UTC+0100)

    Liste redacteurs@ - [public]

    • R.A.S.

    Liste team@ - [restreint]

    • [team linuxfr] Invitation à l'Ubuntu Party 25/26 novembre 2017

    Liste webmaster@ — [restreint]

    • [webmaster] IBAN pour donation
    • [webmaster] Don par virement
    • [webmaster] ce serait pour un don

    Canal IRC adminsys (résumé)

    • freshclam a du mal avec un miroir pas à jour et génère des alarmes
    • collecte de liens liés à la mise en demeure n°2
    • faut-il coder la détection d'un lien déjà donné dans la dépêche lors de l'écriture d'un commentaire ?
    • des mises à jour de sécurité

    Tribune de rédaction (résumé)

    • sujets de dépêche non encore traités : TOP500, Ubuntu 17.10

    Tribune de modération (résumé)

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

    • Branche master
      • Merge pull request #217 from devnewton/master
      • fix TSV backend
    • Branche redesign :
      • fix TSV backend
      • WikiPage: run annotate to update schema informations
      • WikiPage: update database schema to add the truncated_body and fill i…
      • WikiPage: don't force body value to view WikiPage as it has now body …
      • WikiPage: add automatic value on save for the new column truncated_body
      • Update html-pipeline-linuxfr

    Divers

    Depuis la création du site, statistiques liées au légal :

    • deux mises en demeure reçues (pour zéro assignation)
    • une réquisition judiciaire reçue (qui au final ne nous concernait pas, mais a donné l'occasion de discuter avec la police nationale)
    • un cas d'usurpation d'identité et de harcèlement type « revenge porn » (discussion avec la gendarmerie nationale)

    Lire les commentaires

  • Azzedine Alaïa bronsonnisé (Journaux LinuxFR)

    Cher journal,

    Je suis grandement étonné de ne pas avoir vu passer la nouvelle dans une dépêche tant c’est un scoop qui mérite la une.

    Azzedine Alaïa, célèbre couturier, est décédé hier.

    Ce journal étant un bookmark, voici une source : http://www.liberation.fr/france/2017/11/19/azzedine-alaia-l-art-et-la-matiere_1611050

    Il était certainement connu pour un tas de bonnes raisons par des tas de gens très raisonnables. Je pense ne pas me tromper en disant qu’il était connu par ici pour de mauvaises raisons, nous ne sommes pas des gens raisonnables. Il avait eu l’insigne honneur d’être cité dans la scène d’ouverture du flim la classe américaine.

    Pour pouvoir rester chics dans notre manière de nous habillons, nous pourrons toujours aller nous acheter des sous-pulls chez Yohji Yamamoto

    Lire les commentaires

  • XFCE/Gtk et raccourcis type Bash/Emacs (Journaux LinuxFR)

    Lors de mes recherches pour trouver des remplaçants aux extensions dépréciées depuis Firefox Quantum (Keysnail notamment), je suis tombé sur cette page. Il y est expliqué que l'on peut avoir des raccourcis type Emacs/Bash dans les zones de texte sous XFCE. Voici la commande shell qui permet cela sous XFCE :

    xfconf-query -c xsettings -p /Gtk/KeyThemeName -s Emacs
    

    Vous pourrez remarquer que c'est une fonctionnalité de Gtk et non de XFCE ; comprendre ici que c'est potentiellement possible sur tous les bureaux Gtk, mais que cela fonctionne que dans les fenêtres Gtk. Je vous laisse trouver comment faire sur votre bureau favori ! Je me rappelle avoir vu l'option dans Gnome Shell via Gnome Tweak Tool.

    Malheureusement, pas de commande avancé comme l'on trouve dans Emacs, c'est-à-dire pas de sélection avec Ctrl-space, ni de recherche (avant et arrière) avec Ctrl-s et Ctrl-r entre autres. Cela ressemble finalement bien plus aux commandes Bash

    Malgré tant de temps sur XFCE, cette option m'était inconnue. En espérant que ça puisse servir à quelqu'un.

    Lire les commentaires

  • J'ai fait un jeu (Journaux LinuxFR)

    Cher 'nal,

    J'ai fait un petit jeu vidéo. C'était fun.

    Il s'agit d'un jeu de course 2D, avec IA, armes et éditeur de pistes. Le jeu n'est pas vraiment fini. Il manque plein de trucs genre menus, réglages, compteurs de tours, etc. Mais il y a juste assez dedans déjà pour que ce soit brièvement amusant.

    J'ai essayé de voir si ça pouvait intéresser du monde, et il semble que tout le monde s'en tamponne le coquillard.

    Donc le voici, sur GitHub, sous licence GPLv3+. Ça aura peut-être le moyen d'amuser un peu de monde, et ça pourra peut-être aussi servir d'exemple pour ceux qui veulent faire ce genre de jeu.

    À ceux que ça peut intéresser, amusez-vous bien :-)

    PS: Le code est cracra par endroit et mériterait sûrement que je sois fusillé puis pendu, mais .. bleh.

    Screenshot

    Lire les commentaires

  • Malcolm Young bronsonisé (Journaux LinuxFR)

    Peut-être un peu moins emblématique que son frère Angus, on aurait pourtant jamais pu découvrir la sainte musique d'AC/DC sans lui.

    https://en.wikipedia.org/wiki/Malcolm_Young

    Lire les commentaires

  • Quad9, résolveur DNS public, et sécurisé par TLS (Journaux LinuxFR)

    Le résolveur DNS Quad9 (prononcer « quoi de neuf » en français) a été annoncé aujourd'hui. C'est un résolveur DNS public, mais dont l'originalité est d'être accessible de manière sécurisée, avec TLS (DNS sur TLS est décrit dans le RFC 7858).

    Alors, l·e·a lect·eur·rice de LinuxFr.org, étant super au courant, va dire « mais des résolveurs DNS publics, il y en a plein ! Pourquoi un de plus ? ». Le plus connu est Google Public DNS mais il en existe beaucoup d'autres, avec des politiques et des caractéristiques techniques diverses. Notamment, tous (à l'exception de Cisco OpenDNS) sont non sécurisés : le lien entre vous et le résolveur est en clair, tout le monde peut écouter, et il n'est pas authentifié, donc vous croyez parler à Google Public DNS mais en fait vous parlez au tricheur que votre FAI a annoncé dans ses réseaux locaux.

    Et Quad9, c'est mieux, alors ? D'abord, c'est géré par l'organisme sans but lucratif bien connu PCH, qui gère une bonne partie de l'infrastructure du DNS (et qui sont des copains, oui, je suis subjectif),

    Quad9, lui, sécurise par TLS (RFC 7858). Cela permet d'éviter l'écoute par un tiers, et cela permet d'authentifier le résolveur (mais attention je n'ai pas encore testé ce point, Quad9 ne semble pas distribuer de manière authentifiée ses clés publiques).

    Question politique, des points à noter :

    • Quad9 s'engage à ne pas stocker votre adresse IP,
    • leur résolveur est un résolveur menteur : il ne répond pas (délibérement) pour les noms de domaines considérant comme lié à des activités néfastes comme la distribution de logiciel malveillant.

    L'adresse IPv4 de Quad9, comme son nom l'indique, est 9.9.9.9. Son adresse IPv6 est 2620:fe::fe. D'abord, un accès classique en UDP en clair, sur votre Linux favorite :

    % dig +nodnssec @9.9.9.9 AAAA irtf.org   
    
    ; <<>> DiG 9.10.3-P4-Ubuntu <<>> +nodnssec @9.9.9.9 AAAA irtf.org
    ; (1 server found)
    ;; global options: +cmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 11544
    ;; flags: qr rd ra ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
    
    ;; OPT PSEUDOSECTION:
    ; EDNS: version: 0, flags:; udp: 4096
    ;; QUESTION SECTION:
    ;irtf.org.      IN AAAA
    
    ;; ANSWER SECTION:
    irtf.org.       1325 IN AAAA 2001:1900:3001:11::2c
    
    ;; Query time: 4 msec
    ;; SERVER: 9.9.9.9#53(9.9.9.9)
    ;; WHEN: Thu Nov 16 09:49:41 +08 2017
    ;; MSG SIZE  rcvd: 65
    

    On y voit que Quad9 valide avec DNSSEC (la réponse a bien le bit AD - Authentic Data).

    Maintenant, testons la nouveauté importante de ce service, DNS sur TLS. C'est du TLS donc on peut y aller avec openssl :

    % openssl s_client -connect \[2620:fe::fe\]:853 -showcerts
    

    On voit que Quad9 répond bien en TLS, et a un certificat Let's Encrypt.

    Testons ensuite avec un client DNS, le programme getdns_query distribué avec getdns (l'option -l L lui dit d'utiliser DNS sur TLS) :

    % getdns_query @9.9.9.9 -s -l L www.afnic.fr AAAA
    {
      "answer_type": GETDNS_NAMETYPE_DNS,
      "canonical_name": <bindata for lb01-1.nic.fr.>,
      "just_address_answers":
      [
        {
          "address_data": <bindata for 2001:67c:2218:30::24>,
          "address_type": <bindata of "IPv6">
        }
     ...
    

    On peut utiliser tshark pour vérifier qu'on est bien en TLS :

    % tshark -n -i eth0  -d tcp.port==853,ssl host 9.9.9.9 
    

    Le -d tcp.port==853,ssl était là pour dire à tshark d'interpréter ce qui passe sur le port 853 (celui de DNS-sur-TLS) comme étant du TLS. On voit bien le dialogue TLS mais évidemment pas les questions et réponses DNS puique tout est chiffré.

    Bien, maintenant que les tests se passent bien, comment utiliser Quad9 pour la vraie résolution de noms ? On va utiliser stubby pour parler à Quad9. Le fichier de configuration Stubby sera du genre:

    [En fait, je ne peux pas le mettre, LinuxFr interprète son contenu et f…e en l'air tout le maraquage. Il va falloir que vous me croyiez sur parole.]

    On indique à stubby d'écouter sur l'adresse locale ::1, port 8053, et de faire suivre les requêtes en DNS sur TLS à 9.9.9.9 ou 2620:fe::fe. On lance stubby :

    % stubby   
    

    Et on peut le tester, en utilisant dig pour interroger à l'adresse et au port indiqué :

    [Idem, quelque chose dans le résultat de dig ne plait pas à LinuxFr]

    Et on peut vérifier avec tshark que Stubby parle bien avec Quad9, et en utilisant TLS.

    Stubby a l'avantage de bien gérer TCP, notamment en réutilisant les connexions (il serait très coûteux d'établir une connexion TCP pour chaque requête DNS, surtout avec TLS par dessus). Mais il n'a pas de cache des réponses, ce qui peut être ennuyeux si on est loin de Quad9. Pour cela, le plus simple est d'ajouter un vrai résolveur, ici Unbound. On le configure ainsi :

    [Configuration Unbound supprimée pour les mêmes raisons.]

    Avec cette configuration, Unbound va écouter sur l'adresse 127.0.0.1 (sur le port par défaut, 53, le port du DNS) et relayer les requêtes pour lesquelles il n'a pas déjà une réponse dans son cache vers Stubby (::1, port 8053). Interrogeons Unbound :

    [Et encore un dig supprimé]

    Unbound a une mémoire (le cache) donc si on recommance la requête aussitôt, la réponse arrivera bien plus vite et on verra le TTL diminué.

    Pour en savoir plus :
    - le site de référence
    - leur politique de vie privée
    - la FAQ
    - l'excellente bibliothèque getdns, le must pour faire du DNS en C
    - stubby
    - et toujours dans la série « les copains et les copines », le projet DNS privacy.

    Lire les commentaires

  • Le Firefox nouveau est arrivé ! (Journaux LinuxFR)

    Ca y est, Firefox 57 est sorti le 14 Novembre, avec lui le nouveau moteur de rendu Quantum. Je ne vais pas m'étendre sur ce dernier, il y a une superbe dépêche en cours de rédaction qui traitera le sujet mieux que moi.

    Dans tous les cas, j'étais curieux de le tester et de le comparer à son grand rival Chromium, la mouture libre de Chrome.

    J'ai quitté Firefox il y a des années après avoir constaté à quel point il devenait pataud, au profit de Chromium et l'annonce de Quantum me faisait de l'oeil. Avant de faire quelques petits speedtests (qui vaudront ce qu'ils vaudront), je commence par la conclusion : j'ai de nouveau adopté Firefox !

    D'abord, en terme d'impression personnelle : il est vraiment réactif, le Firefox mou du genou que je connaissais est loin derrière. Il a fallut que je me refasse à l'interface, qui a pas mal évoluée depuis que je l'ai quitté mais elle se rapproche de plus en plus de celle de Chromium donc pour le coup, c'était chose aisée. J'ai vraiment l'impression qu'il affiche tout plus vite que Chromium et je n'ai pas encore rencontré de ralentissement. Sur Chromium, j'avais parfois un petit freeze aléatoire, de quelques secondes, quand je regardais des vidéos en HTML5, pourtant ma config' est quand même relativement "costaud", je n'ai pas encore rencontré ce problème sur Firefox et c'est agréable.

    Quelques petits speedtests :
    A savoir qu'ils ont tous été réalisé dans des conditions "idéalles" et similaires : uniquement le navigateur lancé et un seul onglet ouvert.

    Premier test réalisé sur : http://speed-battle.com/

    SPEED-BATTLE measures online the speed of JavaScript in your browser and shows a comparison to previous visitors.
    Questions, SPEED-BATTLE can give answers to:
    Which browser is on my computer fastest in completing the SPEED-BATTLE test tasks?
    Which operating system is faster when using the same computer and browser version?
    Which computer is faster when using the same operating system and browser?
    Test results depend on different parameters (like CPU, browser, plugins/addons, operating system, system memory, number and kind of processes running in parallel and many more). The test will give you a reference value for the performance of your soft- and hardware. For consistent results run it when all other activity of your computer is low.
    SPEED-BATTLE is quick, for free and does not require any download or installation.

    Plus grand est le score, mieux c'est.

    Chromium :

    Chromium

    Firefox :

    Titre de l'image

    Second test réalisé sur : http://peacekeeper.futuremark.com/
    Pour le coup lui il test énormément de choses (rendu, vidéos HTML5 sous divers formats, les opérations dans le DOM…), si vous êtes anglophone je vous invite à lire leur FAQ qui vous donnera tous les détails. Plus grand est le scord, mieux c'est.

    Chromium :
    Titre de l'image

    Firefox :
    Titre de l'image

    Troisième et dernier test réalisé sur : http://browserbench.org/JetStream/

    JetStream is a JavaScript benchmark suite focused on the most advanced web applications. For more information, read the in-depth analysis. Bigger scores are better.

    Chromium :
    Titre de l'image

    Firefox :
    Titre de l'image

    Globalement, les deux premiers speedtests confirment mon impression de réactivité tandis que le dernier semble être plus mitigé mais les valeurs extrêmes ont étés plus élevées sur Firefox. Il faudrait dans tous les cas plusieurs itérations afin d'obtenir un résultat à peu près fiable.

    Je redonne sa chance au panda roux, on revient toujours à son premier amour  ;).

    Et vous ? Vous l'avez essayé ? Quelles sont vos impressions ?

    Lire les commentaires

  • Adaptation d'outils d'éducation à l'environnement en numérique. (Journaux LinuxFR)

    Je remets ici le message que j'ai innocemment posté au début dans Forum général.petites annonces ("recherche programmeur")… et qui, grâce aux conseils éclairés de contributeurs m'amène à débuter un journal.

    Salut. Je me demandais, comme ça, si il y avait dans les parages quelqu'un ayant des compétences en programmation qui serait tenté par l'aventure d'une adaptation de jeux de société éducatifs (éducation à l'environnement) en appli ou sur ordi. Les jeux en question ont été développés par ma compagne et moi et testés sur de vrais enfants (aucun enfant n'a été blessé ou maltraité pour les besoins des tests) Le truc c'est que le jeu sur plateau comme ressource éducative c'est plus trop à la mode alors on aimerait bien les dépoussiérer un peu. Bien sûr je n'ai pas une thune à mettre dans le projet (mais j'ai quelques compétences pour aller chercher des financements), et pour couronner le tout j'aimerai bien faire ça en open source. Des preneurs?
    Ah oui, je suis vers Saint-Brieuc (Côtes d'Armor)

    De la discussion avec ces contributeurs je tire deux conclusions:
    -D'abord qu'il faudrait que je publie ici le contenu préexistant en BY SA. Problème: sur l'un des jeux qui avait été conçu en forme "physique" (carton, papier…), certaines images utilisées sont propriétaires. Et oui, à l'époque il n'était pas question de le diffuser mais de l'utiliser dans un cercle restreint, en classe avec des enfants. Donc pour pouvoir le mettre ici, il faut que je "libère" le contenu des éléments non-libres. Un peu de boulot de recherche et d'illustration.
    -Ensuite, tant qu'à rebosser dessus, autant en profiter pour faire un test et apprendre des choses. Donc je me dis que je pourrais tenter seul une adaptation avec un framework: c'est Vassal qui m'a été conseillé.
    Du coup, objectifs pour la prochaine entrée du journal:
    -publier les contenus relatif aux jeux qui peuvent être publiés en BY-SA (règle du jeux, matériel sans les images)
    -retour d'expérience sur ma tentative de prise en main de Vassal

    Là, je précise que je suis un noob complet en matière de programmation, même avec un framework. D'ailleurs je suis même assez peu familier du monde du libre et de la culture libriste (même si mon intérêt et ma curiosité m'ont poussé à me renseigner un peu) Du coup, veuillez m'excuser par avance si je ne maitrise pas tous les "codes" de communication en vigueur, et n'hésitez pas à m'expliquer.

    Lire les commentaires

  • Le cauchemar d'Henry (Journaux LinuxFR)

    Henry, notre ami, est de retour pour vous conter les plus rocambolesques de ses aventu… de ses belles… de ses humiliations. Pour rappel, la dernière en date, la vie privée d'Henry, qui avait ravi tant de membres de LinuxFr.

    Le journal dont vous êtes l'anti-héros! Hop, on y va…

    La nuit dernière, Henry a fait un affreux cauchemar…

    Il arrivait au camping de Trougon, où l'employée de l'accueil lui faisait un grand sourire. Une fois dans son bungalow, il peut apprécier le grand lit, la petite terrasse, au sud, et la cuisine largement équipée. De passage, plus tard, à la supérette du camping, il peut constater, non sans un sentiment de plénitude, que son jus de pommes préféré est en rayonnage, de même que du jambon fermier et de bonnes baguettes. Du premier coup, il parvient à retourner à son bungalow, il faut dire que le chemin est drôlement bien indiqué.

    Le soir, au restaurant, la pizza du chef lui donne satisfaction, de même que la part de tarte tatin et le petit vin de la région. Et le tout pour €15! Cerise sur le gâteau: les toilettes sont propres et la porte ferme efficacement.

    La fin de soirée, Henry la passe sur sa terrasse, avec Evelyne et Rolande, qui habitent 2 bungalows plus loin. Bien que Evelyne lui plaise plus, c'est Rolande qui semble plus sensible à son charme ténébreux. "Bah, se dit-il, laissons faire le destin." Bien que les deux femmes repartent dormir chez elles, c'est clair qu'Henry a marqué des points. Vivement demain!

    La nuit, parfaite, pas de bruit, ni dedans ni dehors. Pas de ventilation, pas de voisins bruyants, pas de route proche, pas de chasse d'eau qui fuit. À la supérette au matin, Henry croise à nouveau le dame de l'accueil qui lui fait la bise tout en mettant sa main sur son épaule. Si ça c'est pas le bonheur!

    Il gagne une bouteille de vinaigre à la tombola de la caisse du petit magasin; Cécile, la dame de l'accueil l'invite pour lui montrer la région "un de ces jours", la plage est propre, le vendeur de glaces sympa et la noix de coco pas trop chère.

    Lorsque soudain, Henry se rend compte, avec effroi, que ça fait plus de 24 heures qu'il n'a pas allumé son téléphone, que sa tablette est encore dans sa valise et qu'il ne sait même pas si le camping propose du WiFi : rien de tout cela ne lui a manqué, horreur!!

    À la place d'Henry, que ferais-tu alors?

    Lire les commentaires

  • Eben Moglen vs FSF !? (Journaux LinuxFR)

    Bonjour les amis,

    au détour de mes flux RSS, je suis tombé sur un post de Matthew Garrett.

    Il déclare que Eben Moglen à l'origine des licences GPL ne peu plus être considéré comme un ami de la communauté du logiciel libre et de la Free Software Foundation.

    Fin Octobre 2016, Eben Moglen a démissionné (été forcé à démissionner ?) de son rôle d'avocat conseil auprès de la FSF.

    Les différentes dépêches (y compris l'annonce de la FSF) ne mentionnent aucun conflit entre les 2 parties et la position de Matthew tranche vraiment avec celles-ci…

    Qu'en pensez-vous ?

    Lire les commentaires

  • Vers des serveurs libres, ouverts et sécurisés : NERF (2) (Journaux LinuxFR)

    Bonsoir à tous,

    Le projet NERF (Non Extensible Reduced Firmware) progresse à grand pas. Nous l'avons présenté avec succès lors de la dernière linuxcon de Prague et vous pouvez trouver la video du talk de Ron ici ( https://www.youtube.com/watch?v=iffTJ1vPCSo ). La video est en anglais c'est normal Ron est américain, on se connait depuis une vingtaine d'années quand il a créée linuxbios à Los Alamos, mon pseudo ne vous dira rien mais dans le talk je suis Jean-Marie Verdun.

    Pour rappel les objectifs de NERF sont de supprimer les trous de sécurités induits par l'introduction de ME et UEFI dans les machines Intel, mais aussi d'ouvrir la voie à des machines les plus ouvertes possibles. Pour se faire nous désactivons la partie ME (remote management IPMI) et remplaçons le code UEFI par un kernel linux qui est directement présent sur le chip des cartes mères.

    J'ai fait il y a quelques temps un journal sur cette approche à une époque où nous en étions au stade de preuve conceptuelle. Depuis nous avons rebooté avec succès un serveur Open Compute plus de 10 000 fois sans aucun plantage ni ralentissement (ce qui n'a jamais été possible avec un BIOS UEFI) et nous travaillons au support de grub directement dans NERF avec pour objectif de booter une distro standard d'ici la fin du mois de décembre (encore une fois c'est un objectif).

    Il reste encore pas mal de travail à accomplir, mais nous sommes de plus en plus optimiste quand à notre capacité à atteindre notre objectif qui est de commercialiser des serveurs à base de BIOS NERF et de supprimer UEFI/ME des machines. J'espère qu'on y arrivera en début 2018. Un des objectifs des fondateurs du projet avec cette technologie en dehors de tout ce que vous pourrez lire sur internet suite à ce talk est de pouvoir éteindre et rallumer de manière prédictible des serveurs à grande échelle et d'induire ainsi une reduction drastique de la consommation d'énergie des datacenters. (on boote linux en moins de 20s actuellement depuis un power on. On a pour objectif de descendre ce temps sous les 5s)

    Aussi fou que cela puisse paraitre, il nous reste beaucoup de chose à définir et notamment la partie interface utilisateur, en tant qu'administrateur système comment envisageriez vous un BIOS qui fonctionne sur la base d'un kernel linux ? Quelles commandes vous semblent les plus importantes avant d'exécuter un kexec ? Comment géreriez vous un système sans interface IPMI ? (c'est faisable en y réflechissant un peu)

    A ce jour nous faisons des choses basiques, mais suffisantes, on boot un kernel linux, qui démarre une interface réseau, attrape une adresse IP sur un serveur dhcp et fait un wget en https sur un serveur remote pour executer un kexec d'un kernel de distro standard et monter le systeme de fichier associé. C'est suffisant pour nos cas d'usage probablement pas pour les votres et c'est la dessus dont on a besoin de vos inputs, alors pour une fois n'hésitez pas à me troller je suis sure que la plupart de vos idées seront bonnes. Typiquement on ne regarde pas la MBR des disques en attachement direct, c'est beaucoup trop "old school" et on peut faire bien mieux avec un noyau linux a la place du BIOS.

    Quoiqu'il en soit, j'espere que cette technologie trouvera un intérêt auprès de notre modeste communauté linux francaise, les personnes impliquées derrieres ont passe un grand nombres d'heures pour la faire fonctionner et les années d'experience acquises dans la gestion de systèmes hyperscales se retrouvent dans le résultat de ces travaux (Ron est le papa de coreboot).

    Pour ceux qui souhaitent tester NERF, nous allons mettre en ligne prochainement des serveurs qui fonctionneront à base de cette technologie chez Data4, un des rares hébergeurs francais qui a conçu des salles machines faites pour le free cooling et les équipements Open Compute / Open Power et qui a accepter de nous aider a mettre au point ces technologies en nous proposant des espaces à des tarifs corrects.

    Sinon nous pouvons vous vendre des kits de développements qui permettent de découvrir la technologie sur un serveur Open Compute utilisé pour le développement du projet. On en a disséminer un grand nombre dans la silicon vallée et j'ai toujours ce doux rève de penser qu'un jour la France pourra etre leader en infrastructure. (remarque: on peut l'etre sans NERF probablement)

    vejmarie

    ps: je suis de l'autre coté de l'atlantique, ne m'en voulez pas si je ne répond pas a vos commentaires "instantanement"

    Lire les commentaires

  • Sauvegarde incrémentiel de container lxc sous proxmox (Journaux LinuxFR)

    Introduction

    Proxmox c'est bon, c'est libre et ça marche bien.
    Par contre il a une faiblesse, ce sont les sauvegardes.
    Ils vous pond un gros .lzo par sauvegarde, certes on dit dans l'espaces de sauvegarde combien nous voulons garder de sauvegardes, et
    il effacera les vielles sauvegardes.

    C'est suffisant pour des petits containers ou vm par exemple, mais pour un gros container ça ne va pas le faire.

    Ma solution

    Description de ma situation

    Pour faire simple prenons mon cas.

    J'ai une instance de proxmox qui tourne dans ma cave, dessus il n'y a que des containers lxc, j'ai quelques petits containers et un gros qui s'appelle NAS et qui fait dans les 300Go.

    Mais le problème c'est mon NAS. Dedans il y a toutes notre musique, toutes nos photos/vidéos, bref toute notre vie, qu'il faut bien sauvegarder.
    Par contre je me vois mal me prendre 300Go par nuit, ma machine de sauvegarde va vite être saturée.

    A côté du serveur il y a un petit serveur (un vieux microcube proserv d'hp), il a 4 disques de 2to en raid 5. Dessus tourne une debian qui offre un partage nfs
    au proxmox.
    J'ai également une instance de rsnapshot sur mon hp qui sauvagarde le contenu de mon container NAS.

    Cela fonctionne bien, mais je me suis dit si je pouvait prendre tous le container par passage de rsnaphot, histoire que si un jour le proxmox casse il n'y aurait plus qu'a recopier l’intégralité du contenus sur le nouveau proxmox (ça marche j'ai fait le test avec un container d'essai le week-end passé).

    Ce qui est cool c'est que avec rsnapshot on peut remplacer les sauvegardes de proxmox pour les containers (attention que ceux qui sont dans des rpool zfs ou dans des lv de lvm).

    Un bout de mon fichier de configuration

    Comme c'est plus facile avec un exemple, voici un bout de mon fichier de config qui permet de sauvegarder un container, au préalable il faut que la machine de sauvegarde puisse se connecter au proxmox en ssh avec identification par clé.

    Dans l'exemple notre container est le 202 et l'adresse du proxmox est 192.168.2.190
    Dans le fichier de configuration il vous faut passer ce argument sinon il risque d'être bizarre votre container avec le temps qui s'écoule.

    rsync_long_args --delete

    en ZFS

    La section pour la sauvegarde du container 202:

    #NAS
    backup_exec ssh root@192.168.2.190 "zfs snapshot rpool/data/subvol-202-disk-1@backup"
    backup  root@192.168.2.190://rpool/data/subvol-202-disk-1/.zfs/snapshot/backup/ nas-202/
    backup_exec ssh root@192.168.2.190 "zfs destroy rpool/data/subvol-202-disk-1@backup"

    C'est vraiment simple après il faut pas oublier de prendre les fichiers de configuration de votre container sur l'hyperviseur, mais à la limite vous en foutez vous recréer un container avec la même id et même capacité de disque et vous passer la commande rsync dans l'autre sens.

    Voilà vous avez des sauvegardes incrémental de vos containers et si vous avez un mysql dedans il devrait pas y avoir de problème vu que vous copiez un snapshot.

    en LVM

    Si vous avez vos containers dans des lv sous lvm ça marche aussi, voici un exemple que vous pouvez adapter à rsnapshot, je l'ai pas encore adapté mais j'ai testé les commandes à la main sur la grappe de proxmox de mon employeur.

    lvcreate -n backup-308 -l 10%ORIGIN -s /dev/pve/vm-308-disk-1
    mount /dev/pve/backup-308 /snapshots/308
    rsync ...
    umount /snapshots/308
    lvremove -f /dev/pve/backup-308

    Pour les VM ? Je n'ai pas encore penché la dessus, si quelqu'un à une idée.

    Lire les commentaires

  • Je suis hypermétrope (Journaux LinuxFR)

    Cher Nal,

    je profite de cet espace de liberté pour parler d'autre chose que d'informatique et j'espère que tu ne m'en tiendra pas rigueur.

    Parlons peu, parlons bien, c'est du haut de mes 38 ans que j'ai récemment découvert mon hypermétropie (et une très légère astigmatie), au détour d'une visite chez l'ophtalmo.

    Je n'ai, jusqu'alors, jamais porté de lunettes (si ce n'est celles de soleil et sans correction).

    Cette hypermétropie est relativement faible (+1.75 aux deux yeux), et l'astigmatie encore plus (0.25).

    L'ophtalmo a fait preuve de beaucoup de psychologie lors de cette annonce, en me balançant, dans le plus grand des calmes, "vous devez les porter tout le temps !".
    Pour quelqu'un comme moi qui n'en a jamais porté, c'est un peu abrupt, mais bon passons.

    A vrai dire pour l'heure, je m'en sers surtout pour travailler, mais l'âge aidant, je risque de ne plus pouvoir m'en séparer sauf pour la vision de loin.

    Parce que ma vision de loin est très bonne, de l'ordre de 12/10.
    Caractéristique des hypermétropies faibles, parait-il, et au vu de ce que j'ai lu ici ou là.

    Mais là encore, passé un certain âge, l'oeil n’accommodera plus, même pour la vision de loin.

    Alors, comme un peu tout le monde ici aurait fait, j'ai fait quelques recherches.
    Et aussi parce que l'idée de porter des lunettes en permanence m'incommode, j'ai doncn pensé à l'opération.

    Quand on consulte les sites web des centres proposant des opérations au laser, tout à l'air formidable !
    Pas cher, sans douleur, et avec des résultats incroyables !!

    De même que les témoignages sur youtube et ailleurs, par exemple.
    Surtout ceux en provenance de la chaine officielle, ou du site web d'un centre.

    Mais voilà, tout ça est trop poli pour être honnête.
    Et j'ai l'impression que les centres font du google bombing pour occulter les ratés et témoignages négatifs.

    Et comme dirait Martine, quand c'est flou, il y a un loup !

    Alors je suis donc à la recherche de témoignages auprès de vous, afin de savoir si vous vous êtes déjà fait opérer des yeux, et si oui avec quelle technique et pour quel défaut de vision ? Quels résultats ? Des régressions ?

    Je m'en remets à vous, d'avance merci

    Lire les commentaires

  • Créer un environnement de bureau à sa sauce: nouvel essai (Journaux LinuxFR)

    Sommaire

    Préambule

    Licence

    Licence CC-BY.

    «Historique»

    Il y a longtemps, j'ai voulu écrire une dépêche ici sur la création d'un «guide imparfait pour construire un environnement de bureau à sa sauce».
    J'avais voulu faire une dépêche, mais, je n'ai probablement pas ce qu'il faut pour diriger un travail collectif, alors je vais reprendre de zéro, mais je tiens malgré tout à remercier ceux qui ont essayé de m'aider et dont je me permets de jeter les efforts aux orties (alors que je ne fais au final sûrement pas aussi bien):

    • nyco,
    • oumph,
    • okram,
    • olivierweb,
    • palm123,
    • baud,
    • royalpanda,
    • syvolc,
    • fiuzzy,
    • anaseto,
    • ytterbium,
    • andrianarivony,
    • jcr83,
    • neox,
    • benoît,
    • oulala,
    • jarillon,
    • montaigne,
    • groumph,
    • err404,
    • fdf,
    • titiii,
    • lenod,
    • dareg--2,
    • leowzukw

    Je retente donc, en prenant en compte les leçons tirées:

    • ne pas tenter d'être exhaustif
    • partitionner
    • ne pas essayer de faire une dépêche quand on n'a aucune expérience d'édition
    • ne pas faire l'âne de buridan: se décider.

    En conséquence de ces points, de nombreux raccourcis seront pris, de fréquents partis pris commis, d'éventuels trolls appelés, et j'en oublie.
    Je préfère prévenir de suite, ce journal et ceux qui suivront éventuellement ne sont pas destinés à Madame Michu, mais plutôt aux jeunes individus d'une variété bien particulière de moules à barbe et de trolls velus.

    Introduction

    Compte tenu du fait que je compte plutôt faire une série qu'un article mono-bloc chaque «temps» sera l'occasion d'un article. Je pense que je consacrerai un préambule de chaque journal pour revenir sur les points des précédents, en fonction des commentaires. Une sorte de façon de patcher, quoi… À voir.

    Plan d'action

    Introduction

    Tout d'abord, l'introduction.
    Cet article, quoi.
    Vu que c'est chiant et creux, tant à écrire que probablement à lire, je vais aussi faire un rappel de ce que l'on appelle un environnement de bureau (par la suite de cet article et des suivants, abrégé DE, pour Desktop Environment, le terme anglois), et pourquoi on appelle ça comme ça. S'en suivront un certain nombre de questionnement pas nécessairement pertinents.

    Les fondations

    Dans un deuxième temps, je compte définir les composants de base qui vont servir de fondations au reste, et imposer les outils que j'utilise moi: vous voila averti, une bonne dose de subjectivité et de parti pris est à prévoir. Bien sûr, je serai heureux de lire les trolls moules intéressées au débat :]

    La base

    Viendra ensuite un article sur un choix, parmi tant d'autres, sur les outils de base d'un DE non orienté geek ou nerd, et comment intégrer ces outils de travail.
    Ce ne sera probablement pas très long, parce que pour être honnête, c'est plutôt une sélection parmi les outils que j'ai testés au fur et à mesure, souvent basée sur l'idée d'avoir un système avec le moins de paquets installés: soit je favorise Qt, soit je favorise Gtk, parfois des softs en Xlib ou en ncurses…
    J'émaillerai ce passage de commentaires de pourquoi j'ai préféré tel ou tel outil, pourquoi parfois je fais une entorse à ma règle de me baser sur un minimum de toolkits différents…

    La déco

    Le quatrième point sera plutôt orienté vers une sélection d'outils liés au confort: principalement les applications multimédia. Peut-être que cette partie sera fusionnée avec la précédente, je verrai en fonction de la taille.

    Le productif

    J'enchaînerai sur une partie plus technique, et qui est vraisemblablement la raison qui m'a fait adopter ce mode de travail.
    On y parlera d'outils de programmation, de comment on peut oser dire qu'un IDE c'est pour les gens incapables de structurer leurs projets, de la façon d'administrer un jeu restreint de machines, pas forcément de la façon la plus efficace (parce que je suis très mauvais en réseau et plus plus que bof en administration système: il ne sera pas compliqué de m'envoyer paître sur des erreurs de sécurité, même si j'essaierai de faire attention).

    la conclusion ?

    Éventuellement, je trouverai le matériel pour un autre journal, qui lui traitera d'éventuelles optimisations du système, d'opinion personnelles sur le futur de mon propre DE, des difficultés que j'ai parfois pu rencontrer avec les jeux vidéos ou certains softs récalcitrants, des outils qui se foutent royalement de noyer l'utilisateur dans leur chiée de fichiers de config mal placés, de l'éventualité de construire un méta-paquet qui installerait les outils ainsi que quelques scripts permettant de customiser tout ça de manière uniforme…
    À voir donc, il me faudrait déjà arriver jusque la :]

    Vous conviendrez que c'est une introduction plutôt longue, et plutôt inutile.
    J'enchaîne donc sur… la première partie, comme promis.

    Histoire des DE

    En version courte et biaisée:
    L'idée derrière les DE informatiques est de transposer les termes et les techniques de travail sur papier pré-«informatique grand -public» à l'informatique, de sorte à faciliter la transition entre l'espace de travail physique (accès aux données de manière visuelle, vocale et tactile (le métier de secrétaire à bien changé ;]), pertinent, mais limité en vitesse et en portée), et l'espace de travail virtuel (accès au données parfois lointaines de façon quasi-instantanée, tri ultra-rapide, mais absence de sensibilité, absence originelle de contrôle vocal, lui-même encore plutôt inefficace, accessibilité parfois douteuse?). C'est de la que nous viennent diverses adaptations de termes:

    • fichier,
    • dossier,
    • corbeille,
    • bureau (justement),
    • BSOD,
    • probablement d'autres que j'oublie ou ignore

    J'ai aussi envie de dire que c'est de cette dette technique que viens l'idée de se limiter à seul bureau, too much windows (la lumière naturelle ça abîme les écrans, bordel!) et du foutoir sur le bureau, justement.

    En version longue, je vous invite plutôt à lire les divers articles de wikipedia. Oui, je sais, c'est plus court comme explication, du coup, mais je ne suis pas une encyclopédie, moi: déjà, je pense avoir prouvé un certain nombre de partis pris, ce qui me semble contraire aux buts d'une… ben, encyclopédie.

    Bref.
    Nous, ou plutôt nos pères, voire grand-pères pour certains d'entre vous, avons transposé, avec plus ou moins de succès, le bureau papier vers le bureau numérique, avec le succès que l'on connaît aujourd'hui.

    Concrètement, des logiciels ont été écrits afin de gérer de manière (parfois semi-)graphique ces éléments, afin de permettre à l'utilisateur de gérer au mieux son espace de travail (workspace en anglais), les plus pauvres ne disposant pour tout espace de travail que d'un bureau unique, les plus débrouillards et organisés sachant en exploiter plusieurs (et parfois même le sol, vécu!).
    Ces logiciels sont habituellement appelés «gestionnaires de fenêtres» ( par la suite, j'utiliserais l'abréviation WM), mais en réalité, et les vrais barbus vous l'expliquerons peut-être mieux que moi, les WMs sont, en pratique, limités aux seules applications graphiques. Pour les irréductibles amoureux du terminal, il existe ce que l'on appelle des multiplexeurs de terminaux (tmux, screen), qui ont, au final, un rôle très proche, voire identique. Je préfère prévenir de suite, je ne connais les multiplexeurs de terminaux que de nom, mais à priori, ils sont de véritables gestionnaires de fenêtres pavant (je reviendrai sur le terme pavant plus tard), sauf que personne ne semble avoir fait de travail équivalent dessus à celui qui a été fait pour nos WM habituels.

    L'approche la plus connue, et en tout cas la première que j'aie connu, fut de mimer à l'identique les bureaux physiques, avec des documents de travail , ou fenêtres dans notre jargon, qui peuvent s'empiler, pour «ne pas perdre» l'utilisateur.
    Sauf que, tout le monde n'a pas considéré que c'était une bonne chose, et de la sont (peut-être) nées les deux familles de WM:

    • les WM en foutoir, forçant l'utilisateur à jongler avec des piles de papiers pour essayer d'accomplir sa corvée pile, qui nécessitent de gérer manuellement les fenêtres afin d'être «productif». Les utilisateurs de ces gestionnaires utilisent souvent de nombreux outils dédiés à leurs tâches quotidiennes, capables de gérer un grand nombre de tâches dans un seul logiciel, je vous laisse deviner pourquoi. Ces outils représentent l'immense majorité au doigt levé. Est-ce la résistance au changement? Je vous laisse seuls juges. J'hésite à les appeler FWM, pour Foutoir Window Manager (le terme anglais correspondant au F était tellement moins poétique…).

    • les WM pavant (ci-après abrégé TWM, pour Tiling Window Manager), dont le principe est de laisser la machine gérer un placement optimal des papiers fenêtres sur le bureau. Leur capacité fondamentale est l'utilisation optimale de l'espace de l'écran, souvent au détriment de l'esthétique mais pour divers gains d'efficacité non-négligeables.
      Ces gestionnaires se divisent à priori en 2 grandes familles:

      • les gestionnaires basés sur un nombre pré-défini de stratégies de placements: imposent un certain nombre de stratégies de placement, parmi lesquelles l'utilisateur doit choisir. Je vous avoue ne pas avoir été séduit par l'idée, mais avec le temps je pense que je devrais y réfléchir à nouveau. En conséquence, je n'ai pas trop d'exemples à donner: mes recherches à ce sujet sont trop anciennes.
      • les gestionnaires basés sur un placement semi-libre: laissent l'utilisateur composer sa stratégie au fil de ses besoins. Parmis ceux que j'ai testés figurent notamment ratpoison le tueur de souris, et i3, qui semble au final très populaire, son nom apparaissant majoritairement et avec une fréquence grandissante dans mes lectures (ça sent le biais, hein? Je suis d'accord.).

    Je comptais, à l'origine, intégrer la notion d'applications et de comment en «lancer» à partir d'un WM, mais cet article est déjà bien trop long, finalement, et il me reste à poser un certain nombre de questions, sur lesquelles j'aimerai bien avoir vos opinions.

    Par exemple, j'ai mentionné l'accessibilité:

    je n'ai, à priori, aucune déficience physique (pour le mental, ça reste à prouver…) qui m'empêche d'utiliser mes machines avec l'interface de mon choix, mais d'autres n'ont pas cette chance (s'il y en a dans la salle, venez me voir à la fin de… je m'égare la…) et je me demande, de manière générale, si prendre en compte ces aspects et contraintes ne pourrait pas améliorer l'usage de ceux qui ne sont pas affectés, voire retarder l'éventualité de le devenir, ou même réduire l'impact lorsqu'un problème arrive: nous vivons de plus en plus vieux, et j'ai pu voir une personne dépérir suite à la perte de l'ouïe. Je n'ose imaginer la vue pour moi, gros utilisateur d'écrans (en théorie j'en suis encore loin, mais…).

    Doit-on considérer que le contrôle sonore (synthèse et reconnaissance vocale) font partie d'un DE? Si oui (et je pense que oui), quels outils permettent de traduire le traditionnel saisie+visuel vers ce domaine?

    D'ailleurs, est-ce pertinent de chercher à traduire des applications de base mal pensées? Ne serait-il pas possible de penser un outil pour faciliter la mise en place de frontaux permettant l'accès à diverses «cibles» (sourds, muets, féministes, trisomiques, geeks, famille Michu…)?

    Quid des périphériques embarqués? Des géants (je sais, c'est ironique, de qualifier µsoft de géant) ont essayé, mais se sont cassés les dents dessus: pourquoi? Quelles sont les spécificités des tablettes et débilophones qui rendent ces outils si peu simples à utiliser pour des usages avancés ( rappelez-vous: la cible de cette série de journaux, sont les utilisateurs avancés)? D'ailleurs, c'est quoi, un usage avancé?

    Voila, j'avoue, je trouvais que ça manquais de techno-trolls par ici ces derniers temps, alors je me dévoue pour, au moins, essayer de lancer un truc :]
    Bon, j'aurai probablement du poster ça un jeudi soir ou trolldi matin, mais j'aimerai essayer de régler ce guide un jour, et vu que je suis motivé ce soir…

    PS: je note que l'usage de ] au lieu de ) pour les smiley évite la confusion de mon éditeur de texte favori. Que pensez-vous de cette idée? En plus, ça évite de gâcher la journée de ceux qui noterons une incohérence entre les ( et les )?

    Lire les commentaires

  • Apple change la licence de CUPS (Journaux LinuxFR)

    Apple a annoncé le 7 novembre qu'à partir de la prochaine version stable de CUPS (2.3), la licence passera de la GPL v2 vers la licence Apache 2 plus permissive pour eux.

    https://www.cups.org/blog/2017-11-07-cups-license-change.html

    Lire les commentaires

  • Azzedine Alaïa bronsonnisé (Journaux LinuxFR)

    Cher journal,

    Je suis grandement étonné de ne pas avoir vu passer la nouvelle dans une dépêche tant c’est un scoop qui mérite la une.

    Azzedine Alaïa, célèbre couturier, est décédé hier.

    Ce journal étant un bookmark, voici une source : http://www.liberation.fr/france/2017/11/19/azzedine-alaia-l-art-et-la-matiere_1611050

    Il était certainement connu pour un tas de bonnes raisons par des tas de gens très raisonnables. Je pense ne pas me tromper en disant qu’il était connu par ici pour de mauvaises raisons, nous ne sommes pas des gens raisonnables. Il avait eu l’insigne honneur d’être cité dans la scène d’ouverture du flim la classe américaine.

    Pour pouvoir rester chics dans notre manière de nous habiller, nous pourrons toujours aller nous acheter des sous-pulls chez Yohji Yamamoto

    Lire les commentaires

  • XFCE/Gtk et raccourcis type Bash/Emacs (Journaux LinuxFR)

    Lors de mes recherches pour trouver des remplaçants aux extensions dépréciées depuis Firefox Quantum (Keysnail notamment), je suis tombé sur cette page. Il y est expliqué que l'on peut avoir des raccourcis type Emacs/Bash dans les zones de texte sous XFCE. Voici la commande shell qui permet cela sous XFCE :

    xfconf-query -c xsettings -p /Gtk/KeyThemeName -s Emacs
    

    Vous pourrez remarquer que c'est une fonctionnalité de Gtk et non de XFCE ; comprendre ici que c'est potentiellement possible sur tous les bureaux Gtk, mais que cela fonctionne que dans les fenêtres Gtk. Je vous laisse trouver comment faire sur votre bureau favori ! Je me rappelle avoir vu l'option dans Gnome Shell via Gnome Tweak Tool.

    Malheureusement, pas de commande avancé comme l'on trouve dans Emacs, c'est-à-dire pas de sélection avec Ctrl-space, ni de recherche (avant et arrière) avec Ctrl-s et Ctrl-r entre autres. Cela ressemble finalement bien plus aux commandes Bash

    Malgré tant de temps sur XFCE, cette option m'était inconnue. En espérant que ça puisse servir à quelqu'un.

    Lire les commentaires

  • XFCE/Gtk et racourcis type Bash/Emacs (Journaux LinuxFR)

    Lors de mes recherches pour trouver des remplaçants aux extensions dépréciées depuis Firefox Quantum (Keysnail notamment), je suis tombé sur cette page. Il y est expliqué que l'on peut avoir des raccourcis type Emacs/Bash dans les zones de texte sous XFCE. Voici la commande shell qui permet cela sous XFCE :

    xfconf-query -c xsettings -p /Gtk/KeyThemeName -s Emacs
    

    Vous pourrez remarquer que c'est une fonctionnalité de Gtk et non de XFCE ; comprendre ici que c'est potentiellement possible sur tous les bureaux Gtk, mais que cela fonctionne que dans les fenêtres Gtk. Je vous laisse trouver comment faire sur votre bureau favori ! Je me rappelle avoir vu l'option dans Gnome Shell via Gnome Tweak Tool.

    Malheureusement, pas de commande avancé comme l'on trouve dans Emacs, c'est-à-dire pas de sélection avec Ctrl-space, ni de recherche (avant et arrière) avec Ctrl-s et Ctrl-r entre autres. Cela ressemble finalement bien plus aux commandes Bash

    Malgré tant de temps sur XFCE, cette option m'était inconnue. En espérant que ça puisse servir à quelqu'un.

    Lire les commentaires

  • J'ai fait un jeu (Journaux LinuxFR)

    Cher 'nal,

    J'ai fait un petit jeu vidéo. C'était fun.

    Il s'agit d'un jeu de course 2D, avec IA, armes et éditeur de pistes. Le jeu n'est pas vraiment fini. Il manque plein de trucs genre menus, réglages, compteurs de tours, etc. Mais il y a juste assez dedans déjà pour que ce soit brièvement amusant.

    J'ai essayé de voir si ça pouvait intéresser du monde, et il semble que tout le monde s'en tamponne le coquillard.

    Donc le voici, sur GitHub, sous licence GPLv3+. Ça aura peut-être le moyen d'amuser un peu de monde, et ça pourra peut-être aussi servir d'exemple pour ceux qui veulent faire ce genre de jeu.

    À ceux que ça peut intéresser, amusez-vous bien :-)

    PS: Le code est cracra par endroit et mériterait sûrement que je sois fusillé puis pendu, mais .. bleh.

    Screenshot

    Lire les commentaires

"... Je me suis imposé la loi de ne procéder jamais que du connu
à l'inconnu, de ne déduire aucune conséquence qui ne dérive
immédiatement des expériences et des observations ..."
-+- Antoine-Laurent Lavoisier, 1743-1794 -+-