Journal AutoCdLibre : Un petit script GPL pour télécharger et graver automatiquement des Logiciels Libres

Posté par  (site web personnel) .
Étiquettes :
0
6
juil.
2004
http://ccomb.free.fr/wiki/wakka.php?wiki=AutoCdLibre(...)

1) Contexte

- vous distribuez régulièrement des CDs avec des logiciels libres pour Windows (gnuwin ou autres)
- vous aimeriez que ce soient automatiquement les versions les plus récentes
- vous n'avez pas envie de re-télécharger une image ISO entière à chaque fois que Gaim change de version
- vous voulez distribuer le strict minimum indispensable permettant d'équipper un poste windows vierge pour toutes les utilisations.

2) Utilisation

Version actuelle : http://ccomb.free.fr/autocdlibre/autocdlibre_v0.sh(...)

* Téléchargez ce script dans un répertoire vide
* rendez-le exécutable avec : chmod +x autocdlibre_v0.sh
* mettez un CD-R vierge dans votre premier graveur.
* exécutez-le : ./autocdlibre_v0.sh


* Si vous avez déjà téléchargé certains d'entre eux, placez-les simplement dans n'importe quel sous-répertoire du répertoire du script, il seront automatiquement utilisés.
* Vous devez disposer d'environ 1,3Go (pendant la création de l'image ISO)

3) Fonctionnalités

* vérification des dépendances du script
* vérification de la dernière version du script
* gravure immédiate si une image ISO est déjà prête
* téléchargements conservés dans un répertoire séparé correspondant au numéro de version
* Liste des logiciels incluse à la fin du script, et facilement modifiable
* Un logiciel n'est jamais téléchargé deux fois, et une recherche est effectué dans les sous répertoires courants
* Utilisation de lien durs pour créer l'arborescence (économie de place)
* interruption du script si un fichier n'est pas téléchargé
* décompression possible des archives Zip avant gravure
* date et numéro de version inscrits sur le CD
* mois et année inclus dans le label du CD
* recherche automatique du premier graveur
* gravure automatique si un CD vierge est détecté. Sinon, attente d'insertion du CD
* effacement de l'arborescence du CD après gravure (avec confirmation)
* conservation de l'image ISO créée pour réutilisation
* inclusion des sources pour faire prendre conscience du caractère open-source des logiciels
* classement des logiciels par type d'utilisation (lecteur audio, éditeur photo, etc.)


4) Liste des logiciels
Pour les builds natifs, c'est toujours la dernière version française qui est choisie.

