ploum a écrit 5959 commentaires

  • [^] # Re: A quoi servent les lois anti-trust?

    Posté par  (site web personnel, Mastodon) . En réponse au journal A quoi servent les lois anti-trust?. Évalué à 0.

    Oui, je connais DRM :)

    /*****************************************************************************
    * DeDRMS.cs: DeDRMS 0.1
    *****************************************************************************
    * Copyright (C) 2004 Jon Lech Johansen <jon-vl@nanocrew.net>
    *
    * This program is free software; you can redistribute it and/or modify
    * it under the terms of the GNU General Public License as published by
    * the Free Software Foundation; either version 2 of the License, or
    * (at your option) any later version.
    *
    * This program is distributed in the hope that it will be useful,
    * but WITHOUT ANY WARRANTY; without even the implied warranty of
    * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
    * GNU General Public License for more details.
    *
    * You should have received a copy of the GNU General Public License
    * along with this program; if not, write to the Free Software
    * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
    *****************************************************************************/

    using System;
    using System.IO;
    using System.Text;
    using System.Security.Cryptography;

    class M4PStream
    {
    private Rijndael alg;

    private BinaryReader br;
    private BinaryWriter bw;
    private byte [] sbuffer;

    private string AtomDRMS = "drms";
    private string AtomMP4A = "mp4a";
    private string AtomSINF = "sinf";
    private string AtomUSER = "user";
    private string AtomKEY = "key ";
    private string AtomIVIV = "iviv";
    private string AtomNAME = "name";
    private string AtomPRIV = "priv";
    private string AtomSTSZ = "stsz";
    private string AtomMDAT = "mdat";

    public M4PStream( FileStream fs )
    {
    br = new BinaryReader( fs );
    bw = new BinaryWriter( fs );
    sbuffer = br.ReadBytes( Convert.ToInt32( fs.Length ) );

    alg = Rijndael.Create();
    alg.Mode = CipherMode.CBC;
    alg.Padding = PaddingMode.None;
    }

    byte [] NetToHost( byte [] Input, int Pos, int Count )
    {
    if( BitConverter.IsLittleEndian )
    {
    for( int i = 0; i < Count; i++ )
    {
    Array.Reverse( Input, Pos + (i * 4), 4 );
    }
    }

    return Input;
    }

    int GetAtomPos( string Atom )
    {
    byte [] Bytes = Encoding.ASCII.GetBytes( Atom );

    for( int i = 0; i < (sbuffer.Length - 3); i++ )
    {
    if( sbuffer[ i + 0 ] == Bytes[ 0 ] &&
    sbuffer[ i + 1 ] == Bytes[ 1 ] &&
    sbuffer[ i + 2 ] == Bytes[ 2 ] &&
    sbuffer[ i + 3 ] == Bytes[ 3 ] )
    {
    return i;
    }
    }

    throw new Exception( String.Format( "Atom '{0}' not found", Atom ) );
    }

    uint GetAtomSize( int Pos )
    {
    byte [] Bytes = new byte[ 4 ];
    Buffer.BlockCopy( sbuffer, Pos - 4, Bytes, 0, 4 );
    return BitConverter.ToUInt32( NetToHost( Bytes, 0, 1 ), 0 );
    }

    byte [] GetAtomData( int Pos, bool bNetToHost )
    {
    uint Size;
    byte [] Bytes;

    Size = GetAtomSize( Pos );
    Bytes = new byte[ Size - 8 ];
    Buffer.BlockCopy( sbuffer, Pos + 4, Bytes, 0, Bytes.Length );

    return bNetToHost ? NetToHost( Bytes, 0, Bytes.Length / 4 ) : Bytes;
    }

    public void Decrypt( byte [] CipherText, int Offset, int Count,
    byte [] Key, byte [] IV )
    {
    MemoryStream ms = new MemoryStream();

    ICryptoTransform ct = alg.CreateDecryptor( Key, IV );
    CryptoStream cs = new CryptoStream( ms, ct, CryptoStreamMode.Write );
    cs.Write( CipherText, Offset, (Count / 16) * 16 );
    cs.Close();

    ms.ToArray().CopyTo( CipherText, Offset );
    }

    public byte [] GetUserKey( uint UserID, uint KeyID )
    {
    byte [] UserKey;
    BinaryReader bruk;

    string strHome =
    Environment.GetFolderPath( Environment.SpecialFolder.ApplicationData );
    bool bUnix = Environment.OSVersion.ToString().IndexOf( "Unix" ) != -1;
    string strFile = String.Format( "{0}{1}{2}drms{3}{4:X8}.{5:D3}", strHome,
    Path.DirectorySeparatorChar, bUnix ? "." : "",
    Path.DirectorySeparatorChar, UserID, KeyID );

    bruk = new BinaryReader( File.OpenRead( strFile ) );
    UserKey = bruk.ReadBytes( Convert.ToInt32( bruk.BaseStream.Length ) );
    bruk.Close();

    return UserKey;
    }

    public int [] GetSampleTable()
    {
    byte [] adSTSZ = GetAtomData( GetAtomPos( AtomSTSZ ), true );
    int SampleCount = BitConverter.ToInt32( adSTSZ, 8 );
    int [] SampleTable = new int[ SampleCount ];

    for( int i = 0; i < SampleCount; i++ )
    {
    SampleTable[ i ] = BitConverter.ToInt32( adSTSZ, 12 + (i * 4) );
    }

    return SampleTable;
    }

    public void DeDRMS()
    {
    byte [] IV = new byte[ 16 ];
    byte [] Key = new byte[ 16 ];

    int apDRMS = GetAtomPos( AtomDRMS );
    int apSINF = GetAtomPos( AtomSINF );
    int apMDAT = GetAtomPos( AtomMDAT );

    int [] SampleTable = GetSampleTable();

    byte [] adUSER = GetAtomData( GetAtomPos( AtomUSER ), true );
    byte [] adKEY = GetAtomData( GetAtomPos( AtomKEY ), true );
    byte [] adIVIV = GetAtomData( GetAtomPos( AtomIVIV ), false );
    byte [] adNAME = GetAtomData( GetAtomPos( AtomNAME ), false );
    byte [] adPRIV = GetAtomData( GetAtomPos( AtomPRIV ), false );

    uint UserID = BitConverter.ToUInt32( adUSER, 0 );
    uint KeyID = BitConverter.ToUInt32( adKEY, 0 );
    string strName = Encoding.ASCII.GetString( adNAME );
    byte [] UserKey = GetUserKey( UserID, KeyID );

    MD5CryptoServiceProvider MD5 = new MD5CryptoServiceProvider();
    MD5.TransformBlock( adNAME, 0, strName.IndexOf( '\0' ), adNAME, 0 );
    MD5.TransformFinalBlock( adIVIV, 0, adIVIV.Length );

    Decrypt( adPRIV, 0, adPRIV.Length, UserKey, MD5.Hash );

    if( Encoding.ASCII.GetString( adPRIV, 0, 4 ) != "itun" )
    {
    throw new Exception( "Decryption of 'priv' atom failed" );
    }

    Buffer.BlockCopy( adPRIV, 24, Key, 0, Key.Length );
    Buffer.BlockCopy( adPRIV, 48, IV, 0, IV.Length );

    for( int i = 0, Pos = apMDAT + 4;
    i < SampleTable.Length;
    Pos += SampleTable[ i ], i++ )
    {
    Decrypt( sbuffer, Pos, SampleTable[ i ], Key, IV );
    }

    Encoding.ASCII.GetBytes( AtomMP4A ).CopyTo( sbuffer, apDRMS );
    Encoding.ASCII.GetBytes( AtomSINF.ToUpper() ).CopyTo( sbuffer, apSINF );

    bw.Seek( 0, SeekOrigin.Begin );
    bw.Write( sbuffer );
    }
    }

    class DeDRMS
    {
    public static void Main( string [] Args )
    {
    FileStream fs;
    M4PStream m4p;

    if( Args.Length != 1 )
    {
    Console.WriteLine( "Usage: DeDRMS file.m4p" );
    return;
    }

    try
    {
    fs = new FileStream( Args[ 0 ], FileMode.Open,
    FileAccess.Read | FileAccess.Write );
    m4p = new M4PStream( fs );
    m4p.DeDRMS();
    fs.Close();
    }
    catch( Exception e )
    {
    Console.WriteLine( "Exception: {0}", e.Message );
    return;
    }
    }
    }

    Mes livres CC By-SA : https://ploum.net/livres.html

  • [^] # Re: Windows : terrain de jeu des virus

    Posté par  (site web personnel, Mastodon) . En réponse au journal Windows : terrain de jeu des virus. Évalué à 1.

    Les européens ?

    Mes livres CC By-SA : https://ploum.net/livres.html

  • # Re: http -> http://www.w3.org

    Posté par  (site web personnel, Mastodon) . En réponse au journal http -> http://www.w3.org. Évalué à 2.

    J'oubliais : http://ploum.user.amessage.de/jabber/htmlblog(...)

    Mes livres CC By-SA : https://ploum.net/livres.html

  • [^] # Re: Windows : terrain de jeu des virus

    Posté par  (site web personnel, Mastodon) . En réponse au journal Windows : terrain de jeu des virus. Évalué à 1.

    j'admet et je m'excuse !

    C'est juste une expression.

    "ça m'agace" aurait été plus approprié.

    Mes livres CC By-SA : https://ploum.net/livres.html

  • [^] # Re: Windows : terrain de jeu des virus

    Posté par  (site web personnel, Mastodon) . En réponse au journal Windows : terrain de jeu des virus. Évalué à 10.

    Et bien j'ai joué ce jeu là un peu, mais maintenant :

    - soit je me fais payer (cher)
    - soit je ne travaille qu'avec des logiciels libres
    - soit les deux

    Mais ce n'est pas un service que tu lui rend, ni à toi, ni à lui. tes deux heures de boulot sont tout benef, tout bénévole pour la société de ton oncle.

    Je ne veux pas t'insulter, mais il faut être réaliste : "Tu es une bonne poire".

    Et j'ai remarqué que en étant gentil et en acceptant de se bouger le cul, on te redemande 3 fois plus et on râle si tu le fais pas bien.

    En refusant ou en te faisant payer, en te faisant prier, tu te fais 100X plus remercié, tu es moins dérangé et tu es plus respecté et même, paradoxalement, tu es considéré comme plus sympa !!!!

    Sinon, je peux avoir ton email pour le cas ou un mec sous Windows à un problème ? ;)

    Mes livres CC By-SA : https://ploum.net/livres.html

  • # Re: Windows : terrain de jeu des virus

    Posté par  (site web personnel, Mastodon) . En réponse au journal Windows : terrain de jeu des virus. Évalué à 5.

    Ce genre de journal me fout la haine car c'est typiquement ce genre de comportement qui permet à Windows de garder autant de part du marché !

    Et qui fait dire à des gens comme ton oncle : "Ah mais Linux, c'est trop compliqué pour moi" .

    Nom d'une pipe ! Ceci est un coup de gueule :

    Si vous désirez voir Linux plus répandu REFUSEZ de faire le helpdesk de Microsoft ! Même pour son cousin ou pour le copain de la voisine !!!!


    Je suis sur que sans les linuxiens qui ont bon coeur, il y'aurait nettement plus de problèmes avec Windows !

    J'ai un ami qui, malgré mes avis, a tenu à acheter MS Office. Et il n'a pas réussi à l'installer. Il a du retourner au magasin (c'est un portable) et se le faire installer. Et bien JE REFUSE D'INSTALLER MS OFFICE !!! Et comme il ne voulait pas d'OpenOffice, il a été bien emmerdé, le magasin a été emmerdé. Et au moins on ne sort pas des "Mais au moins Windows c'est facile".

    Mes livres CC By-SA : https://ploum.net/livres.html

  • [^] # Re: Windows : terrain de jeu des virus

    Posté par  (site web personnel, Mastodon) . En réponse au journal Windows : terrain de jeu des virus. Évalué à 4.

    exactement ce que je répond : désolé, mais moi je ne connais pas Windows. Je n'utilise que Linux.

    Et depuis, j'ai beaucoup plus la paix ! Parfois, j'accède de jeter un oeil à la machine à la condition de pouvoir installer Firefox, thunderbird et OpenOffice !

    Mes livres CC By-SA : https://ploum.net/livres.html

  • [^] # Re: Logo Debian clairement visible dans un reportage du JT de TF1

    Posté par  (site web personnel, Mastodon) . En réponse au journal Logo Debian clairement visible dans un reportage du JT de TF1. Évalué à 1.

    Ah bon ? Et dans ce cas, pourquoi sur la page de download il y'avait en grand un avertissement disant : "Interdit de redistribuer" ??

    hmmm ??

    Non, Seule l'interface de Helix est libre et quelques bouts de code par-ci par-là. Mais tout le moteur est complètement fermé ! Ainsi que la technologie pour les codecs.

    Par contre mplayer est complètement libre et utilise simplement un wrapper (libre lui aussi) pour juste pouvoir lire certains codecs.

    Non, HelixCommunity est réellement une tentative d'expoiter la communauté libre ! Si tu contribues à Hélix (via un patch ou quoi que ce soit), tout ce que tu fais devient la propriété intellectuelle de Real ! (c'est écrit explicitement dans la licence). qqn analysait même que, dans un cas extrème, Real pouvait t'interdire de réutiliser un morceau de code que tu as écrit et envoyé à Hélix !

    Je ne retrouve plus les messages exacts dans la liste, mais les développeurs de Helix sont arrivés en jouant les sympas en disant que ça ne servait à rien de développer Gstreamer puisque Helix arrivait. Il leur a été répondu que Helix n'était pas libre et ils ont répondu qqch genre : "sisi, c'est libre et de toutes façons on est toujours obligé d'être non-libre pour un gros projet" (contrdiction ?)

    finalement, comme personne ne voulait passer à Hélix, ils ont commencé à devenir désagréable et à dire que de toutes façons gstreamer ce serait de la m** car ça lirait pas le RV9 et 10 qui sont des codecs proprios.

    Je me souviens très exactement d'un message où un développeur disait (je cite de mémoire ) : "C'est dommage pour vous ! Vous avez perdu l'occasion de travailler avec un superbe codec, super bien codé et super excitant à utiliser en développement, tout ça parce que vous refusez de signer un accord de non divulgation"

    Alors, qu'on ne me fasse pas croire que Helix est libre ! (de toutes façons, chez moi il me fait une erreur hexadécimale pour n'importe quel fichier que j'essaie de lire)

    Mes livres CC By-SA : https://ploum.net/livres.html

  • [^] # Re: Logo Debian clairement visible dans un reportage du JT de TF1

    Posté par  (site web personnel, Mastodon) . En réponse au journal Logo Debian clairement visible dans un reportage du JT de TF1. Évalué à 1.

    helix player cépalibre !

    Je vais tester le player tout de suite, mais après avoir lu certaines choses que les développeurs ont envoyés sur la liste dev de gstreamer, je ne peux vous dire qu'une chose : n'utilisez Helix qu'en cas de force majeure !

    Mes livres CC By-SA : https://ploum.net/livres.html

  • [^] # Re: Mandrake et changement de thème d'icônes

    Posté par  (site web personnel, Mastodon) . En réponse au journal Mandrake et changement de thème d'icônes. Évalué à 1.

    apt-get install gnome-themes-extra

    Mes livres CC By-SA : https://ploum.net/livres.html

  • # Re: Soutenez LOLiWin !

    Posté par  (site web personnel, Mastodon) . En réponse au journal Soutenez LOLiWin !. Évalué à 0.

    Il manque cruellement :

    - Firefox (et le plugin flash voire celui java, vu que le non libre ne vous dérange pas, y'a Acrobat Reader)
    - Thunderbird + enigmail
    - Psi (ou un autre client Jabber ! C'est peut-être plus utile que le serveur Jabber)


    Je vais voir ce que je vais faire pour l'hébergement. Mais en tout cas, pourquoi pas Bittorent ?

    Et sinon, pourquoi ne pas reprendre les manuels en PDF de certains logiciels sur Framasoft et les mettre avec ?

    Dernier point : si les dictionnaires ne sont pas installés avec OOo, ce serait bien de joindre aussi le programme d'installation.

    Sinon, chapeau ! L'installateur a l'air très bien :)

    Mes livres CC By-SA : https://ploum.net/livres.html

  • # Re: La citation du jour ...

    Posté par  (site web personnel, Mastodon) . En réponse au journal La citation du jour .... Évalué à 1.

    Utiliser Gnomemeeting ?

    Mes livres CC By-SA : https://ploum.net/livres.html

  • # Re: Statistiques Google de mars 2004

    Posté par  (site web personnel, Mastodon) . En réponse au journal Statistiques Google de mars 2004. Évalué à 6.

    J'avais fait un rapide calcul un jour basé sur le fait que beaucoup de gens mettent google comme page de démarage dans IE (c'est le cas par défaut des installations dans beaucoup de sociétés) mais que beaucoup de Mozilliens sont moins sur google à cause de la recherche intégrée.

    En utilisant la recherche intégrée à Mozilla/firefox, pour chaque recherche sur google on a une seule visite sur le site.

    Alors que si on va sur le site google (ce qui m'arrive très rarement), on a deux hits : page d'accueil + recherche.

    J'avais fait des calculs à la grosse louche, en essayant d'être pessimiste : 20% des pages d'accueil de IE sont google, 10% des gens sous mozilla utilisent la recherche intégrée (90% vont sur google.com) et entre 1% et 3% des moziliens/autres ont changé leur UA.

    En partant d'une moyenne de 10 ouvertures de browser par jour dont 3 sont une recherche sur google, j'obtenais un truc genre : si 10% des gens utilisent mozilla, google en verra 2% (et 98% pour IE)

    Pour que google voit 10% des gens sous Mozilla, il faut entre 25 et 30% des utilisateurs réels.

    Bref, ces chiffres valent ce qu'ils valent (rien !) mais montrent bien que toute statistique peut être très facilement biaisée...

    Déjà, en partant des chiffres que j'ai donné. Imaginons seulement deux internautes effectuant exactement la même chose, un sous IE avec sa page d'accueil google, l'autre sur Moz utilisant la recherche intégrée.
    Sur une journée, google recevra 16 visites dont 3 sous Mozilla ! ! !

    Mes livres CC By-SA : https://ploum.net/livres.html

  • [^] # Re: Installation de Fedora

    Posté par  (site web personnel, Mastodon) . En réponse au journal Installation de Fedora. Évalué à 1.

    Debian ça rox ! ;)

    Mes livres CC By-SA : https://ploum.net/livres.html

  • [^] # Re: google fight...

    Posté par  (site web personnel, Mastodon) . En réponse au journal google fight.... Évalué à 1.

    tsss... mon logo n'a rien à voir avec Gnome ! A l'époque où je l'ai dessiné, je ne connaissais pas gnome.

    J'ai récupéré une image de pied sur google image à l'époque et je l'ai redéssiné pixel par pixel dans PaintShopPro pour en faire mon logo.

    Le logo de Frimouvy se doit d'être le pied (avec le sous titre "Les productions de l'Orteil" ) pour une raison historique jamais révélée au grand public....

    Et puis parce qu'on film comme des pieds...

    Mes livres CC By-SA : https://ploum.net/livres.html

  • [^] # Re: Rien d'intéressant dans ce logiciel !

    Posté par  (site web personnel, Mastodon) . En réponse au journal OS Athene. Évalué à 1.

    ça, c'est ta morale personnelle... rien de plus.

    Tu choisis de ne pas utiliser leur produit (comme moi d'ailleurs) mais ce qu'il font est logique, légal et une conséquence directe de l'OpenSource.

    On ne peut rien leur reprocher, si ce n'est que je me pose toujours une question :

    MAIS A QUOI CELA SERT-IL ??????

    Mes livres CC By-SA : https://ploum.net/livres.html

  • # Re: Que pensez-vous pour un site du partenariat avec Amazon ?

    Posté par  (site web personnel, Mastodon) . En réponse au journal Que pensez-vous pour un site du partenariat avec Amazon ?. Évalué à 1.

    Peux-tu choisir les livres que tu présentes ?

    Auquel cas, l'idée me semble bonne. Plutot que de boycottez "bêtement" Amazone, ne peut-on pas encourager l'achat de certains livres ? Surtout que ce genre de livre ne se trouve pas chez le bouquiniste de quartier, généralement.

    Mais peut-être qu'un arrangement avec Ikarios ou une autre société serait encore plus bénéfique.

    En tout cas, la question mérite de se poser en se disant : "Que puis-je y gagner ?" "Que puis-je y perdre ?"

    Mais en aucun cas il faut se dire "Que peux y gagner quelqu'un qui n'est pas mon ami voire mon ennemi ?"

    Mes livres CC By-SA : https://ploum.net/livres.html

  • # Re: OS Athene

    Posté par  (site web personnel, Mastodon) . En réponse au journal OS Athene. Évalué à 3.

    "Do you have an open source policy?"

    Yes! The source code for Athene and the Pandora Engine is distributed under the terms of the Open Development License. We do not distribute all of the source code, but the components which we deem to be helpful to third-party developers and which do not risk the dilution of our intellectual property are available to you at no charge. As of January 2004, approximately 90% of our source code is available to the public.


    Bref ... :-(

    Et je ne vois pas en fait à quoi ça sert !

    Mes livres CC By-SA : https://ploum.net/livres.html

  • [^] # Re: Microsoft ouvre le format de Visio

    Posté par  (site web personnel, Mastodon) . En réponse au journal Microsoft ouvre le format de Visio. Évalué à 2.

    Pour le format Word, il s'agit de très très vieilles spécifications non ?

    Et en plus, la clarté de la documentation de ce format fait passer un manuel de langage d'assemblage traduit en inuit et crypté avec BGP pour un livre à "Série rose" à ranger entre Oui-oui et fantômette.

    Mes livres CC By-SA : https://ploum.net/livres.html

  • [^] # Re: Film & copyleft : Production & Organisation, Références ?

    Posté par  (site web personnel, Mastodon) . En réponse au journal Film & copyleft : Production & Organisation, Références ?. Évalué à 1.

    tu trouveras des informations sur ce film dans le forum des vidéastes amateurs :

    http://forum.frimouvy.org(...)

    Mes livres CC By-SA : https://ploum.net/livres.html

  • [^] # Re: OpenOffice v1.1.1, logiciel du jour

    Posté par  (site web personnel, Mastodon) . En réponse au journal OpenOffice v1.1.1, logiciel du jour. Évalué à 2.

    C'est génial.... Tout simplement :)

    Mes livres CC By-SA : https://ploum.net/livres.html

  • [^] # Re: HTTP -> http://www.w3c.org : The best place to learn more about http !

    Posté par  (site web personnel, Mastodon) . En réponse au journal HTTP -> http://www.w3c.org : The best place to learn more about http !. Évalué à 1.

    En fait, w3.org est déjà en 7ème position !

    Faire rivaliser http://www.ietf.org/rfc/rfc1945.txt(...) avec micromou c'est réellement impossible !

    Mais par contre HTTP -> http://www.w3.org,(...) ça c'est possible !

    Mes livres CC By-SA : https://ploum.net/livres.html

  • [^] # Re: google fight...

    Posté par  (site web personnel, Mastodon) . En réponse au journal google fight.... Évalué à 1.

    Les films CS sont la jeunesse de Cheapmovies ! Ils deviennent de plus en plus sérieux. Et leurs films sérieux sont vraiment géniaux.

    C'est pour ça que je suis fier : le googlefight est sans doute le seul endroit où je dépasserai jamais zaz !

    Mes livres CC By-SA : https://ploum.net/livres.html

  • # Re: Appel aux Pierre Tramo

    Posté par  (site web personnel, Mastodon) . En réponse au journal Appel aux Pierre Tramo. Évalué à 7.

    Je conseillerais plutot un site international pour que le google bombing puisse etre repris internationalement.

    Ensuite, un site déjà présent :

    http://www.google.com/search?q=http&sourceid=mozilla-search&(...)

    Ensuite, je crois que le plus approprié est sans doute :

    http://www.w3.org/(...)

    Notons la présence de apache.org en troisième page.

    Mais avant de se lancer bêtement (déjà qu'une moitié mais linux.org et l'autre moitié linuxfr.org ), réfléchissons un peu non ?

    Je vote pour www.w3.org


    Notons que linux.org apparait déjà en 5ème page alors que redhat est en quatrième. Gnu est lui en 6ème page. Mais se rattrape sur "to be or not to be" ::) Slashdot en 7ème et Debian en 9ème page. Gimp en 10ème page...

    Mes livres CC By-SA : https://ploum.net/livres.html

  • [^] # Re: Installation de Fedora

    Posté par  (site web personnel, Mastodon) . En réponse au journal Installation de Fedora. Évalué à 1.

    http://frimouvy.udev.org/wiki/wakka.php?wiki=NaPuL(...)

    Mes livres CC By-SA : https://ploum.net/livres.html