totof2000 a écrit 9656 commentaires

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

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

    Je sais que pulseaudio a eu naguère des débuts difficiles mais il me semble que ces problèmes sont réglés depuis déjà de nombreuses années et il apporte quelques fonctionnalités sympa.

    Ca tombe bien j'ai fait quelques essais récemment avec PA et j'ai remarqué qu'il y a encore quelques problèmles gênants : parfois un son qui gfrésille sans qu'on sache trop pourquoi (je pense que PA n'aime pas une machine trop chargée).

    Doit-on encore lui faire un procès ? Il y'a t-il encore des distros qui n'incluent pas pulseaudio par défaut ?

    Il n'y a pas que Linux dans la vie : il y a d'autres OS qui n'incluent pas PA par défaut.

    De plus dans le bug report il est fait mention d'apulse, un émulateur pulseaudio pour alsa rendant cette dépendance forte à pulseaudio beaucoup moins gênante pour les quelques irréductibles haters.

    PulseAudio ne me gène pas tant qu'il fonctionne … Il est vrai qu'au début il m'a passablement agacé, et que je le virais systématiquement. Maintenant il a l'air de pas trop mal marcher (modulo une machine assez pouissante), mais ce module pourrait être utile pour les cas ou PA ne marche pas (ou pour les OS n'intégrant pas pulseaudio).

  • [^] # Re: Eh ben non

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

    Il semble que les gens qui font de la MAO ont tendance à virer Pulseaudio (voir https://forum.ubuntu-fr.org/viewtopic.php?id=1993540 par exemple). Il y a également pas mal de cas ou virer pulseaudio règle les problèmes de son ( mais ça s'améliore).

    Donc ce que je vois, c'est que des tas de gens faisant de la MAO et qui utilisaient Firefox vont cesser de l'utiliser. Alors certs, directement ça leur coute peut-être de maintenir le support ALSA/OSS, mais indirectement ça risque de leur côuter plus cher et de leur faire perdre des utilisateurs.

    Ce phénomène me fait un peu penser au replay pour certaines chaines payantes : ca leur coute de l'argent, ça leur apporte rien en dorect, mais ils se sont rendu compte que s'ils ne mettaient pas ça, ils perdaient des abonnés (perte indirecte).

  • [^] # Re: Work in progress

    Posté par  . En réponse au message Remplacer des cellules. Évalué à 2. Dernière modification le 12 mars 2017 à 10:49.

    Pour windows tu peux installer cygwin qui peut te permettre d'exécuter la commande awk. sinon pour le publipostage LibreOfficen tu dois pouvoir scripter quelque chose (mais je sais pas comment).

  • [^] # Re: et après...portabilité et création de cartes

    Posté par  . En réponse au message Remplacer des cellules. Évalué à 3.

    Bon: finalement le SVG c'est faisable, mais il faudra passer par un convertisseur intermédiaire pour générer les images (sinon on va imprimer un texte balisé qui ne sera pas exploitable). Sous Linux c'est pas trop un problème. Sous Windows ça peut le devenir.
    Je continue à regarder.

  • [^] # Re: et après...portabilité et création de cartes

    Posté par  . En réponse au message Remplacer des cellules. Évalué à 2.

    L'avantage de SVG, c'est que certains langages contiennent de quoi traiter du XML dans leur bibliothèque standard (exemple : https://ruby-doc.org/stdlib-2.4.0/libdoc/rexml/rdoc/index.html). Pour du PDF, il faudra passer par une installation complémentaire (genre pip), ce qui n'est pas forcément simple sous Windows par exemple.

    J'essaierai de poster quelque chose ce soir …

  • # On demandait dans un post récemment pourquoi virer PulseAudio ...

    Posté par  . En réponse au message Soucis de carte son et avec Deadbeef sous TahrPup . Évalué à 2.

    Ben voilà un début de réponse:

    https://forum.ubuntu-fr.org/viewtopic.php?id=1993540

  • [^] # Re: et après...portabilité et création de cartes

    Posté par  . En réponse au message Remplacer des cellules. Évalué à 2. Dernière modification le 11 mars 2017 à 01:23.

    Si arnaudus a la solution en mieux (portable sur windows par exemple je suis preneur), je planche dessus.

    Ma solution awk devrait fonctionner avec un environnement cygwin, peut être avecun git shell. Par contre pourle reste, la solution awk risque de devenir très compliquée. Il va tefalloir de l'artillerie lourde.

    Je ne suis pas un fan de XML à tout va. La seule excepton va a SVG qui est un format que je trouve très bien fait et qui pourrait t'aider dans ce cas : tu crées un template SVG, ensuite tu passes ton template et ton fichier csv dans une moulinette qui te génèrera les feuilles A4 dont tu as besoin en positionnant et remplissant ton template autant de fois que tu le veux sur tafeuille A4. Par contre, manipuler du XML avec awk, ce serait possible mais il y a des outils mieux adaptés. Et dans ce cas je rejoins Arnaudus : Autant CSV est un format très simple à parser avec des outils plus ou moins basique comme awk, autant le XML avec awk risque d'être plus laborieux (mais tu as lancé un défi qui pourrait m'intéresser). je vais voir si je trouve un peu de temps ce week-end pour tenter quelque chose.

    Ma suggestion : créer un template svg avec un utilitaire tel que inkskape, puis manipuler le template avec un langage de script (exemple ruby) qui permettrait de parcourir l'arbre XML pour changer les champs que tu auras générés par les informations de ton CSV

  • [^] # Re: d'apres ton FSTAB

    Posté par  . En réponse au message Problème /usr sur autre partition non pris en compte au démarrage. Évalué à 1.

    J'ai eu exactement ce problème lors de la mise à jour de la machine de ma fille : je suis passé de ubuntu 14.04 à Ubuntu 16.04.

    Ce qui est le plus comique, c'est que je me souviens très bien avoir viré les UUID de partition à une époque mais qu'un abruti de développeur ou de mainteneur a décidé que c'est mieux les UUID (et dans ce cas je l'invite à être cohérent avec lui-même et de cesser d'utiliser les DNS), et ma machine s'est retrouvé avec un truc que je n'ai pas demandé. Par contre je ne peux pas certifier que c'est la mise à jours vars 16.04 qui a pêté ma fstab : c'est peut-être une autre mise à jour qui a fait le coup.

  • [^] # Re: Quand on n'a qu'un marteau tout ressemble à un clou

    Posté par  . En réponse au message Remplacer des cellules. Évalué à 6.

    Oui, parce que les solutions proposées sont indéboggables et ne relèvent que de bricolages «quick & dirty», le genre de choses que tu utilises quand tu n'as besoin que de faire quelque chose une fois et oublier à jamais. Et encore, il ne faut pas que ça soit quelque chose d'important.

    Ben la solution que je propose n'est pas moins indeboggable pour qui connait awk que ne le serait une solution en python pour quelqu'un qui connait python. Si tu veux débogger, apprends à utiliser awk. Maintenant, il est vrai que j'aurais pu présenter ça sur plusieurs lignes pour rendre la solution plus lisible. Ca pourrait donner ça :

    BEGIN {
      OFS=",";
      CLASSE=1;
      NOM=2;
      PRENOM=3;
      IDENTIFIANT=4;
      MDP=5;
    
      while ((x=getline <"2015.csv" ) > 0)  { 
        PASSWORD[$IDENTIFIANT]=$MDP
      }
    } 
    
    {
      if ($5 == "(déjà attribué)") {
        $5= PASSWORD[$IDENTIFIANT]
      }
      print $0
    
    }

    Initialement j'ai fait un truc simple en 4 lignes parce que le PI ne précise pas si c'est du one shot ou un truc à maintenir dans la durée, mais il y a moyen de mettre tout ça dans un fichier texte lisible qui sera interprêté par awk. Pour faire un truc plus générique, on peut variabiliser le nom du fichier de l'année précédente :

    BEGIN {
      OFS=",";
      CLASSE=1;
      NOM=2;
      PRENOM=3;
      IDENTIFIANT=4;
      MDP=5;
    
      while ((x=getline < previous_file ) > 0)  { 
        PASSWORD[$IDENTIFIANT]=$MDP
      }
    } 
    
    {
      if ($5 == "(déjà attribué)") {
        $5= PASSWORD[$IDENTIFIANT]
      }
      print $0
    
    }

    On passe ensuite les variables via l'option -v de awk (je ne me rappelle plus exactement la forme exacte, ça doit être un truc du genre -v var=value et on peut en mettre plusieurs mais je sais plus comment). Et pour l'utilisateur, on peut encapsuler ça dans un script sh qui masquera les appels à awk. Pour quelqu'un qui connait awk, c'est très lisible. En tout cas plus lisible que les solutions à base de cut, join et sed.

    Je pourrais également m'arranger pour que le séparateur de champ en sortie soit le même que le séparateur de champ en entrée (en faisant un truc du genre OFS=FS mais je ne me rappelle plus exactement quelle est la bonne variable, un man awk pourrait répondre). Comme indiqué on pourrait aussi faire des vérifications plus poussées sur les divers champs et logger des erreurs sur stdout ou vers un autre fichier, tout en restant très lisible.

    Dans l'absolu, awk est assez simple : il faut juste savoir comment il fonctionne : juste à comprendre les blocs BEGIN, END, et la façon dont awk parse chaque ligne. Ensuite ya qu'a lire la doc pour savoir comment utiliser les fonctions interne (ou écrire ses propres fonctions).

    Pour info, j'ai déjà mis ce genre de truc en place sur un parc hétérogène, géré par des entités différentes, qui pouvaient pour certains avoir du python d'installé, pour d'autres du Perl, pour d'autres aucun des deux (et c'était imposé par la politique de sécurité de la boite). Les versions de Python ou Perl étaient différentes, et le seul dénominateur commun était les commandes standards du shell (et encore avec awk faut se méfier car les diverses implémentations peuvent avoir des comportements différents).

    Sinon, si tu as lu ma proposition jusqu'au bout, tu remarqueras que j'ai invité le PI à une autre approche s'il s'aperçoit que son problème est plus compliqué.

  • [^] # Re: Quand on n'a qu'un marteau tout ressemble à un clou

    Posté par  . En réponse au message Remplacer des cellules. Évalué à 2.

    Et tu manipulerais des fichiers .csv (pour t'interfacer avec un tableur?) sur des systèmes qui n'ont pas perl ou python?

    Ben oui, c'est bien plus courant que tu ne le crois. T'as juste à déposer les fichiers (via ssh, ou ce que tu veux).

    On pourrait le faire en assembleur, aussi.

    Non, ton assembleur serait différent selon l'architecture cible. L'avantage de script shell, s'il est bien écrit, c'est que tu peux l'exécuter sur des infras hétérogènes (tant du Linux que de l'AIX, du Solaris, ou un truc un peu plus exotique n'ayant pas de langage avancé installé). Au pire tu as quelques adaptations à faire selon ton environnement, mais ça reste parfois plus simple que de passer du temps à faire installer et maintenir une version de python sur l'ensemble d'un parc hétérogène.

  • [^] # Re: Quand on n'a qu'un marteau tout ressemble à un clou

    Posté par  . En réponse au message Remplacer des cellules. Évalué à 1.

    je ne vois pas vraiment l'intérêt de tripatouiller des fichiers csv avec bash/awk/grep. Tous les langages interprétés un peu avancés ont des bibliothèques capables d'importer du csv, de stocker le contenu dans des variables adéquates, de les manipuler, et de réécrire les fichiers.

    Une installation qui ne dispose pas de ces fameux "langages avancés" par exemple (ya pas que Redhat/Centos dans la vie, et ya pas que des distributions Linux).

  • # avec awk

    Posté par  . En réponse au message Remplacer des cellules. Évalué à 4. Dernière modification le 09 mars 2017 à 00:02.

     awk -F, 'BEGIN{OFS=",";CLASSE=1;NOM=2;PRENOM=3;IDENTIFIANT=4;MDP=5;while ((x=getline <"2015.csv" ) > 0)  { PASSWORD[$IDENTIFIANT]=$MDP}} {if ($5 == "(déjà attribué)"){$5= PASSWORD[$IDENTIFIANT]};print $0}' 2016.csv
    CLASSE,NOM,PRENOM,LOGIN,MOT DE PASSE

    Chez moi :

    $ cat 2016.csv
    CLASSE,NOM,PRENOM,LOGIN,MOT DE PASSE
    c601,Z,bob,bob.z,t954fd
    c502,A,antoine,antoine.a,(déjà attribué)
    c404,B,micheline,micheline.b,(déjà attribué)

    $ awk -F, 'BEGIN{OFS=",";CLASSE=1;NOM=2;PRENOM=3;IDENTIFIANT=4;MDP=5;while ((x=getline <"2015.csv" ) > 0) { PASSWORD[$IDENTIFIANT]=$MDP}} {if ($5 == "(déjà attribué)"){$5= PASSWORD[$IDENTIFIANT]};print $0}' 2016.csv
    CLASSE,NOM,PRENOM,LOGIN,MOT DE PASSE
    c601,Z,bob,bob.z,t954fd
    c502,A,antoine,antoine.a,4f56yg
    c404,B,micheline,micheline.b,654pgh

    Après si tu veux être sur de l'ensemble des champs, tu peux les comparer un à un et logger les erreurs dans un fichier. Mais à ce stade c'est peut-être plus simple de le faire en ruby par exemple.

  • # tcl/tk comme interface à tes scripts ?

    Posté par  . En réponse au message Conseil GUI. Évalué à 4. Dernière modification le 07 mars 2017 à 18:03.

  • [^] # Re: changer la maniere de faire

    Posté par  . En réponse au message J'ai une colle pour les experts shell ou système.. Évalué à 2.

    sqlite est ton ami …

    Tu crées une table avec une colonne contenant le nom de tes fichiers et une colonne avec l'état l'état de chacun d'entre eux. Optionnellement tu peux aussi mettre en place des colones avec date de début de traitement et date de fin de traitement pour pouvoir savoir ce qui se passe (voir plus loin).

    Quand tu reçois un fichier, tu remplis ta table avec une nouvelle entrée (nom du fichier), et tu laisses l'état vide (ça veut dire que le fichier est en attente).

    Puis toutes les minutes, tu récupère la liste des fichiers dont l'état n'est pas précisé. Pour chacun de ces fichiers, tu déclenches ton traitement, et tu flag le fichier comme étant "en cours de traitement" (tu pourrais même indiquer le PID du process qui exécute le traitement, ça pourrait te servir à controler si le processus qui a traité le fichier est toujours en vie). Enfin quand ton traitement est fini, tu mets à jour le champ avec -1 par exemple pour indiquer que c'est terminé. En bonus, tu peux même ajouter les dates de début/fin de traitement (permetde détecter des anomalies si un traitement n'est pas terminé depuis X minutes ou heures).

    Les avantages : tu laisses la base gérer les accès concurrents (voir https://www.sqlite.org/faq.html#q5), tu as une visibilité précise de ce qui se passe, avec un gestionnaire de bases de données assez simple et léger. Tu peux mettre en place des procédures de reprise et de détection d'anomalies assez simplement. Pour les inconvénients, je dirais qu'il faut savoir gérer en ligne de commande les reprises lors des tentatives d'accès à une base busy, mais rien d'insurmontable à mon avis.

  • # Un greffon non activé ?

    Posté par  . En réponse au message Pas d'alerte batterie vide Xubuntu. Évalué à 2.

    Chez moi j'ai une alerte lorsque ma batterie devient faible. J'ai j'ai activé le greffon indicateur dans le tableau de bord, avec affichage "Power management" dans les propriéés du greffon. De mémoire,j'ai un popup quand le niveau de batterie est bas.

  • [^] # Re: Cotisations != employé

    Posté par  . En réponse au journal Un four à pain c'est considéré comme un employé ?. Évalué à 2.

    à faire payer des impots.

  • # personnellement j utilise homebank

    Posté par  . En réponse au message Logiciel de compte personnel avec gestion de tag "automatique". Évalué à 3.

    Il ne fait pas tout en automatique, mais il me permet de gérer l import des données de mon compte. Personnellement je préfère tagger les depenses moi même. Le tag par défaut n est pas toujours pertinent dans les applis bancaires.
    Jettes-y un oeil, ça t ira peut-etre.

  • [^] # Re: et si ça n'a rien à voir avec les licences ?

    Posté par  . En réponse au journal Mozilla nous dit que le closed-source est plus bankable. Évalué à 10.

    Moi je dis que c'est la faute à systemd.

  • [^] # Re: Une version sans sed

    Posté par  . En réponse au message dans les lignes d'un fichier txt, supprimer uniquement ce qui vient après le caractère #. Évalué à 3.

    En modifiant le séparateur de champ (on le positionneva '#'), on doit pouvoir faire un truc du genre while read a b et ne garder que $a en sortie (pas besoin de cut)

  • # Voir l'entête retournée par le webservice pour obtenir l'encodage

    Posté par  . En réponse au message Encodage/décodage de chaines. Évalué à 3.

    Voir par exempl ce que l'on obtient sur la freebox :

    $ curl -I -XGET http://mafreebox.freebox.fr/api_version
    HTTP/1.1 200 OK
    Server: nginx
    Date: Thu, 23 Feb 2017 10:30:39 GMT
    Content-Type: application/json; charset=utf-8
    Transfer-Encoding: chunked
    Connection: keep-alive
    

    A partir de là, soit l'information retournée est correcte et tu pourras faire les conversions nécessaires, soit l'encodage de ton webservice est pourre et tu ne pourrasd pas y faire grand chose, hormis te plaindre au développeur pour qu'il le corrige (ou développer un tas de routines de conversions spécifiques pour régler le problème).

    Au passage, va lire http://sametmax.com/lencoding-en-python-une-bonne-fois-pour-toute/ et http://apprendre-python.com/page-python-encodage-encode-decode-unicode-ascii-codec-character-accents-probleme-string-utf8 par exemple.

  • # C'est aussi un peu notre faute, hélas ....

    Posté par  . En réponse au journal Les mobiles libres ont du plomb dans l’aile et les systèmes d’exploitation ne vont pas mieux. Évalué à 3. Dernière modification le 23 février 2017 à 10:20.

    Le libre dans la téléphonie, ce n'est pas seulement du soft, mais aussi du hardware. Et il est à noter que bien peu de "libristes" vont au bout de leurs convictions et faire des dons à des projets libres de ce genere. JE plaide coupable : j'ai suivi de loin ce genre de projet, et malhereusement je ne me suis pas bougé pour soutenir ceux-ci (en prenant le risque que ça n'aboutisse pas).

    Maintenant j'aimerais bien me racheter un peu en faisant un don à un de ces projets, cependant je manque de visibilité sur ceux-ci, et je voudrais dans la mesure du possible soutenir "le bon" projet (le "bon" pour moi n'est pas forcément le meilleur projet, mais surtout le projet qui a le plus de chances d'aboutir).

  • # Qu'entends-tu par "logiciel de comptabilité " ?

    Posté par  . En réponse au message Logiciel de comptabilité. Évalué à 3.

    S'agit-il d'un logiciel de compta d'entreprise ou d'un logiciel de compta personnel style Ms Money ?

  • [^] # Re: SystemWide

    Posté par  . En réponse au message Raspberry Pi, PulseAudio et Bluetooth.. Évalué à 2. Dernière modification le 22 février 2017 à 14:24.

    Merci pour tes explications, je commence à comprendre le problème à un détail près :

    puis rend la main une fois que le flux de son se termine

    dans mon cas, lorsque PA se plante, le flux sonore en provenance du bluetooth est toujours actif. Serait-ce un bug de PulseAudio ou un détail que j'ai raté ? Si c'est le cas, ça mériterait peut-être un rapport de bug ? Celà dit il est fort probable que je passe pulseaudio en mode system wide même si ce problème est résolu, mais j'aimerais quand même comprendre ce détail.

    Edit : je pense à un bug de PA, mais c'est peut-être un bug du bluetooth qui n'est pas capable de dire à PA qu'il y a encore du son qui doit arriver ….

    Quand on met en place un serveur de son (ce qui est ton cas si j'ai bien compris),

    Oui, c'est plus ou moins ça.

    Et il n'est pas possible de réveiller PA avant pour l'informer que l'on a du son à jouer.

    Mon idée était d'avoir une petite interface qui démarrerait PA et le flux bluetooth via dbus lorsque j'aurais envie de l'utiliser (je ne sais pas encore si je passerai par un simple bouton, un écran tactile ou autre chose). Mais je n'ai pas les idées encore très claires sur cette partie, j'y vais à tâtons. Ce n'est peut-être pas possible de le faire (je n'ai pas encore bien avancé sur cette partie de mon projet).

    Avant PA (ESD, Polypaudio), le mode démon était activé par défaut, PA a fait une rupture avec ses ancêtres, mais ça reste nécessaire dès qu'on a besoin de mettre en place un serveur de son.

  • [^] # Re: SystemWide

    Posté par  . En réponse au message Raspberry Pi, PulseAudio et Bluetooth.. Évalué à 2.

    Je ne l'ai pas lancé en mode systemwide car j'ai lu un peu partout que "ce n'est pas bien". S'il faut le faire je ne suis pas contre (d'ailleurs je l'ai fait lors de mes tests pour voir comment ça fonctionne), mais j'aimerais comprendre pourquoi il se plante lorsqu'il n'est pas en mode systemwide (et pourquoi lorsque pavucontrol tourne, il ne se plante plus). Il y a un truc qui m'échappe dans le fonctionnement de Pulseaudio, et je voudrais savoir ce que c'est.

    Merci en tout cas pour ton aide.

  • [^] # Re: no comment

    Posté par  . En réponse au journal Payer ses impôts en choisissant la date. Évalué à 3.

    Grosse différence avec le commerçant : tu as une trace et tu peux contester et si le commerçant se plante trop souvent on lui enlève le droit.

    C'est effectivement une grosse différence mais ça va danns un sens que je n'aime pas trop : la contestation à postériori, qui génère bien plus de problèmes quand ça arrive. Pour le prélèvement SEPA, ce n'est pas très compliqué, mais pour d'autres choses (je pense au fait de te mettre des options payantes par défaut dans un abonnement, options que tu dois désactiver par la suite si tu n'en veux pas). Mais ça va lus loin que SEPA.

    Tant que tu ne comprendras pas cette différence et continueras à fantasmer sur des problèmes hypothétiques,

    Je ne fantasme sur rien du tout. je constate juste un certain nombre de risques potentiels,

    tu ne pourras pas comprendre pourquoi c'est plus pratique (pour tout le monde).

    Tant que tu ne comprendras pas qe tout le monde n'est pas Zenitram …