jyes a écrit 510 commentaires

  • [^] # Re: Il faut savoir troller bordel !

    Posté par (page perso) . En réponse au journal Go et Rust, lequel est le remplaçant du C ?. Évalué à 3 (+1/-0).

    Oui et c'est facile: vim est interactif

    On peut aussi l’appeler avec la commande ex ou vim -e qui en fait un très bon remplaçant de ed.

  • [^] # Re: Analyse

    Posté par (page perso) . En réponse à la page de wiki Qu'est-ce que captive.apple.com ?. Évalué à 3 (+1/-0). Dernière modification le 07/09/18 à 09:26.

    Après lecture du code d’Android (8.0.0_r4), je contredis mon intuition précédente : une réponse locale est acceptée.

    Par contre, pour qu’une réponse soit valide il faut qu’elle retourne un code HTTP 204 ou un code HTTP 200 à condition que le contenu soit vide. Or le serveur donné en exemple retourne 200 et un contenu HTML qui affiche « Success ». C’est donc la réponse du serveur local qui ne fonctionne pas.

    Il y a une exception à cela, c’est si la connection utilise un script PAC, auquel cas c’est l’adresse du proxy qui est testée, et s’il retourne un code 200, la réponse est valide.

    L’erreur ne doit donc pas être dans la configuration réseau, mais à la ligne 7 du script captive_alternative.bash.

    Je n’avais pas précisé ça dans ma réponse précédente, mais le service qui fonctionne chez moi est bien réglé pour retourner un code 204 (j’avais déjà un nginx sous la main et n’ai donc pas utilisé le script indiqué sur la page wiki).

  • [^] # Re: Petite question ...

    Posté par (page perso) . En réponse à la dépêche Linux capabilities : se passer des commandes su et sudo. Évalué à 2 (+1/-1).

    Donner des privilèges à un executable pourquoi pas […] mais le problème c'est que cela semble lié à l'éxécutable

    Ce n’est pas la solution présentée dans cette dépêche. Ici, ce qui est présenté; c’est une alternative à su/sudo qui repose sur les « capabilities » et rend ce mécanisme de sécurité utilisable relativement facilement. C’est justement une réponse aux limitations que tu soulèves (et c’est expliqué dans la dépêche).

  • [^] # Re: Analyse

    Posté par (page perso) . En réponse à la page de wiki Qu'est-ce que captive.apple.com ?. Évalué à 3 (+1/-0). Dernière modification le 06/09/18 à 11:14.

    Pour mettre en place une alternative, ne vaut il mieux pas changer les réglages du téléphone que de rediriger via le DNS tous les services connus de détection de portail captif vers un serveur local ? Ici une doc plutôt bien fichue: https://android.stackexchange.com/questions/186993/captive-portal-parameters. Il y a le service Apple mentionné dans la page wiki, mais Google a aussi les siens ainsi que Qualcomm et plein d’autres.

    Suite à la lecture de cette page wiki, j’ai créé mon propre service et l’ai utilisé dans mon téléphone, c’est sûrement plus efficace que le contournement DNS.

    Par contre, mon service est accessible via une IP publique, je ne serais pas surpris qu’Android refuse explicitement les adresses privées, justement pour ne pas faire croire à l’utilisateur qu’il y a accès à Internet quand, en fait, ce n’est qu’une machine locale qui répond. Accepter une réponse locale serait à l’opposé exact de ce à quoi est censé servir la détection de portail captif.

  • [^] # Re: J’ai testé MALT

    Posté par (page perso) . En réponse à la dépêche Profileurs mémoire MALT et NUMAPROF. Évalué à 4 (+2/-0). Dernière modification le 05/09/18 à 10:07.

    Juste pour compléter, je ne sais pas ce qui posait problème hier, mais j’utilisais un script de compilation avec beaucoup trop d’options et j’ai du me mélanger les pinceaux. Mes essais d’aujourd’hui m’ont montré que MALT profile bien mon code avec tous les niveaux de compilation.

    Du coup, j’ai pu constater que l’option "-fstack-arrays" faisait disparaître le "malloc" étonnant. Par contre, vu ce que fait cette option, reste que la copie inutile du tableau doit encore avoir lieu, elle est juste cachée, mais ça, ce n’est pas du ressort de MALT.

  • [^] # Re: J’ai testé MALT

    Posté par (page perso) . En réponse à la dépêche Profileurs mémoire MALT et NUMAPROF. Évalué à 3 (+1/-0).

    Merci pour cette réponse détaillée !

    Je confirme que les allocations étonnantes apparaissent lors du passage d’une « allocatable array » comme paramètre d’une fonction qui attend une « assumed-shape array (intent(in)) ». Normalement, il n’y a pas de raison de faire une copie, mais il semble bien que ce soit GFortran qui en ajoute une (version 6.3.0, je devrais peut-être aussi essayer avec une plus récente). C’est pourquoi, je me disais que peut-être que cette allocation inutile disparaîtrait à un niveau d’optimisation supérieur. Je testerai avec IFort pour comparer. Le code en question n’est pas open-source (bien qu’il devrait « bientôt » le devenir).

    En tout cas, après une utilisation un peu plus longue de MALT, j’ai fait deux découvertes agréables :
    - mon code ne semble finalement pas si mal codé :-) (au moins du point de vue des allocations, les cache miss que m’indiquent callgrind sont plus difficiles à améliorer) ;
    - MALT est vraiment pratique et je m’attends à ce qu’il m’aide beaucoup sur d’autres codes de calcul (notamment un en C++ où beaucoup d’objets sont créés et détruits mais je ne sais pas a priori lesquels ont une incidence importante sur le temps de calcul).

    Merci pour l’outil. Merci aussi pour la proposition d’aide. Il se trouve que MALT est assez facile à utiliser pour que je n’en aie finalement pas besoin. Prochaine étape, tester NUMAPROF !

  • # J’ai testé MALT

    Posté par (page perso) . En réponse à la dépêche Profileurs mémoire MALT et NUMAPROF. Évalué à 3 (+1/-0).

    Je viens d’essayer MALT sur un code de calcul de mécanique des fluides que je développe en Fortran. Je testerai NUMAPROF plus tard car pour ces tests, j’ai lancé les calculs sur ma machine de bureau.

    L’outil (MALT) semble bien pratique mais j’ai du mal à interpréter le résultat. Quand je regarde les volumes alloués, toutes les fonctions qui se démarquent sont celles d’initialisation, avant les calculs lourds. Ce doit juste être cette métrique qui n’est pas pertinente dans le cas de mon code. En terme de nombre d’allocations, là j’ai une fonction inattendue qui ressort (mais étonnamment, la ligne incriminée pointe son appel, pas l’intérieur de celle-ci). Bien qu’assez improbable vu la nature des paramètres de cette fonction, je me suis dis que ça pouvait être dû à un tableau qui serait passé en copie plutôt que par référence et ai donc tenté avec différents niveaux d’optimisation pour voir si le problème évoluait en fonction des efforts que fait GCC pour rendre mon code performant. Eh bien, je n’ai pas réussi à obtenir quelque-chose de MALT pour un niveau d’optimisation O3 ou avec « link time optimization ».

    Du coup, les conditions dans lequel je teste mon code sont assez différentes de celles dans lesquelles il tourne usuellement. C’est une limitation due au Fortran, à MALT ou à mon incompréhension de l’outil ?

    J’avoue qu’au départ, je suis mécanicien (des fluides), pas développeur, et je ne serais pas surpris d’être passé à côté d’un truc important.

    Merci pour ces outils en tout cas. Il n’y pas grand chose de tel pour étudier les codes HPC et j’ajoute avec plaisir MALT (et plus tard NUMAPROF) à ma trousse à outils.

  • [^] # Re: Godbolt

    Posté par (page perso) . En réponse au journal Le quiz c++ de l'été. Évalué à 4 (+2/-0).

    Arg, j’ai oublié “E”

        integer, dimension(6), intent(inout), optional :: E

    pour le cas où l’on souhaite un type “nullable”.

  • [^] # Re: Godbolt

    Posté par (page perso) . En réponse au journal Le quiz c++ de l'été. Évalué à 7 (+5/-0). Dernière modification le 24/08/18 à 13:30.

    Tu ne fais pas d'effort, il suffit de se documenter sur Ada :)

    … et Fortran (et probablement plein d’autres langages de cette génération) !

    interface
      subroutine test(A, B, C, D, E)
        integer, dimension(6), intent(in) ::    A
        integer, dimension(6), intent(out) ::   B
        integer, dimension(6), intent(inout) :: C
        integer, dimension(6), value ::         D
      end subroutine
    end interface

    Bon, ce n’est pas tout à fait comme en C++ car les “intent” déclarent les intentions d’utilisation d’une variable et laissent le compilateur libre de choisir le passage par référence ou par valeur, mais en terme de liberté pour le programmeur et de capacité d’optimisation, ça offre les mêmes possibilités que les “*”, “&” du C++ et leurs homologues précédés de “const”.

  • [^] # Re: Mais quand est-ce que ça va s'arrêter!

    Posté par (page perso) . En réponse à la dépêche L’Internet libre et ouvert est en danger : vous pouvez arrêter ce désastre. Évalué à 3. Dernière modification le 10/07/18 à 12:16.

    Il n’y a pas de déformation de tes propos, c’est juste que « les industriels » peut dire plusieurs choses et que le sens de cette proposition change entre la personne à qui tu réponds et la tienne. Quand abakkk parle « des projets législatifs portés par des intérêts industriels » il ne fait évidemment pas référence à un individu isolé, qui rédige un projet de loi et qui se trouve par hasard avoir un emploi dans l’industrie. Un tel exemple serait effectivement un industriel citoyen, mais il est évident que personne ici ne conteste sa représentation et sa participation à la vie politique. Je reviens aux propos de départ, s’il faut « constamment […] s'indigner des projets législatifs portés par des intérêts industriels » c’est parce-que les industriels au sens des entreprises (non des citoyens) sont organisés et représentés par des lobbies qui sont à même de faire évoluer la loi dans le sens de leurs intérêts. Et ces « industriels » là, ne sont pas « des citoyens comme les autres » et ta réponse est alors soit un sophisme de mauvaise foi, soit une incompréhension du message auquel tu réponds, que j’ai tenté (visiblement maladroitement) de corriger dans ma réponse.

  • [^] # Re: Des moines et de la récurrence

    Posté par (page perso) . En réponse au journal [Énigme] Vœu de silence et épidémie. Évalué à 3 (+1/-0).

    Je pense que la contagion a surtout pour effet d’invalider le raisonnement des moines, et que dans la mesure où ils sont partis en même temps, c’est qu’ils ont abouti à la même conclusion logique et que la maladie ne doit donc pas être contagieuse (ou pas visible en moins de 18 jours). Avec une maladie contagieuse tu es obligé de te donner une règle sur la vitesse de propagation (« de nouveaux malades chaque jour, au moins 1 ») alors qu’on n’en sait rien a priori.

  • [^] # Re: Mais quand est-ce que ça va s'arrêter!

    Posté par (page perso) . En réponse à la dépêche L’Internet libre et ouvert est en danger : vous pouvez arrêter ce désastre. Évalué à 5.

    Les industriels sont des citoyens comme les autres

    Non, quand on se plaint des lobbys industriels, ce sont des lobbys qui représentent des entreprises dont on parle, pas de l’avis que donne un actionnaire isolé à son copain député lors d’une soirée bière foot. Les entreprises ne sont pas des citoyens comme les autres, ce ne sont pas des citoyens du tout. Dans une démocratie ou une république telle que définie par notre constitution 1, ce n’est pas normal que les citoyens doivent «  s'indigner des projets législatifs portés par des intérêts industriels ».

  • [^] # Re: Qui utilise ?

    Posté par (page perso) . En réponse à la dépêche FreeBSD 11.2. Évalué à 9 (+7/-0).

    mais ils sont passés à Linux il y a quelques années

    Et depuis ils ne sont plus dans le top 10 des sites les plus visités… coïncidence ?

  • [^] # Re: Linux est il devenu un truc de vieux ?

    Posté par (page perso) . En réponse à la dépêche 20 ans de LinuxFr.org. Évalué à 8 (+6/-0).

    Le PC en dehors de l'utilisation professionnel est mort, clairement.

    Je vois cela martelé régulièrement sur ce site et je suis surpris. Peut-être que « le PC en dehors de l'utilisation professionnel est mort », mais ce n’est pas mon observation et je ne connais pas de source qui appuie cette affirmation avec des chiffres. En aurais-tu, s’il-te-plaît, qui le montrent « clairement » ?

  • [^] # Re: Linux est il devenu un truc de vieux ?

    Posté par (page perso) . En réponse à la dépêche 20 ans de LinuxFr.org. Évalué à 8 (+6/-0).

    La réalité, c’est aussi que quand j’ai découvert Linux et ai décidé de l’utiliser comme seul OS, vers mes 20 ans, c’était une autre paire de manche que de faire fonctionner mon modem, les ports USB de ma carte PCMCI et ma carte graphique par rapport à ce que c’est aujourd’hui que d’installer une Mint sur un portable du commerce. Forcément, le foisonnement de questions et la motivation à aller fouiller dans le système ont beaucoup changés. La réalité, c’est aussi que quand j’ai eu une Sarge parfaitement fonctionnelle sur mon portable, je ne connaissais pas grand monde d’autre dans mon environnement proche qui pouvait en dire autant. Aujourd’hui, mes jeunes collègues utilisent aussi fréquemment Windows, que OSX et Linux.

    Ils ne sont pas passionnés, mais moi-même, quand j’utilisais Windows, je n’ai jamais cherché à en apprendre davantage 1, parce-que j’avais l’impression que bien utiliser Windows, c’était connaître une liste de commandes longue comme un jour sans fromage pour savoir le truc à faire pour chaque besoin. En explorant /dev/ /etc/ /log/ etc sous Linux, je découvrais plein de choses, des étoiles plein les yeux. Maintenant utiliser, Linux, c’est aussi devenu régler sa configuration avec gconf ou dconf, lire les journaux système avec journalctl, apprendre des commandes DBUS abscons, etc. La « maturité » de notre OS le rend aussi beaucoup moins passionnant.


    1. je ne suis pas informaticien. 

  • [^] # Re: Exigences de RMS plus réalistes ?

    Posté par (page perso) . En réponse au journal France Culture: que reste-t-il du logiciel libre ?. Évalué à 3.

    J'ai choisi d'accepter qu'aujourd'hui l'informatique ne s'arrête pas à l'OS

    OK, c’est vrai.

    au lieu de tourner le dos à certaines choses il vaut mieux les accepter et essayer de changer les choses de l'intérieur.

    Quel rapport ? Puisque l’informatique ne se limite pas à l’OS il vaut mieux utiliser Windows et Dropbox et développer des outils (comment ?) pour limiter leurs capacités d’espionnage/bridage des utilisateurs ? Ça me paraît très discutable comme point de vue, et absolument pas étayé.

    il faut être courageux pour admettre qu'on croit au système

    Lequel ? Celui que RMS dénonce c’est le logiciel propriétaire/privateur et son utilisation pour enfermer l’utilisateur. C’est à ça que tu crois ? Ça ne me paraît pas très clair. Je suis d’accord pour dire que la fin du logiciel propriétaire serait insuffisante pour cesser d’enfermer l’utilisateur à l’heure des réseaux sociaux et des plateformes centralisés, mais ça ne me fait pas plus « croire au système ».

  • [^] # Re: Pas proche de l'utilisateur final ?

    Posté par (page perso) . En réponse au journal France Culture: que reste-t-il du logiciel libre ?. Évalué à 9.

    Et une autre « bourde » que je veux bien croire involontaire, mais conséquence assez inévitable du « pragmatisme » de Mozilla :
    https://github.com/mozilla/addons-frontend/issues/2785

    Dans les premières réponses de Mozilla :

    As I mentioned in #1107: we will not be removing analytics support entirely. It is extremely useful to us and we have already weighed the cost/benefit of using tracking.

    Si protéger la vie privée des utilisateurs était vraiment une priorité, la solution pragmatique serait justement de désactiver le tracking pour éviter ce genre de bogues/fonctionnalités. Pour rappel, le pragmatisme, ce n’est pas un vernis que l’on peut mettre sur une stratégie mercantile pour justifier tout dérapage, c’est un courant philosophie qui attache de l’importance aux conséquences concrètes plutôt qu’aux idées.

  • [^] # Re: Par Crom, il faut un maven pour C++ !

    Posté par (page perso) . En réponse au journal Un petit tour des systèmes de build. Évalué à 2.

    Pour le build, c’est déjà assuré par les autotools, mais ils n’assurent pas l’installation des dépendances. Pour ça, l’avenir est plutôt du côté des Guix/Nix/Easybuild que des gestionnaires de paquets de chaque langage à la mode (quoique les premiers dépendront des seconds encore longtemps, vu le bordel qu’est la situation actuelle).

  • [^] # Re: Une défense des autotools

    Posté par (page perso) . En réponse au journal Un petit tour des systèmes de build. Évalué à 4.

    De ma toute petite expérience des systèmes de construction côté développeur, autotools est aussi celui qui se met le moins en travers de ton chemin quand tu as le malheur de ne pas être cool aux yeux des développeurs de l’outils. Dans mon cas, mon plus gros projet est en Fortran.

    Malgré un vernis publicitaire pour certains, aucun système de build ne gère correctement les dépendances dans ce langage, et encore moins si vous avez l’idée saugrenue de ne pas écrire un script de construction spécifique pour chaque compilateur.

    Au final, les autotools ne font pas tout, mais déjà plus que leurs concurrents, et surtout, c’est très facile de les ajuster aux cas qu’ils ne gèrent pas directement. Gestion manuelle des dépendances ? Tu as juste à te débrouiller pour fournir un Makefile.am correct. Détection de lib obscure qui fait pas classe en soirée ? Facile d’écrire ses scripts de tests.

    Du coup, le seul système de compilation que j’ai réussi à utiliser est les autotools. Je m’arrache encore un peu les cheveux de temps en temps mais au final, je n’ai toujours pas perdu autant de temps dans le manuel des autotools après 5 ans sur le même projet, que le temps que j’ai passé dans celui de CMake pour écrire un CMakeList.txt minimaliste qui parvient tout juste à compiler mon projet. Alors que les autotools font compiler mon code avec plusieurs compilateurs, sur des machines très différentes et des systèmes d’exploitations variés, sur lesquelles j’ai rarement les droits d’administration.

  • [^] # Re: Pas proche de l'utilisateur final ?

    Posté par (page perso) . En réponse au journal France Culture: que reste-t-il du logiciel libre ?. Évalué à 6.

    respectent la vie privée et ne sont pas guidés pas des choix mercantiles

    Le problème c’est que sur ces deux points Mozilla traîne de belles casseroles. Alors c’est sûr, leur concurrence est pire mais ça affaiblit quand-même beaucoup le discours marketing de Mozilla.

  • [^] # Re: plus basé sur Debian?!

    Posté par (page perso) . En réponse à la dépêche Sortie de Devuan 2.0 « ASCII ». Évalué à 8. Dernière modification le 15/06/18 à 15:22.

    Tous les services Debian fonctionnent avec systemd (éventuellement via des bricolages qui réutilisent leurs scripts SysV historiques), mais tous ne tournent pas avec l’init SysV. Ce n’est pas pareil de dire qu’on peut désinstaller systemd que de s’assurer que tout fonctionne normalement une fois que c’est fait.

    Entendons nous bien, je suis un utilisateur heureux de Debian et n’ais jamais essayé Devuan, mais Debian a un seul init officiel et c’est systemd 1. Donc Devuan n’est pas juste « une distro pour 2 commandes à lancer ».


    1. notamment car il a été jugé que s’assurer du bon fonctionnement de plusieurs systèmes d’init avec tous les paquetages était trop coûteux en efforts. 

  • [^] # Re: Surface d'attaque OpenPGP.js & GnuPG

    Posté par (page perso) . En réponse à la dépêche GnuPG, OpenPGP.js & cie : quoi de neuf ?. Évalué à 2.

    Pour éviter les failles de sécurité, évitez la sécurité… pour une meilleure réponse sur le sujet, voir les différents commentaires de gouttegd, dont

    https://linuxfr.org/nodes/114463/comments/1738994

  • [^] # Re: hardlink → comment défaire ?

    Posté par (page perso) . En réponse au journal fdupes : un utilitaire pour gagner de la place sur son disque dur. Évalué à 3.

    Avec un script qui fait un cp && rm sur les fichiers détectés comme liés, tu devrais pouvoir t’en sortir.

  • [^] # Re: Gag

    Posté par (page perso) . En réponse au journal [MaVie] La grosse gaffe du jour ..... Évalué à 7.

    Une des raisons pour lesquelles je peste contre les distribs qui ne mettent pas rm -i en alias de base à rm. ça n'évite pas toujours les conneries mais ça aide pas mal.

    Hérésie !

    rm avec l’option '-i' par défaut n’incite qu’à acquérir le réflexe d’ajouter '-f' automatiquement, et avec lui court-circuiter toutes les vérifications de droits d’accès (tant pis pour git qui essaie de protéger de ce genre de bêtises en créant des fichiers en lecture seule, tant pis pour les sauvegardes qu’on avait pensé à protéger aussi, etc).

    Autant un wrapper du style snapper -c home_$USER create --command rm $1 je n’aurais rien contre (ce pourrait être une bonne solution), autant tout alias qui modifie le comportement par défaut de 'rm' me semble ajouter du risque plutôt que le limiter, en favorisant les mauvaises habitudes.

  • [^] # Re: Effacer la barre d'url

    Posté par (page perso) . En réponse au journal Konquefox est mort, vive Go Up !. Évalué à 4.

    Oui mais ça remplace la sélection « clic du milieu » donc c’est un peu contre productif.