* OOo 1.1.2 FR (+manuels)
* Mozilla 1.6 FR (en attendant la 1.7 FR)
* Firefox 0.8 FR ( en attendant la 0.9.1 FR)
* Thunderbird 0.7.1 FR
* Gimp 2.0.2 (+plugins et manuels)
* GsView 4.6
* FileZilla 2.2.7b
* dia 0.92.2-1
* Blender 2.33a (+yafray 0.6 et manuel)
* CDex 1.51
* 7-zip 3.13
* eMule 0.42g
* InkScape 0.38
* Audacity 1.2.1
* Privoxy 3.0.3
* Zinf 2.2.1 (les derniers builds win32 ne semblent pas faits)
* Gaim 0.79
* VLC media player 0.7.2
* Bonus divertissement : Celestia 1.3.1 et BillardGL 1.75
* Gimp 2.0.2
  • # Un logiciel n'est jamais téléchargé deux fois

    Posté par  . Évalué à 3.

    D'après ta liste, ce sera le cas pour gimp ;-)

    Vous pourriez m'indiquer la sortie ?
  • # terrible

    Posté par  . Évalué à 2.

    c'est cool comme script.

    une idée comme ca : faire un script en python ( donc multiplatforme) pour juste recupere les logiciels. ca permettrait d'etre pret a lancer les prog sur les machines.
  • # firefox et thunderbird ?

    Posté par  (site web personnel) . Évalué à 2.

    * Mozilla 1.6 FR (en attendant la 1.7 FR)
    * Firefox 0.8 FR ( en attendant la 0.9.1 FR)

    Oserais-je dire que les deux sus-nommés sont déjà sortis ?
  • # Y'a toujours un mécontent...

    Posté par  . Évalué à 2.

    Une idée bien sympa que voilà... (dès ce soir, je alpha-bêta-RC-teste ;)

    Mais s'il reste de la place, je verrai bien aussi quelques logiciels supplémentaires comme :
    - un client FTP graphique (d'ailleurs, je cherche toujours un client qui soit à la fois esthétique/pratique & fiable, même sous Linux)
    - un client NNTP genre PAN (je trouve thunderbird assez *bof* pour ça mais on peut s'en contenter)
    - nVU ou équivalent
    - gThumb ou équivalent (toujours très pratique pour visualiser et retoucher les images rapidement)
    - un anti-virus genre clamav (utile ? existe ?)
    - une environnement de développement (utile ? proposition : eclipse ou autres)
    - un éditeur de texte simple et léger (gvim ou autres)
    - une/des pages d'accueil à la GNUWin pour naviguer sur le CD + pub LL & liens utiles
    - autre ...

    Est-ce possible (place restante) ?
    Z'avez des z'idées ?
  • # C'est une bonne idée !

    Posté par  . Évalué à 2.

    Bravo pour cette initiative, cela me semble tout à fait opportun :)
    Dommage cependant qu'un équivalent win32 ne soit pas possible, car je pense qu'il y aurait eu un public (à commencer par moi...)
    • [^] # Re: C'est une bonne idée !

      Posté par  (site web personnel) . Évalué à -1.

      huhu le boulet :)

      c'est justement le but du script: générer une compilation de logiciels libres pour windows...
    • [^] # Re: C'est une bonne idée !

      Posté par  . Évalué à -2.

      Pourtant c'est ecrit plus haut : logiciels libres pour Windows

      Donc ca marche pour toi !

      Juste un lien pour les windowsiens qui veulent se liberer en douceur : www.framasoft.net !!!
      • [^] # Re: C'est une bonne idée !

        Posté par  . Évalué à 3.

        C'est vous qui n'avez pas compris, je parle d'un équivalent du script ! En clair : fabriquer la compil sous Windows.

        kassoulet : qui c'est le boulet, hein ? ahem :)
        • [^] # Re: C'est une bonne idée !

          Posté par  (site web personnel) . Évalué à -2.

          Il y a des interpreteur Python sous win ... mais je ne protique pas. Avec une cygwin pour cdrecord, ca doit etre faisable ...
          • [^] # Re: C'est une bonne idée !

            Posté par  . Évalué à 2.

            Mais ici, c'est un script shell qui est proposé, pas du python ?
            Excusez-moi si je balance une ânerie, mais je ne suis pas linuxien (ma connaissance de la chose demeure très théorique).

            En tout cas, si la manip que tu suggères fonctionne, le système proposé perd l'un de ses atouts majeurs : la facilité d'utilisation.
        • [^] # Re: C'est une bonne idée !

          Posté par  (site web personnel) . Évalué à -1.

          il y'a bash et cdrecord dans cygwin :)

          et quel interet de fabriquer un truc sous windows quand on peut le faire sous linux ? :)
          • [^] # Re: C'est une bonne idée !

            Posté par  . Évalué à 1.

            L'intérêt ? Offrir une compil à jour à des windowsiens lorsqu'on l'est soi-même, au hasard ;)
    • [^] # Pour un build à partir de windows...

      Posté par  . Évalué à 0.

      ... faudrait un candidat pour le refaire en wsh/vbscript. On a ça dans l'assistance ?
      Au moins pour la partie download, voire lancement optionnel de l'install dans la foulée.
      Car pour la gravure, je suis moins convaincu que ce soit faisable (en standard en tout cas...)
  • # il manque

    Posté par  (site web personnel) . Évalué à 0.

    il manque un mini readme au debut du fichier ... ou la gestion d un -h ...
  • # Problème d'accents

    Posté par  . Évalué à 1.

    Dans le script téléchargé, j'ai toutes les lettres accentuées qui ne passent pas (des symboles pour les remplacer). C'est le signe d'un problème au niveau de l'encodage des caractères.

    Pour lire les commentaires dans le script ou les informations affichées à l'écran ce n'est pas trop grave, mais par contre pour les noms des répertoires créés, ca donne ca :
    Éditeur photo

    Y'a quelque chose qui peut être fait à la source ?
    • [^] # Re: Problème d'accents

      Posté par  (site web personnel) . Évalué à 2.

      Ça c'est parce que c'est en unicode utf-8.

      Sous vi, il faut faire : : set encoding=utf-8
      Et pour l'environnement, il faut mettre sa locale en unicode aussi, et utiliser des polices unicode. (LANG = fr_FR.UTF-8)

      Normalement sous windows ça devrait ensuite bien s'afficher

      D'ailleurs, pour ceux qui passent à l'unicode, j'ai aussi fait un script (python) qui permet de renommer en masse de l'iso8859-1 vers utf-8 :
      http://ccomb.free.fr/wiki/wakka.php?wiki=UtfConvert(...)
      • [^] # Re: Problème d'accents

        Posté par  . Évalué à 1.

        Bon je ne m'y connais pas trop dans ces différents encodage.

        J'ai essayé la commande indiquée sous vi, j'ai pas de changement à l'écran.

        Sous Bash, j'ai également taper LANG=fr_FR.UTF-8, le changement à bien été pris quand je fais 'env'. Le problème subsiste toujours.

        Dans les options de Konsole, je fait dans le menu configuration->police->Unicode, pas de changement non plus.

        Pour info, je suis sous MDK 10.0
        • [^] # Re: Problème d'accents

          Posté par  (site web personnel) . Évalué à 2.

          au lieu de LANG=fr_FR.UTF-8, il faut taper : export LANG=fr_FR.UTF-8

          Sinon tu peux aussi passer tout ton systeme en unicode (je m'étonne que ce ne soit pas fait par défaut sur la mandrake. Pendant l'install il faut peut-etre choisir "unicode par défaut"). Tu peux lancer "localedrake", et choisir une locale utf-8.
          • [^] # Re: Problème d'accents

            Posté par  . Évalué à 1.

            Pour la commande export, c'est comme si je ne faisais rien.

            L'utililtaire localedrake ne permet apparemment que de modifier son pays, rien sur l'encodage.

            Sinon j'ai trouvé la commande "unicode_start" qui est un script qui fait un "kbd_mode -u" (ne marche que dans une vraie console tty, et pas dans les consoles appelées depuis kde) et là ca marche, je n'ai plus de problèmes d'accents.
            • [^] # Re: Problème d'accents

              Posté par  (site web personnel) . Évalué à 2.

              > L'utililtaire localedrake ne permet apparemment que de modifier son pays, rien sur l'encodage.

              Justement, "modifier son pays" signifie modifier sa "locale".
              Et quand on change la locale, on change l'encodage, les réglages d'affichage de date, de virgule, etc.
              Il me semble qu'en bas de la liste dans localedrake, on peut choisir "unicode par défaut". Et lorsque ta locale est unicode, "unicode_start" devrait être démarré automatiquement.
  • # Une idée super

    Posté par  . Évalué à 2.

    Que je vais coupler aussi sec avec mon inno setup installeur. Il sufit de mettre à jour automatiquement le .ini, je vais mettre ça dans le script (si ça te dis je te le refile).

    Par contre il manque:

    gcompris pour windows,
    les logiciels du terrier (abuledu),
    abiword,
    tuxmath, qui me fait toujours autant rire.

    et quelques autres.
    • [^] # Re: Une idée super

      Posté par  (site web personnel) . Évalué à 2.

      le script pourrait récupérer automatiquement l'installeur et l'inclure sur le cd en modifiant le .ini ? C'est ce que tu veux dire ?
      Tu as une page pour ton innosetup ?
      • [^] # Re: Une idée super

        Posté par  . Évalué à 2.

        Non, c'est pas ce que je veux dire.

        Inno setup c'est du windows (delphi je crois), mais j'ai fait un installeur qui cherche dans un .ini l'endroit et le nom du programme à lancer.

        Ce qui fait que si tu mets à jour les programmes à proposer avec ton script, il suffit de modifier la ligne correspondante du .ini pour que l'installeur soit à jour.

        Par contre, pour ajouter/modifier/creéer la liste de programme, il faut compiler le setup sous windows. J'ai pas trouvé comment faire autrement. ça doit être possible de choper complètement la liste des programmes à proposer dans un fichier, il y a un language vraiment puissant pour personnaliser. mais je ne m'y connais pas assez en pascal pour faire ça.

        Donc mon truc c'est: je fais le setup sous windows, mais je peux mettre à jour en utilisant ton script modifié pour qu'il change an plus le .ini.

        C'est pratique, et les gens à qui je propose le cd n'ont plus qu'à cocher dans la liste ce qu'ils veulent installer. ça aide.

        Voilà.
        • [^] # Re: Une idée super

          Posté par  . Évalué à 2.

          Remarque non j'ai dit une connerie c'est toi qui a raison.

          Tu as une liste de programme fixe, donc tu peut proposer sur ton site le setup.exe qui sera chargé par le script. Il suffit que le script mette à jour le .ini ensuite.

          Je remet la main sur les sources du script et je te l'envoie par mail.
      • [^] # Re: Une idée super

        Posté par  . Évalué à 2.

  • # Bien, ce script

    Posté par  (site web personnel) . Évalué à 2.

    ton script est bien sympa, mais :

    - lui serait-il possible d'accepter des paramètres (-h, --help, --noiso, --norecord, par exemple)

    - serait-il possible de désactiver la construction de l'image iso à la volée ?

    - de la même manière, serait-il possible de désactiver la gravure et/ou de spécifier le graveur ?

    J'm'explique : je veux pouvoir télécharger tout le merdier, rajouter 2~3 trucs (dicooo, cartooo, dmath, etc) et après, j'me demmerde pour la gravure.

    Proverbe Alien : Sauvez la terre ? Mangez des humains !

    • [^] # Re: Bien, ce script

      Posté par  (site web personnel) . Évalué à 2.

      oui, je peux ajouter les options -noiso et -norecord (et donc -h)
      Si tu veux ajouter des trucs, il suffit d'éditer la liste à la fin du script.
      Et dès que j'ai le temps, je rajoute aussi le choix du graveur.

      Sinon, dicooo est inclus dans les dernières versions d'OOo, je crois.
  • # #!/bin/sh

    Posté par  . Évalué à 2.

    Un petit problème: il y a quelques «bachisme» dans ton script. Si /bin/sh ne pointe pas sur /bin/bash, il peut ne pas fonctionner. #!/bin/bash serait plus approprié. Sinon remplacer les $((xxx)) par des expr xxx
  • # Et une petite aide

    Posté par  . Évalué à 1.

    Pour pouvoir refiler le cd aux débutants, il manque une aide avec une description de chaque logiciel.

    Et si tout ca s'affiche avec un autorun et que les gens n'ont plus qu'à cliquer pour installer les logiciels qu'ils veulent essayer, ce serais (presque) le paradis.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.