liberforce a écrit 4744 commentaires

  • [^] # Re: C'est vendredi ...

    Posté par  (site web personnel, Mastodon) . En réponse au journal Générateur de site web statique. Évalué à 2.

    par contre grâce à ton lien je viens de découvrir jinja2+pdfkit pour générer du PDF

    Tu as aussi moyen d'utiliser pandoc pour générer du PDF (et bien d'autres formats).

  • [^] # Re: C'est vendredi ...

    Posté par  (site web personnel, Mastodon) . En réponse au journal Générateur de site web statique. Évalué à 2.

    Petit feedback rapide: sur ta liste d'expériences, les dates sont au format "année de fin - année de début". J'ai toujours vu l'inverse, donc sans doute un point à corriger. Un bug dans le template peut être ?

  • [^] # Re: Mandriva me manque

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Bienvenue Mageia 7. Évalué à 3.

    Des années sous Mageia (et Mandriva, et MandrakeLinux), et je ne me rappelle même plus la dernière fois où j'ai eu un kernel panic… J'ai eu des soucis de base RPM corrompue avec Mageia 5, mais c'est c'est le plus gros soucis depuis un paquet d'années…

  • [^] # Re: C'est vendredi ...

    Posté par  (site web personnel, Mastodon) . En réponse au journal Générateur de site web statique. Évalué à 2.

    Je te conseille de lire cette page:
    http://wtbarnes.github.io/2016/08/28/cv-howto/

    1. créer un fichier structurée contenant les donnée à mettre en forme (en JSON, en YAML…)
    2. créer des templates Jinja2 vers différents formats (HTML, Markdown, etc.).
    3. injecter les données dans le template de ton choix avec Jinja2
    4. Profit.

    Avec secretary tu peux même utiliser un fichier au format odt pour générer ton CV…

    Note que je parle de CV, mais ça marche aussi pour générer des release notes ;)

  • [^] # Re: Ansible

    Posté par  (site web personnel, Mastodon) . En réponse au journal Faciliter la configuration d'un ordinateur portable (ou fixe) sous Debian GNU/Linux 10 (Buster). Évalué à 3. Dernière modification le 20 juin 2019 à 14:49.

    • ansible réclame une passe après installation (donc installer Ansible) et il faut pouvoir récupérer facilement le script (pas forcément compliqué, cela dit)

    Ansible n'a besoin d'être installée que sur la machine qui exécute le script, pas la machine cible. Le cas où il n'y a qu'une machine, tu as effectivement besoin d'installer ansible, mais dans le cas où tu as plusieurs machines à administrer (ordi fixe + ordi portable par exemple), tu peux appliquer ta configuration sur tes deux machines en une seule passe, et cela potentiellement à partir d'une troisième machine.

    Comme tu le dis, ansible te permet aussi de gérer l'idempotence: tu lances plusieurs fois ton script ansible tu arrives dans le même état final F. Tu changes la config de la machine cible, relances ton script ansible → tu arrives encore dans l'état F, même si l'état initial était différent. Ansible te permet de te concentrer sur l'état final à atteindre. Après ce n'est pas une solution magique, mais globalement ça fait le job, et c'est réplicable d'une machine à une autre.

  • [^] # Re: Ansible

    Posté par  (site web personnel, Mastodon) . En réponse au journal Faciliter la configuration d'un ordinateur portable (ou fixe) sous Debian GNU/Linux 10 (Buster). Évalué à 10.

    De la config pour vim, ce n'est pas ce qui manque, c'est plutôt l'inverse. Il y a des gens qui partagent des .vimrc énormes adaptés à leur workflow, et impossible pour le profane de se les approprier. Mon conseil: fais de l'additif. Crée ta config à partir de ce que tu peux trouver à droite et à gauche, mais ne pars pas d'une grosse config existante pour l'édulcorer.

    Après plusieurs années d'utilisation de vim "à la vi", je m'y suis mis plus sérieusement.
    Les ressources que j'ai utilisées et que je conseille:
    - l'appli "Vim Master" android avec des quiz de tous niveaux. Même quand tu te trompes, comme on te donne la bonne réponse et ce que chaque réponse a comme effet, tu as moyen de comprendre pourquoi tu t'es trompé et découvrir des nouvelles fonctionnalités.
    - Vimcasts qui te donnera plein de pistes de personnalisation, par l'auteur de "Practical Vim" (que je recommande aussi). Le mieux est de reprendre toutes les vidéos (ou les transcriptions) dans l'ordre chronologique.
    - Une conférence de Max Cantor qui montre déjà plein de choses qu'on peut faire sans avoir besoin de plugins, juste en connaissant les fonctionnalités présentes de base dans vim.
    - Cet article sur comment découper et structurer son .vim plutôt qu'avoir un vimrc de plusieurs centaines de lignes (et d'autres articles)

  • # ansible

    Posté par  (site web personnel, Mastodon) . En réponse au journal Faciliter la configuration d'un ordinateur portable (ou fixe) sous Debian GNU/Linux 10 (Buster). Évalué à 10.

    Ce type d'automatisation, c'est un boulot pour ansible.

    Pour mon setup vim, j'utilise un dépôt git à part, et je fais juste un lien symbolique vers le dossier en question vers $HOME/.vim. Pas besoin de fichier vimrc à côté ($HOME/.vimrc), car vim lit aussi $HOME/.vim/vimrc, ainsi toute la config vim tient dans un unique dossier, la rendant facilement déployable sur une nouvelle machine.

  • [^] # Re: J'y étais

    Posté par  (site web personnel, Mastodon) . En réponse au journal Les 10 ans d'Hadopi. Évalué à 7.

    J'étais à la manif anti-HADOPI (la seule manif de ma vie), et j'ai pu y voir (ente autres) Nicolas Dupont-Aignan. Qui nous disait qu'il ne comprenait pas du tout ces choses là, mais que son fils lui avait expliqué alors il était venu nous rejoindre. 10 ans après c'est toujours autant un opportuniste.

  • [^] # Re: linux mint

    Posté par  (site web personnel, Mastodon) . En réponse au journal Logithèque-logiciel pour débutants. Évalué à 3. Dernière modification le 12 juin 2019 à 12:21.

    Vous n'utilisez pas la même aplication, ce que tu vois, c'est gnome-software je pense (Logiciels), là où il doit lancer la logithèque Ubuntu (ou équivalent sur Mint).

  • # Ce que j'aurais tenté

    Posté par  (site web personnel, Mastodon) . En réponse au journal Moi, expert C++, j'abandonne le C++. Évalué à 2.

    Je trouve surtout que le mainteneur principal a supprimé les fichiers CMakeLists.txt et meson.build en 2017.
    Et celui-ci semble envoyer bouler les contributeurs proposant la compatibilité avec CMake, supprime le titre des Pull Request et on trouve même des commentaires supprimés.

    Crée le meson.build et ajoute le à la wrapDB. Il restera extérieur au projet mais utilisable avec un simple fichier descriptif. Le build system, de même que le packaging, n'a pas besoin de s'intégrer aux forceps dans un logiciel. Le mainteneur définit des outils par défaut, idéalement pas trop nul ni trop inconnus, mais ne peut intégrer tous les systèmes de l'univers. Je comprends donc qu'il refuse des patchs.

    Ensuite ton IDE ne gère pas Meson… Bin je te dirais: pourquoi chercher à gérer un build system avec un IDE qui va essayer de faire des trucs automatiques. Apprends à utiliser Meson et à éditer un meson.build, tu ne devrais pas avoir à choisir ton build system d'après ton IDE, ni choisir ton IDE d'après la compatibilité avec ton build system.

    Pour finir, pour avoir travaillé avec Conan quelques mois, il permet de faire du packaging de manière assez simple, est assez extensible, a une bonne quantité de logiciels déjà prépackagés, gère Meson et CMake… Si tu veux plus de flexibilité que ce que t'offre la wrapdb de Meson, tu peux facilement ajouter ton fichier meson ou cmake pour patcher le paquet avant de le builder.

    Oui c'est plus long que faire un pip install, mais le problème vient du fait que ce n'est pas packagé (ou mal, cf vcpkg), pas du fait que c'est compliqué à installer une fois packagé. Si tu fais le boulot une fois c'est facilement partageable et réutilisable, pour que d'autres n'aient pas à s'arracher les cheveux comme toi. Il suffit de proposer tes modifications upstream à Conan et à la wrapDB de Meson.

  • [^] # Re: rpath sous Windows

    Posté par  (site web personnel, Mastodon) . En réponse au journal Retour d'expérience sur l'empaquetage d'une bibliothèque native pour Python. Évalué à 3.

    Dans les commentaires, je viens de voir qu'ils ont ouvert upstream une proposition pour la gestion de rpath:
    https://developercommunity.visualstudio.com/idea/566616/support-rpath-for-binaries-during-development.html

    Vote et soutiens-la si le sujet t'intéresse :)

  • # rpath sous Windows

    Posté par  (site web personnel, Mastodon) . En réponse au journal Retour d'expérience sur l'empaquetage d'une bibliothèque native pour Python. Évalué à 3. Dernière modification le 27 mai 2019 à 11:10.

    Bob connait ses gammes, et utilises l'option -rpath de l'éditeur de lien pour enregistrer dans sa lib la localisation de la libopenblas.so. Malheureusement, il n'y a pas de mécanisme équivalent sous Windows !

    Un article sur le sujet qui pourrait t'intéresser:
    http://nibblestew.blogspot.com/2019/05/emulating-rpath-on-windows-via-binary.html

    En gros on peut utiliser rpath sous Windows avec un bon gros hack en patchant le binaire généré. Ça a l'air crade dit comme ça, mais ça a l'air d'être pas mal au niveau compatibilité.

  • [^] # Re: nombre de cartes

    Posté par  (site web personnel, Mastodon) . En réponse au journal Magic: the Gathering, le problème de l'arrêt, et une inférence un peu rapide. Évalué à 4.

  • [^] # Re: Vraiment surprenant ?

    Posté par  (site web personnel, Mastodon) . En réponse au journal Magic: the Gathering, le problème de l'arrêt, et une inférence un peu rapide. Évalué à 4.

    À vrai dire, les articles de vulgarisation semblent s'être embalés, cf la mise à jour en fin de l'article de kotaku:
    https://kotaku.com/magic-the-gathering-is-so-complex-it-could-stump-a-com-1834623872

    Shortly after publication, Alex Churchill, one of the authors of the paper, responded to Kotaku in an email with some further clarifications on the group’s findings.

    “What we’ve proven is that the operation of “finding the best move in a game of Magic,” in the worst case, cannot be computed,” he said. “There are certain circumstances, even though they’re very contrived, where it’s proven that no algorithm can find whether there exists a winning move. In fact, since we eliminate all player choice, we’ve proved something slightly stronger: that it’s impossible in the general case for an algorithm to look at a board state and see whether it’s possible for the game to end at all.”

    He went on:

    “This is what computer scientists care about when they talk about the complexity of an algorithm. The algorithm might be easy to solve in almost all cases, but we’ve shown that the worst case is as hard as it can be.”

    “This has very little implication for playing the game in practice, but it does have takeaways for potential AI designers. Probably anyone who was going to write an AI for Magic would not have made the AI choose its next move by trying to exhaustively compute all possible consequences of the current board state - that’d be crazy. They’d do it using heuristics, rules of thumb that give a best guess about how to play. Our paper just proves that the exhaustive computation approach is definitely not the way to go because it’s actually impossible (in some cases).”

    Il semble que le seul but de l'étude était de dire qu'il y a des cas où on ne sait pas dire qui va gagner ou pas, et si la partie va finir ou pas. Ils ont fait leur test en format legacy, mais rien qu'en standard, qui possède pourtant beaucoup moins de cartes, il y a le deck Wilderness Reclamation où tu peux faire une boucle infinie grâce à l'infâme Nexus of Fate. Cette boucle te permettra de gagner sous certaines conditions, et dans les autres tu peux te retrouver à jouer un nombre de tours infinis. En tournoi papier il y aura sans doute un avertissement pour "slow play" (équivalent des pénalités pour non combativité dans les arts martiaux), mais certains noobs ne maîtrisant pas le deck le jouent sur Magic Arena (où il n'y a pas de pénalités, juste un timer qui se recharge) et se retrouvent donc à attendre que leur adversaire concèdent la partie d'ennui. La riposte trouvée a été de scripter l'intéraction et de juste dérouler le script et partir faire autre chose quand on est face à ce type d'adversaire.

    D'autres decks comme le deck Eggs sont notoirement connus pour être très longs et incertains dans leur manière de partir en combo (combo off), car tu ne sais pas si tu vas converger et réussir à gagner ou pas.

  • [^] # Re: nombre de cartes

    Posté par  (site web personnel, Mastodon) . En réponse au journal Magic: the Gathering, le problème de l'arrêt, et une inférence un peu rapide. Évalué à 3.

    Epicure Of Blood et Exquisite Blood n'ont pas vraiment le même effet… La cause de l'un est la consséquence de l'autre (et inversement).

  • [^] # Re: nombre de cartes

    Posté par  (site web personnel, Mastodon) . En réponse au journal Magic: the Gathering, le problème de l'arrêt, et une inférence un peu rapide. Évalué à 3.

    La pile c'est quand même pas nouveau, j'ai commencé à jouer en 1995, et ça existait déjà, alors que le jeu date de 1993. Les règles se sont précisées mais il y a surtout eu un changement de règle avec l'arrivée de la 6ème édition je crois, qui faisait que les blessures de combat passaient par la pile. Cela avait des effets de bord en terme de cohérence. Quelques années plus tard les règles ont à nouveau changé pour revenir comme avant sur cet aspect. Dans les anciennes règles, on pouvait aussi engager un artefact pour le désactiver.

    Pour ce qui est de la formulation, oui ça s'est bien amélioré. Ils ont beaucoup utilisé de mots-clés pour définir des mécaniques existantes, ce qui permet de savoir assez rapidement ce que fait une carte. La contrepartie c'est qu'il y a un paquet de mots-clés.

    Il faut aussi savoir que ce qui est écrit sur la carte ne fait pas forcément foi: c'est le texte Oracle de la carte qui fait foi. Certaines anciennes cartes ont ainsi subi des modifications, notamment au niveau des types. Avec l'apparition récente du type de créature "dinosaure", certaines anciennes cartes ont donc vu leur type mis à jour, parce qu'elles étaient plus conforme à ce qu'elles étaient vraiment. Exemple: Fongosaure, Raptor Putride.

  • [^] # Re: nombre de cartes

    Posté par  (site web personnel, Mastodon) . En réponse au journal Magic: the Gathering, le problème de l'arrêt, et une inférence un peu rapide. Évalué à 3.

    Les cartes rééditées "à l'identique" (i.e. avec exactement les mêmes caractéristiques sauf le nom) sont le plus souvent des communes sans valeur. Les rééditions "similaires" de cartes plus rares ont des modifications fonctionnelles qui font que ce n'est pas la même carte.

  • [^] # Re: nombre de cartes

    Posté par  (site web personnel, Mastodon) . En réponse au journal Magic: the Gathering, le problème de l'arrêt, et une inférence un peu rapide. Évalué à 4.

    Il est important de ne pas confondre le nom de la carte, et le type de la carte. "+1/+1 à tous les gobelins" désigne un type de créature, ce qui est indépendant du nom de la carte.

    Les cartes qui font référence au nom complet d'une carte sont par exemple pour lever une limitation comme le nombre maximal de cartes portant ce nom dans un jeu, ou permettent d'aller chercher une carte avec un nom spécifique, donnent un bonus spécial, ou permettent de créer un objet permanent qu'il faut alors nommer (pour ceux que ça intéresse, voici une liste plus exhaustive).

    Quand une carte est rééditée sous un autre nom, c'est plus souvent pour des contraintes d'homogénéité. Il y a une histoire derrière chaque extension, avec parfois des livres édités spécifiquement pour raconter cette histoire. Cette histoire décrit un multivers, avec différents plans de réalité, et même si certains personnages (qu'on nomme des planeswalkers, mais j'aime bien le terme français d'« arpenteur »), peuvent passer d'un plan à l'autre (transplaner), d'autres personnages sont ancrés dans un plan particulier. Ainsi il est très fréquent que le nom d'un personnage apparaisse dans le nom d'une carte, et ce nom étant souvent associé à un plan, situer l'action dans un autre plan nécessite de renommer la carte.

    Parfois des cartes sont aussi extrêmement similaires avec juste un changement mineur, comme un type de créature: On peut avoir des créatures identiques en tout point, sauf qu'une est un ours, l'autre un grand singe, l'autre un elfe et éclaireur, l'autre un elfe et guerrier. Cela permet d'avoir des synergies dans les jeux qui tirent parti de ces aspects (decks tribaux).

  • [^] # Re: nombre de cartes

    Posté par  (site web personnel, Mastodon) . En réponse au journal Magic: the Gathering, le problème de l'arrêt, et une inférence un peu rapide. Évalué à 3. Dernière modification le 10 mai 2019 à 18:19.

    Il faut voir aussi que le jeux n'aide pas trop, sachant qu'il y a des cartes à deux faces, à deux sens, avec deux cartes sur une face, ou à construire avec deux cartes.

  • [^] # Re: nombre de cartes

    Posté par  (site web personnel, Mastodon) . En réponse au journal Magic: the Gathering, le problème de l'arrêt, et une inférence un peu rapide. Évalué à 3.

    Wikipédia me contredit, et effectivement il doit y avoir un soucis avec ma requête pour le nombre total de cartes toutes éditions confondues, mais les autres chiffres doivent être corrects.

  • [^] # Re: nombre de cartes

    Posté par  (site web personnel, Mastodon) . En réponse au journal Magic: the Gathering, le problème de l'arrêt, et une inférence un peu rapide. Évalué à 3.

    19036 cartes à ce jour.
    18574 cartes quand on exclut les sets "humoristiques" (unglued, unhinged, unstable)
    18466 cartes valides dans le format "legacy", valide en tournoi.
    1764 cartes valides dans le format "standard", valide en tournoi.

    Les nombres ci dessus sont des cartes avec un nom uniques: les variantes "foil" (ce que tu appelles shiny), ainsi que les rééditions d'une même carte sont comptées comme une seul carte. En revanche, certaines cartes assez basiques sont rééditées à l'identique en termes de capacités, mais avec un nom différent pour mieux coller à l'édition dont fait partie la carte. N'ayant pas le même nom, elles sont considérées comme des cates différentes.

  • [^] # Re: Fibre écologique

    Posté par  (site web personnel, Mastodon) . En réponse au journal Mon nouveau smartphone Android dégooglisé. Évalué à 3. Dernière modification le 30 avril 2019 à 10:46.

    Je suis passé par la FNAC marketplace pour un achat d'ordinateur d'occasion. Pour la faire courte, j'ai eu des problèmes avec l'ordinateur en question, et je suis tombé sur une société qui est en France, mais quasi-impossible à joindre par téléphone. On m'a baladé pendant 6 mois, ils ont des adresses différentes qui font que mon premier recommandé est revenu à l'expéditeur et qu'ils n'ont jamais répondu au recommandé suivant alors qu'on m'avait promis par téléphone un remplacement. Je déconseille donc très très fortement tout achat chez ORDI2PRO (sic).

    Je suis passé par backmarket pour en racheter un, et je n'ai eu aucun soucis, je ne peux donc pas évaluer leur SAV. J'ai cependant fait un achat puis annulation, puis rachat, et j'ai eu largement une meilleure expérience sur backmarket.

  • [^] # Re: man 2 read

    Posté par  (site web personnel, Mastodon) . En réponse au message question sur strace. Évalué à 3. Dernière modification le 26 avril 2019 à 12:27.

    Tu peux utiliser od pour le vérifier: ici je lis les 32 premiers octets du fichier en question, les caractères non-imprimables étant affichés sous leur forme en octal:

    od -c -N 32 /lib/x86_64-linux-gnu/libc.so.6
    
    0000000 177   E   L   F 002 001 001 003  \0  \0  \0  \0  \0  \0  \0  \0
    0000020 003  \0   >  \0 001  \0  \0  \0 260 034 002  \0  \0  \0  \0  \0
    0000040
    

    La même chose en hexadécimal:

    od -t x1 -N 32 /lib/x86_64-linux-gnu/libc.so.6
    
    0000000 7f 45 4c 46 02 01 01 03 00 00 00 00 00 00 00 00
    0000020 03 00 3e 00 01 00 00 00 b0 1c 02 00 00 00 00 00
    0000040
    
  • # man 2 read

    Posté par  (site web personnel, Mastodon) . En réponse au message question sur strace. Évalué à 3.

    http://codewiki.wikidot.com/c:system-calls:read

    Le 2ème paramètre, buf est le buffer où tu vas stocker les données lues. strace ne fait que t'afficher le contenu de ce buffer (après l'appel il me semble, à vérifier). Donc je dirais que la chaine que tu trouves bizarre correspond aux premiers octets de la libc que tu es en train de charger.

  • [^] # Re: Parinux

    Posté par  (site web personnel, Mastodon) . En réponse au journal Mise à jour parties pour Mageia 7. Évalué à 2. Dernière modification le 12 avril 2019 à 10:38.

    Certes, mais ça ne répond pas du tout à ma question ;-)
    J'ai aussi fait une présentation sur la configuration de GNOME à la dernière install party Ubuntu à la Cité des Sciences (présentation faite sous Mageia d'ailleurs, c'était sur mon portable perso). Cependant ce serait super d'avoir l'occasion de présenter d'autres distributions là bas pour ceux qui sont déjà familiers du lieu, histoire montrer que GNU/Linux ce n'est pas qu'Ubuntu.