ymorin a écrit 498 commentaires

  • [^] # Re: BZH rules!

    Posté par  . En réponse au sondage Comment nommez-vous vos machines ?. Évalué à 4.

    noyal

    Oh purée, comment n'y avais-je point pensé auparavant ?

    Bon, du coup il me faut acheter une nouvelle machine… Pff…

  • # BZH rules!

    Posté par  . En réponse au sondage Comment nommez-vous vos machines ?. Évalué à 6.

    scaer, gourin, lesneven, ploermel, treguer, etc…

  • [^] # Re: Majuscules ?

    Posté par  . En réponse au journal La mort de Solaris et de SPARC. Évalué à 4.

    s/Solaris/Slowaris/ ;-)

  • # vdev ?

    Posté par  . En réponse à la dépêche Sortie de Devuan Jessie 1.0. Évalué à 10.

    Yop,

    Bon, je me suis abstenu jusqu'à maintenant de tout commentaire acerbe sur Devuan.
    Chacun est libre d'utiliser son temps comme il l'entend.

    Mais quand je lis Une migration vers vdev est prévue pour la prochaine version, je me dis deux choses :

    1. Pourquoi pas eudev, déjà forké et maintenu par Gentoo ? Encore de la duplication d'efforts pour rien…
    2. Est-il saint et pertinent de basculer vers un package dont même l'auteur avoue qu'il est moribond : This system is mothballed […] I do not have time to work on it in the foreseeable future, nor do I have time to answer support requests, et dont le dernier commit significatif (pour être gentil) date de plus d'un an ?

    Par ailleurs, casser la compatibilité avec Debian me semble à tout le moins hasardeux. Debian a une base d'installations ultra importante et large (quantité et domaines) ; se couper de ces utilisateurs est un pari vraiment risqué.

    Ceci me laisse dubitatif sur la pérennité de cette distribution.

    Tout ça à cause de quoi, au final ? (hop, troll inside, enjoy!)

    Hop,
    Moi.

  • # authorized_keys

    Posté par  . En réponse au message SSH me demande toujours mon mot de passe.. Évalué à 3.

    Sur le serveur, tu doit créer le fichier ~/.ssh/authorized_keys. Ce fichier devra
    contenir chaque clé publique que tu veux autoriser à se connecter à ton serveur.

    Dans ton case, copie le contenu de ~/.ssh/id_dsa.pub de ton client, et met le
    dans ~/.ssh/authorized_keys de ton serveur.

    Comme dis plus haut, ~/.ssh/ doit être 0700 et ~/.ssh/authorized_keys doit
    être 0600.

    Hop,
    Moi.

  • [^] # Re: Libre, pas libre, c'est douteux

    Posté par  . En réponse au journal grsecurity abandonne le gratuit. Évalué à 3.

    des sociétés peuvent passer des contrats avec des clauses de non-divulgation

    Non, car les licences GPL (classique, Lesser et Affero, v2 et v3) interdisent
    d'ajouter des restrictions supplémentaires à la diffusion. Et un accord de
    non-divulgation est une restriction supplémentaire.

    Hop,
    Moi.

  • [^] # Re: poids de l'histoire

    Posté par  . En réponse au journal Lennart a encore frappé !. Évalué à 6.

    15 commits de Lennart en 5 ans.

    PA fonctionne, depuis à peu près depuis 5ans

    J'en conclue que Lennart a mené le projet jusqu'à ce qu'il soit stable, et une fois stabilisé, a passé la main à d'autres pour le maintenir.

    C'est plutôt du bon boulot, pour le coup.

    A+,
    Moi.

  • [^] # Re: Intérêt ?

    Posté par  . En réponse au journal Portable triple écran. Évalué à 6.

    sur un ordinateur portable la batterie doit s'user à une vitesse folle avec ce genre de gadget

    Sans compter que le support Linux pour les écrans USB est loin d'être gagné… :-(

    D'ailleurs, si quelqu'un connait un écran USB qui fonctionne sous Linux, et qui ai de bonnes specs (1920x1080 mini, faible temps de refresh), je suis preneur.

    Hop,
    Moi.

  • [^] # Re: Mélange des deux

    Posté par  . En réponse au journal Gestion des erreurs d’allocation mémoire en C. Évalué à 7.

    il faut écrire sur le disque en cas de pointe de consommation de mémoire.

    Et ça va même au-delà : les pages .text (le code du programme) sont, dans la très grande majorité des cas, non-modifiées, donc ce qu'il y a en mémoire est exactement ce qu'il y a sur le disque. Le noyau va donc libérer ces pages lorsqu'il doit trouver de la place, puisqu'il sait pouvoir les récupérer depuis le disque. Ce qui fait que dès qu'un programme va être exécuté, ses pages ne sont peut-être plus en mémoire, et donc le noyau va les recharger depuis le disque, d'où activité du disque. Pire, pour recharger ces pages, il va peut-être devoir en libérer d'autres, d'un autre programme, qui lorsqu'il sera de exécuter à son tour, verra ses pages rechargées depuis le disque. Et ainsi de suite.

    Donc, même sans swap, une condition de low memory peut entraîner une forte activité du disque.

    Autant dire que les performances du système vont en souffrir grandement…

    Hop,
    Moi.

  • [^] # Re: Résumé dans le prochain épisode

    Posté par  . En réponse au journal Qui utilise Kernel BFS/BFQ ?. Évalué à 10.

    BFQ vient d'être activé

    Non, ce n'est pas la même chose :

    • BFQ (Budget Fair Queueing) est un ordonnanceur d'entrées/sorties (IO scheduler).
    • BFS (Brain Fuck Scheduler) est un ordonnanceur de tâches (task scheduler).

    Le premier va ordonner les requêtes vers/depuis les supports de stockage, le second vas ordonnancer l'exécution des tâches sur le/s processeur/s. BFQ est dans le noyau officiel (upstream), mais BFS est un patch maintenu par Con Kolivas, donc rien d'officiel et même rejeté (pour diverses raisons) par Linus il y a plusieurs années.

    Ce sont deux "choses" totalement différentes.

    Hop,
    Moi.

  • [^] # Re: GNU/Screen depuis toujours puis tmux

    Posté par  . En réponse au sondage Votre multiplexeur de terminal favori. Évalué à 5.

    Yop,

    je ne suis pas fan des concepts de pane et window

    Mon application principale est un terminal (guake) en plein écran : pas de décoration de
    fenêtres, juste un gros patté noir plein écran de 130×426 (stty size). J'utilise tmux
    pour le splitter en 4 colonnes de 106 de large, et chaque colonne en deux blocs verticaux,
    sur plusieurs fenêtres comme ça :

    Fenêtre 1:                 Fenêtre 2 et au delà:
    +---------------+-------+  +-----+-----+-----+-----+
    | mutt          | irssi |  | vim | vim | vim | git |
    |               |       |  |     |     |     |     |
    |               |       |  +-----+-----+     +-----+
    |               |       |  | vim | vim |     | make|
    |               |       |  |     |     |     |     |
    +---------------+-------+  +-----+-----+-----+-----+
    

    Fenêtre 1, deux blocs pour le mail (avec mutt, 129x255) et IRC (avec irssi, 128x170).
    Les fenêtres 2 et au-delà me servent pour mes devs, une par "projet" FLOSS sur lesquels
    j'interviens ; chaque panneau fait 64×106, sauf le grand qui fait 129×105. Par ailleurs,
    il est assez facile de remapper les raccourcis sur des combos utiles (Ctrl+flêches
    H/B/G/D pour changer de panneau, Alt+flêches G/D pour changes de fenêtre). Parfois, la
    dispo change légèrement (i.e. man pleine hauteur à gauche), c'est hyper simple.

    C'est une des raisons pour lesquelles j'utilise tmux : pouvoir avoir plusieurs terminaux
    à l'écran et ne pas quitter mon clavier (même pour le copier/coller). Et aussi, comme
    déjà dit, résister à la déconnexion réseau quand sur un serveur via ssh.

    Bref, le combo {guake plein-écran,tmux}, c'est vraiment le pieds.

    le raccourci à "unbind" d'urgence, le fameux ctrl-b ctrl-o qui s'active tout seul

    Tu peux ajuster assez simplement les combos touches en éditant ~/.tmux.conf. Perso,
    j'ai désactivé tous les combos existants pour n'utiliser que les miens:
    http://code.bulix.org/epimkp-105119?raw

    Le seul truc qui me manque avec tmux, c'est de pouvoir connecter une ou plusieurs fenêtres
    sur un tmux qui tourne à distance sur un serveur, et comme ça n'avoir qu'une seule session
    tmux pour accéder à plusieurs machines… :-/

    Hop,
    Moi.

  • # Un air de déjà-vu...

    Posté par  . En réponse au journal Fourmilière artificielle: Intelligine. Évalué à 5.

    J'ai des connaissances qui ont travaillé sur le sujet vers la fin du 20ème siècle : http://www.enib.fr/~harrouet/Data/oRis/these.pdf

    Un des cas concrets était justement de faire faire des tas à des fourmis. D'autres plus intéressants consistaient à simuler le système immunitaire humain pour certaines maladies.

    Hop,
    Moi.

  • # C'est simple, non ?

    Posté par  . En réponse au journal Electronic Real World : Internet Packet Life. Évalué à 4.

    Entreprise louable, s'il en est.

    Ceci dit, ça me fait penser à un post de Jean-Baptiste “JBQ” Quéru : Dizzying but invisible depth (dans la lange de Shakespeare, mais très instructif). En conclusion : non, ce n'est pas si simple…

    Hop,
    Moi.

  • # $(SHELL)

    Posté par  . En réponse au journal Utiliser Python comme interpréteur dans vos Makefile. Évalué à 10. Dernière modification le 12 janvier 2016 à 19:12.

    Bonsoir,

    Pourquoi réinventer la roue, alors que GNU make permet déjà de spécifier le shell à utiliser :

    SHELL = /usr/bin/env python
    all:
        @print "Hello World!"
    

    Ref. manuel de GNU make

    Hop,
    Moi.

  • # mutt

    Posté par  . En réponse au sondage Les courriels en HTML.... Évalué à 5.

    Bon, le HTML avec mutt, au moins, je peux dire à mes correspondants:

    "désolé, j'ai rien compris à ton message…".

    Sinon, pour de vrai, lorsque je reçois mes mails, je les passent dans une moulinette qui vérifie si le mail est en HTML, auquel cas, si il n'y pas de multipart text/plain, en rajoute une avec le rendu du HTML par links2.

    Ça marche assez bien au final, et je ne redoute plus de souffrir d'epilepsie lorsque je lis mes mails ! ;-]

    Hop,
    Moi.

  • [^] # Re: Merci pour le lien ymorin ;)

    Posté par  . En réponse au message Comment supprimer le compte Guest sous Kubuntu ?. Évalué à 3.

    Ton lien Google est en Anglais […]
    […] affiner la recherche pour pouvoir enfin trouver une solution qui marche sous Kubuntu.

    Oui, alors, je sais pas si on a le même internet, mais ceci:

    http://lmgtfy.com/?q=supprimer+le+compte+guest+sous+kubuntu

    me renvoie en premier et second liens (hormis ce journal) deux articles en français dont le premier est spécifique à Kubuntu, et le second générique pour toutes les distribution *ubuntu (donc Kubuntu inclus) :

    http://bassia.over-blog.com/article-supprimer-le-compte-guest-sous-kubuntu-13-04-119356939.html
    http://doc.ubuntu-fr.org/lightdm

    En mettant un peu de bonne volonté ;-)

    Hop,
    Moi.

  • # LMGTFY...

    Posté par  . En réponse au message Comment supprimer le compte Guest sous Kubuntu ?. Évalué à 3.

  • # Vraiment en shell

    Posté par  . En réponse au journal Lire de fichiers de configuration depuis un script shell. Évalué à 4.

    Ou alors, en restant vraiment en shell (bash 4.0+):

    #------------------------------------------------------------------------------
    # Parses a .ini file
    #
    # License:
    #   GPLv2
    #
    # Parse the specified .ini file, and stores the results in caller-supplied
    # variable arrays:
    #
    # * +$sections[]+: indexed array
    # * +$variables[]+: associative array
    # * +$values[]+: associative array
    # * +$lines[]+: associative array
    #
    # Those variables will be filled as thus:
    #
    #     sections=( [0]='section-0' [1]='section-1' )
    #     variables=( ['section-0']='var-0,var-1' ['section-1']='var-10,var-11' [...] )
    #     values=( ['section-0:var-0']='value-0-0' ['section-1:var-10']='value-1-10' [...] )
    #     lines=( ['section-0']='file:27' ['section-1:var-10']='file:42' [...] )
    #
    # Note that the accepted syntax is a subset of the .ini format, where only
    # '=' is accepted to assign variables, while ':' is not accepted.
    #
    # Param:
    #   $1: .ini file to parse
    #
    # Return:
    #   $sections[] : the list of sections, one section per array index
    #   $variables[]: the comma-separated list of variables for a section,
    #                 indexed by the name of the section
    #   $values[]   : the value of a variable in a section, indexed by the
    #                 'section:variable' tuple
    #   $lines[]    : the 'file:line' a section or variable was defined on,
    #                 indexed by the 'section' name, or the 'section:variable'
    #                 tuple
    #
    parse_ini() {
        local ini_file="${1}"
        local line var val i
        local cur_section
    
        i=0
        while read line; do
            : $((i++))
    
            # Mangle the line:
            # - get rid of comments
            # - get rid of spaces around the first '='
            line="$( sed -r -e 's/[[:space:]]*#.*$//; //d;'                     \
                            -e 's/=/ = /;' -e 's/[[:space:]]+=[[:space:]]+/=/'  \
                            <<<"${line}" )"
    
            case "${line}" in
            "") continue;;
            '['*']')
                cur_section="$( sed -r -e 's/[][]//g;' <<<"${line}" )"
                sections+=( "${cur_section}" )
                lines+=( ["${cur_section}"]="${ini_file}:${i}" )
                continue
            ;;
            ?*=*)   ;;
            *)      printf "malformed entry '%s' in '%s:%d'\n" "${line}" "${ini_file}" ${i} >&2; return 1;;
            esac
    
            var="${line%%=*}"
            eval val="${line#*=}"
            variables+=( ["${cur_section}"]=",${var}" )
            values+=( ["${cur_section}:${var}"]="${val}" )
            lines+=( ["${cur_section}:${var}"]="${ini_file}:${i}" )
        done <"${ini_file}"
    }

    Hop,
    Moi.

  • # guake en full-screen + tmux

    Posté par  . En réponse au sondage Quel terminal utilisez-vous ?. Évalué à 2.

    J'utilise maintenant quasi-exclusivement guake en plein écran, avec tmux dedans.

    Première fenêtre ouverte verticalement coupée en deux sur mes réseaux sociaux : mutt à gauche et irssi à droite.

    Les fenêtre suivantes sont coupées en 'H' (2 panneaux demi-hauteur à gauche et à droite, un panneau pleine hauteur au milieu) pour faire mes devs.

    Hop,
    Moi.

  • [^] # Re: Versionner tout ${HOME}: moyen...

    Posté par  . En réponse au journal Gérer ses fichiers de config avec git. Évalué à 3.

    Bon, puisqu'on s'est mis à parler prompt, voici le mien.

    Au final, ça ressemble à ça (sur un terminal qui n'affiche pas l'unicode, puis sur un terminal qui affiche l'unicode) sur la largeur complète de la ligne du terminal :

    ,---[~/dev/buildroot±master:bee5ff6!×]------------[1.27|42%v]-------[20150417.181043]---
    `-[ymorin@there:pts/2|ret=4]----> _
    
    ╭───┤~/dev/buildroot±master:bee5ff6!×├────────────┤1.27|42%↓├───────┤20150417.181043├───
    ╰─┤ymorin@there:pts/2|ret=4├────> _
    

    Les infos VCS sont affichées pour git, Mercurial et Subversion ; on y trouve: la branche, le changeset, le statut (fichiers modifiés, non-trackés, dans l'index, stash en cours, en fonction du VCS).

    Les diverses infos incluent par exemple le statut de la batterie, le load average, la date courante, le user et le hostname, le tty (ainsi que la session tmux/screen courante), le code de retour de la dernière commande si non nul, etc…

    Il y a différentes couleurs pour chaque partie, avec les infos importantes en rouge (VCS statut, batterie faible, dernier $? non nul … ), en bleu pour CWD, vert foncé pour la branche VCS, orange pour le changeset courant, vert clair pour le username@host, etc … Il y a trois thèmes de couleurs dispos : green, red et mono.

    Notes : le code est pas très beau et la doc pas complètement à jour, désolé, mais ça a évolué pas mal en presque 9 ans …

    Ceci dit, si quelqu'un sait comment connaître la largeur d'un glyphe, je suis preneur…

    Hop,
    Moi.

  • [^] # Re: Attention, risque sympatique.

    Posté par  . En réponse au journal Gérer ses fichiers de config avec git. Évalué à 1.

    À moins que tu ne fasses régulièrement des git clean -x ?

    Oui, quand on développe sur des packages pas encore très propres, par exemple. Je fait même assez souvent des git clean -dx pour vraiment tout virer (sous-répertoires compris).

    Hop,
    Moi.

  • [^] # Re: Attention, risque sympatique.

    Posté par  . En réponse au journal Gérer ses fichiers de config avec git. Évalué à 2.

    Marrant ça…
    Ça me rappelle vaguement quelque chose… ;-)

  • # Versionner tout ${HOME}: moyen...

    Posté par  . En réponse au journal Gérer ses fichiers de config avec git. Évalué à 10.

    B'soir !

    Au début, je versionnais tout mon ${HOME}. Et puis j'ai fait une bêtise… Le problème de versionner tout ~/, c'est lorsque l'on fait aussi du dévelopement dans un sous-dossier. Par exemple chez moi, tous mes dévs sont dans ~/dev/.

    Et du coup, il devient facile d'exécuter une commande git et que le dépôt ~/ soit utilisé alors qu'on croyait être dans un répertoire de dev ; ou l'inverse. Ou encore utiliser git au lieu de hg ; ou l'inverse.

    Maintenant, mon ~/ n'est plus un dépôt git, mais ~/.home/ l'est. Et tout ce que je veux versionner dans ~/ je le déplace dans ~/.home/ et crée un lien symbolique (il y a un script pour ça).

    Enfin, le dépôt est pushé vers mon serveur. Quand je veux déployer sur une autre machine, je clone le dépôt depuis mon serveur, lance le script qui crée les liens symboliques.

    Il reste un peu de config locale (e.g. les proxys à utiliser si différents, générer les clés ssh, etc…).

    Voilà. C'est pas parfait, ni absolument propre, mais ça fait l'affaire.

    Hop,
    Moi.

  • [^] # Re: Weboob

    Posté par  . En réponse au journal Pourquoi ce nom ?. Évalué à 10.

    Dans le même registre :

    gigolo, a GIO/GVfs filesystem connection manager, named this way because as a gigolo, it mounts what it is told to
    
  • [^] # Re: Linux power!

    Posté par  . En réponse à la dépêche Vulnérabilité dans Git et Mercurial sur certains systèmes de fichiers (FAT, NTFS, HFS+, etc.). Évalué à 9.

    menton.jpg et Menton.jpg ont 2 significations très différentes

    Ou plutôt: marguerite.jpg et Marguerite.jpg; le premier est une photo de la fleur, le second de ma grand-mère.

    Hop,
    Moi.