steph1978 a écrit 2985 commentaires

  • [^] # Re: Enedis

    Posté par  . En réponse au message Coupure électricité cette hiver. Évalué à 2.

    Je ne parlais pas forcément d'une API officielle bien documentée :)

  • # un bout de AWK

    Posté par  . En réponse au message Avent du Code, jour 3. Évalué à 3.

    disclamer : j'ai d'abord écrit une solution en python parce que j'ai tout de suite penser à utiliser les set. puis en AWK pour le plaisir :)

    part 1

    {
        split(substr($0,1,length($0)/2),arr,"")
        r = substr($0,1+length($0)/2)
        for (a in arr) {
            c = arr[a]
            if (index(r,c)>0) {
                comm = c
            }
        }
        S += index("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ", comm)
    }
    END {print S}

    part 2

    NR%3==1 {split($0,arr,"");for(a in arr){A[arr[a]]=1}}
    NR%3==2 {split($0,arr,"");for(a in arr){B[arr[a]]=1}}
    NR%3==0 {
        split($0,arr,"")
        for (a in arr) {
            c = arr[a]
            if ((c in A)&&(c in B)) {comm = c}
        }
        S += index("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ", comm)
        delete A
        delete B
    }
    END {print S}
  • # exposer un site hébergé chez soi

    Posté par  . En réponse au message site internet: me guider de l'achât d'un nom de domaine (namecheap, done), ouverture de ports (?!??). Évalué à 2.

    J'imagine que ton site tourne sur une machine allumée 24/24 et branché à ta box internet. Pour ma part je ne connais que la Freebox v6 mais elles fonctionnent à peu près toutes pareil.

    Ta machine a une IP privée (192.168.x.y), non accessible par internet. Seule ta box a une IP publique (A.B.C.D), accessible par internet.

    PAT sur la box

    Il faut donc configurer ta box pour faire de la redirection de ports :

    • 80 -> IP privée serveur : 80
    • 443 -> IP privée serveur : 443

    Sur le serveur, il est possible de faire écouter le serveur web sur n'importe quel port. Des fois on choisi 1080 et 1443 pour ne pas avoir besoin de faire tourner en root. Tout ce qui est inférieur à 1024 nécessite d'être root.

    DNS chez namecheap

    Ensuite, il faut configurer ton DNS pour pointer vers ton IP publique. C'est un enregistrement de type "A"

    www A A.B.C.D

    Si il existe déjà (pointe sur une page bidon de ton fournisseur de domaine), ne pas hésiter à supprimer l'ancier pour remettre celui là.

    Pour connaître ton IP publique, tu peux aller sur https://whatismyipaddress.com/

    difficultés

    Maintenant les choses se corsent si ton fournisseur a choisi de découper ton IP publique entre plusieurs clients (le IPv4 se font rares). Car ils le font en découpant la plage de ports entrant :

    1. 1 à 16383
    2. 16384 à 32767
    3. 32768 à 49151
    4. 49152 à 65536

    Donc si tu es le client 2, 3 ou 4, tu ne possèdes pas de port 80 ou 443. Gloups.

    Dans ce cas, tu peux réclamer une IP complète (en tout cas chez Free). Ton IP va alors changer car l'IP actuelle est découpée. Il en faut une entière.

    Si tu as la chance d'être le client 1. NE FAIS RIEN.

    enjoy

    Si tout marche, bravo. Tu pourras nous donner le lien de ton site.

  • # tout à fait

    Posté par  . En réponse au message Fusion de plusieurs fichiers .db. Évalué à 2.

    { sqlite3 a.db '.dump' ; sqlite3 b.db '.dump' ; } | sqlite3 c.db
  • # Q&R

    Posté par  . En réponse au message cherche à récupérer des vidéos sur un disque dur externe avec table de partition HS. Évalué à 3.

    Faire tourner Photorec ou testdisk peut-il retrouver les vidéos ?

    Photorec, oui. Il te faut un gros disque dur à côté pour que photorec mette ce qu'il trouve

    Est-il possible d'accélérer l'éxécution de Photorec et testdisk ?
    

    Non. Cela passe forcément par un scan de chaque bloc du disque source pour essayer d'y retrouve une signature de ficher. Et tu auras énormément de déchêts dû à des faux positifs.

    Y a-t-il d'autres alternatives ?

    Pas à ma connaissance. Photorec m'a déjà sauver les miches.

    Puis je me suis mis à faire des sauvegardes :) mais c'est un autre sujet très largement traité sur ce site.

  • # ultraportable entée de gamme

    Posté par  . En réponse au message Vos avis critiques sur ce modèle ?. Évalué à 3.

    À moins de 500e, ça me parait pas trop mal. Le SSD en SATA doit pas casser des briques. Chassis alu, c'est sympa.

    T'as regardé du côté du seconde main. pour ce budget, doit y avoir moyen de taper plus haut.

    En particulier, je trouve la ram un peu chiche. Et elle ne parait pas extensible (pas d'option).

    Quant à l'écran, 11 pouce c'est bien pour de l'ultra mobilité (cohérent avec le CPU d'un TDP de 6W seulement), genre "je ferai mes mail dans le train". Mais pour réellement travailler dessus, il faudra un écran externe.

    Pour moi la limite inférieur pour réellement travailler sur un écran de portable, c'est 13". Certains te diront mm 14".

  • # préciser le besoin ? zip et IPFS ?

    Posté par  . En réponse au message Est-ce faisable en .epub ? ou dans un autre format ?. Évalué à 2.

    un EPUB est un zip de fichiers HTML, CSS et JPG/PNG, en gros. Et qui permet de lire un livre sur liseuse (ou logiciel de lecture d'epub). C'est un format de lecture.

    Tu parles d'archiver, c'est à dire de conserver des données pour longtemps. Une archive ne veut pas dire que les données sont exploitables immédiatement. Simplement qu'elles ne sont pas perdue et que, moyennant une mise à disposition, elles peuvent être consultées.

    En regardant le site, j'ai l'impression que chaque histoire est composés d'un fichier son wav et d'un fichier json.

    Pour moi, c'est cela qu'il faut archiver. Un zip de tout ça, déposé sur le IPFS et/ou chez archive.org pourra assurer la pérennité de ce bout de patrimoine.

  • # précisions et pistes

    Posté par  . En réponse au message Problème sur enchainement de commandes find et rsync. Évalué à 2.

    récupérer assez facilement certaines versions de fichiers à certaines dates

    avec des spécifications plus précises il serait possible de mieux optimiser.

    Le soucis est que j'ai des milliers de répertoires quotidiens et cette commande prend du temps

    find -exec est très lent car il lance un processus par fichier/dossier trouvé.

    Si tu pouvais te permettre de tout transférer, rsync -r source/ destination/ serait très rapide. Rsync étant très efficace pour ne transférer que les différences.

    Tu peux essayer avec un rsync --include="./22_11_*" ./ destination/

  • # OS à se dispenser du C

    Posté par  . En réponse au message sans le C, quel logiciel conséquent/répandu aurait existé?. Évalué à 3.

    un OS en Rust : https://www.redox-os.org/

    un OS (noyau) en Nim : https://github.com/dom96/nimkernel

  • [^] # Re: un bout de AWK

    Posté par  . En réponse au message Avent du Code, jour 1. Évalué à 3.

    Tient aussi en un onliner awk 'NF==0{print a;a=0}{a+=$1}END{print a}' < input | sort -rn | head -3 | awk '{S+=$1}END{print S}' mais peut être moins lisible 😝

  • # un bout de AWK

    Posté par  . En réponse au message Avent du Code, jour 1. Évalué à 4. Dernière modification le 04 décembre 2022 à 11:26.

    NF == 0 { print a; a = 0 }
    { a+=$1 }
    END { print a; } # don't forget last block

    à passer dans ce pipe: awk -f script.awk < input | sort -rn | head -3 | awk '{S+=$1}END{print S}'

  • [^] # Re: Enedis

    Posté par  . En réponse au message Coupure électricité cette hiver. Évalué à 2.

    Par contre, il ne semble pas y avoir d'api.

    il y a toujours une API 😇

  • # petit bout de AWK

    Posté par  . En réponse au message Avent du Code, jour 2. Évalué à 5.

    #loose
    $0=="A Z"{S+=3}
    $0=="B X"{S+=1}
    $0=="C Y"{S+=2}
    #draw
    $0=="A X"{S+=3+1}
    $0=="B Y"{S+=3+2}
    $0=="C Z"{S+=3+3}
    #win
    $0=="A Y"{S+=6+2}
    $0=="B Z"{S+=6+3}
    $0=="C X"{S+=6+1}
    END{print S}
  • # asdf

    Posté par  . En réponse au message Nodejs pour debian bullseye backports. Évalué à 2. Dernière modification le 04 décembre 2022 à 11:02.

    Pour avoir plusieurs versions d'un langage sur mon poste de dev, j'utilise asdf.

    Une fois installé, il faut ajouter des plugins pour les langages : asdf plugin-add nodejs

    Puis installer les versions que l'on veut : asdf install nodejs 18.10.0

    Ensuite, se positionner dans le répertoire du projet et déclarer les outils+versions à utiliser : cd ~/projets/supernodeprojet && echo 'nodejs 18.10.0' > .tool-versions

    Et vérifier : node --version => v18.10.0

    Avantages:
    * s'installe en mode utilisateur et pas root
    * permet de multiplier les versions
    * permet de controller la version par projet
    * souvent bien plus à jour que les paquets systèmes
    * empacté par la communauté de l'outil
    * plus de 500 outils proposés et des dizaines de millier de versions

  • [^] # Re: Ada corse le tout

    Posté par  . En réponse au journal Calendrier de l'Avent du code. Évalué à 2. Dernière modification le 01 décembre 2022 à 21:21.

    j'adore ces jours là, quand la solution naïve ne scale pas.

    solution naïve :

    L=list(map(int,__import__("sys").stdin.read().split(",")))
    for i in range(80):
        L = [ (l-1) for l in L ]
        n = sum( l < 0 for l in L)
        L = [ l if l>=0 else 6 for l in L ]
        L += [8]*n
    print(len(L))

    solution qui scale, même solution que toi en gros :

    D ={ i:0 for i in range(9) }
    for l in list(map(int,__import__("sys").stdin.read().split(","))):
        D[l]+=1
    for i in range(256):
        D = { i-1:D[i] for i in range(9) }
        D[6] += D[-1]
        D[8] = D[-1]
        del D[-1]
    print(sum(D.values()))
  • # meilleur que le chocolat

    Posté par  . En réponse au journal Calendrier de l'Avent du code. Évalué à 5.

    J'ai choisi la facilité comme chaque année en partant sur du AWK ou du Python. J'ai encore le temps de changer d'avis et essayer un autre langage. Mais bon faut pas se leurer, les langage de scripting comme ceux là sont les plus efficaces pour juste trouver une réponse, sans avoir besoin de faire propre. D'ailleurs quand je regarde mon code des années précédentes 😳

    Aujourd'hui, 2 lignes de AWK pour résoudre les deux premiers problèmes. On commence doucement comme chaque année.

  • [^] # Re: Ridicule, pas sérieux

    Posté par  . En réponse au lien La 5G est-elle soluble dans la sobriété ?. Évalué à 2.

    Je suis persuadé que tu as accès à un moteur de recherche mais au cas où

    Aujourd’hui, l’empreinte carbone numérique représente 4 % des émissions de gaz à effet de serre dans le monde. Soit davantage que le transport aérien. Et la vidéo en ligne représente déjà 60 % des usages du numérique.

    6*4 = 24 donc 2.4% de l'empreinte carbone mondiale. Autant que la France.

    Certain n'hésite pas à dire que ce n'est rien. Mais le nœud du problème est que le tout n'est constitué que de petits riens donc il faut agir partout.

  • [^] # Re: Ridicule, pas sérieux

    Posté par  . En réponse au lien La 5G est-elle soluble dans la sobriété ?. Évalué à 3.

    Je parlais du streaming vidéo.

  • [^] # Re: Ridicule, pas sérieux

    Posté par  . En réponse au lien La 5G est-elle soluble dans la sobriété ?. Évalué à 4.

    Et pourtant, la consomation electrique 5g est censé être délirante par rapport à la 4g ou la fibre. C'est absurde.

    Je n'ai pas parlé de ça. J'ai parlé de progrès technologique décorrélé du bonheur humain.

  • [^] # Re: Je me pose aussi la question de la disparition des flux web

    Posté par  . En réponse au journal Flux RSS des actualités de service-public.fr. Évalué à 5.

    Le RSS est un canal complémentaire pour toucher une audience.

    Si cette audience est trop faible, c'est à nous, fin connaisseurs du web, de faire la promotion de son usage.

    J'espère que ce media ne disparaîtra pas.

  • [^] # Re: Merci

    Posté par  . En réponse au lien Résumé de l'aventure de la newsletter du Courrier du hacker jusqu'au 200ème numéro. Évalué à 2.

    un truc comme select count(distinct(ip)) from access_logs where path = '/rss' ?

  • [^] # Re: Ridicule, pas sérieux

    Posté par  . En réponse au lien La 5G est-elle soluble dans la sobriété ?. Évalué à 3.

    donc 1,5W pour une journée de 10H.

    Tu fais pas 10h de vidéo avec une charge.

    Un box internet consomme ~10W

    Si ton point, non explicité, est de dire que c'est pas mieux de regarder du streaming avec une box. Je n'ai jamais dit le contraire. Après j'emporte pas ma box quand je sors …

  • [^] # Re: Ridicule, pas sérieux

    Posté par  . En réponse au lien La 5G est-elle soluble dans la sobriété ?. Évalué à 2. Dernière modification le 29 novembre 2022 à 14:13.

    Je ne comprends pas la question.
    Je n'ai pas parlé de 5G pour le truc mercedes, l'article non plus. 👀

  • # légende ?

    Posté par  . En réponse au lien Carte des instances Mastodon. Évalué à 2.

    je n'ai pas trouvé de légende : que veut dire la punaise, la bulle bleue, la bulle bleue claire ?

  • # confiance ? 's/sh/less'

    Posté par  . En réponse au lien webinstall : un service pour tout installer via curl|sh. Évalué à 2. Dernière modification le 29 novembre 2022 à 10:28.

    Je voulais voir les script d'install mais le site est en vrac, que des 404. Surement le fameux "LinuxFR effect" ou alors le moins connu "HN effect" (publié il y a deux jours).

    En regardant le repo, on voit que 80% des packages proposés s'installent en téléchargeant la dernière release sur github. Le reste depuis les sites officiels.

    Donc pas de danger à y regarder de plus près. Mais JAMAIS de la vie je fais un curl roulette.ru | sh.

    Surtout si le but est de faire un wget et un untar, je suis fainéant mais pas suicidaire.

    Tout est bien sûr question de confiance. Je fais confiance à la communauté Debian pour ne pas me fourguer une daube par apt. Je ne fais pas confiance à Mr AJ ONeal pour ne pas me fourguer ou se faire fourguer un paquet pourri.

    À côté de ça je fais confiance à la communauté ASDF pour installer mes environnement de dev. Mais c'est tellement pratique 😰