Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 12/10/2010, à 16:55

mondai

Script pour installer TeXLive 2011

Salut,

j'ai eu besoin d'installer texlive plusieurs fois, alors je me suis fais un script pour moi. Et comme j'ai également des amis qui utilisent texlive, je l'ai adapté un peu. Au cas où ça serait utile pour d'autres, je le copie ici :

# ~/install_update_tex
#=======================================================================
#       FILE: Script to automate the install and update process of TeXLive 2010
#        It might be useful if you need to install it on several computers.
#
#       USAGE: You will need to use your terminal
#
#  DESCRIPTION: ---
#      OPTIONS: ---
# REQUIREMENTS: Ubuntu, tested on Ubuntu 10.04 with bash shell
#       BUGS: ---
#         NOTES: In case of problem, see here : http://alexkrispin.wordpress.com/
#       AUTHOR: Alexandre Krispin, k.m.alexandre@gmail.com
#      COMPANY: ---
#      CREATED: 2010年 10月 11日 月曜日 22:25:43 CEST
#     REVISION: --- 
#=======================================================================
#! /bin/bash

#You will need to enter install or update
zenity --question --text="I need to know if you want to install TeXLive 2010 or if you only want to update it. In case you want to install it, write in your terminal 'install'. And if you want to update, enter 'update'. If you are an Ubuntu user, don't worry ! Just click ok, and write 'install' or 'update' in your terminal."

read STRING
if [ $STRING == "install" ]; then

    zenity --info --text "I need to install something. Please, don't worry, and enter your password."

    sudo apt-get install perl-tk

    cd ~

    wget http://mirrors.ircam.fr/pub/CTAN/systems/texlive/tlnet/install-tl.zip
    unzip install-tl.zip
    cd ~/install-tl-20101011 
       

    zenity --info --text "If you need to enter your password, enter it. If not, the installation process will begin, a window will appear. See here for an example : http://www.tug.org/texlive/doc/texlive-common/install-lnx-main.png\n\n But don't change anything, just click to continue. In other words, you will have to press the 'Install TeXlive' button, or something like it with other languages. Everything will be ok, don't worry"

    sudo ./install-tl -gui
    
    cd ~
    
    rm -rf install-tl*

    echo -e "PATH=/usr/local/texlive/2010/bin/i386-linux:$PATH; export PATH\nMANPATH=/usr/local/texlive/2010/texmf/doc/man:$MANPATH; export MANPATH\nINFOPATH=/usr/local/texlive/2010/texmf/doc/info:$INFOPATH; export INFOPATH" >> ~/.bashrc
    echo -e "PATH=/usr/local/texlive/2010/bin/i386-linux:$PATH; export PATH\nMANPATH=/usr/local/texlive/2010/texmf/doc/man:$MANPATH; export MANPATH\nINFOPATH=/usr/local/texlive/2010/texmf/doc/info:$INFOPATH; export INFOPATH" >> ~/.profile

    zenity --info --text "Now I will apply something important to get fonts working with LaTeX. For more information, see here : http://www.tug.org/texlive/doc/texlive-en/texlive-en.html#x1-360003.4.5\n\n If you don't understand, don't worry just let me finish my job. You might also have to enter your password in the terminal."
    sudo cp /usr/local/texlive/2010/texmf-var/fonts/conf/texlive-fontconfig.conf /etc/fonts/conf.d/09-texlive.conf
    sudo fc-cache -fsv

    zenity --info --text "Congratulations, you have fully updated TeXlive 2010 !\n\n see you later for an update !"

else

    echo -en '\E[47;35m'"\033[1m"
    echo '*******************************'
    echo 'Thank you. I will update TeXlive'
    echo '*******************************'
    echo -en "\033[0m"

    zenity --info --text "You will have to enter your password in the terminal."
    echo -en '\E[47;35m'"\033[1m"
    echo '*******************************'
    echo 'Thank you. I will update TeXlive'
    echo 'PLEASE, I need your password'
    echo '*******************************'
    echo -en "\033[0m"
    sudo /usr/local/texlive/2010/bin/i386-linux/tlmgr update --all

    zenity --info --text "Congratulations, you have fully installed TeXlive 2010 !\n\n see you later for an update !"

fi

Téléchargeable aussi ici :
http://rapidshare.com/files/424617815/i … update_tex

Bonne journée

mondai

EDIT : modification du titre, "Script pour installer TeXLive 2011" au lieu de "Script pour installer TeXLive 2010"

Dernière modification par mondai (Le 16/08/2011, à 15:17)

Hors ligne

#2 Le 14/10/2010, à 18:30

mondai

Re : Script pour installer TeXLive 2011

Salut, juste pour dire que j'ai modifié mon (petit) script :
- qqn que je connais a eu un problème avec, alors j'ai rajouté une consigne pour mettre la date, fais qq amélioration,
- et surtout j'ai mis des cases pour rentrer directement le mot de passe dans les dialogues zenity vu que ça pose problème à certains.

# ~/install_update_tex
#=======================================================================
# FILE: Script to automate the install and update process of TeXLive 2010
# It might be useful if you need to install it on several computers.
#
# USAGE: You will need to use your terminal, sorry if you are not used to it
#
# DESCRIPTION: —
# OPTIONS: —
# REQUIREMENTS: Ubuntu, tested on Ubuntu 10.04 with bash shell
# BUGS: —
# NOTES: In case of problem, see here : http://alexkrispin.wordpress.com/
# AUTHOR: Alexandre Krispin, k.m.alexandre@gmail.com
# COMPANY: —
# CREATED: 2010年 10月 11日 月曜日 22:25:43 CEST
# REVISION: 2010年 10月 14日 月曜日 19:12:51 CEST
#=======================================================================
#! /bin/bash

#You will need to enter install or update
install_or_update_variable=$(zenity --entry --text="Do you want to install TeXlive 2010, or to update it ?\n If you want to install it, write 'install' (without quotes) and press \n enter, else write 'update': ")

if [ ${install_or_update_variable} == "install" ]; then

PASSWORD=`zenity --title='Password' --text='Thanks. I need to install something.\n Please enter your password' --entry`
echo $PASSWORD | sudo -S apt-get install perl-tk

cd ~
wget http://mirrors.ircam.fr/pub/CTAN/systems/texlive/tlnet/install-tl.zip
unzip install-tl.zip
date=$(zenity --entry --text="Please, enter the numbers you can see in the background and which might be something like 20101013 :\n\n
  inflating: install-tl-20101013/tlpkg/TeXLive/TLPDB.pm 
  inflating: install-tl-20101013/index.html  
   creating: install-tl-20101013/readme-html.dir/
  inflating: install-tl-20101013/readme-html.dir/readme.zh-cn.html
  inflating: install-tl-20101013/readme-html.dir/readme.ja.html  
  inflating: install-tl-20101013/readme-html.dir/readme.it.html 
  inflating: install-tl-20101013/readme-html.dir/readme.fr.html  
  inflating: install-tl-20101013/readme-html.dir/readme.cs.html 
  inflating: install-tl-20101013/readme-html.dir/readme.en.html 
  inflating: install-tl-20101013/readme-html.dir/readme.pl.html 
  inflating: install-tl-20101013/readme-html.dir/readme.sr.html 
  inflating: install-tl-20101013/readme-html.dir/readme.ru.html 
  inflating: install-tl-20101013/readme-html.dir/readme.de.html\n\n
 . So for example if it is 20101013, write 20101013 and press enter: ")

cd ~/install-tl-${date}

zenity --info --title="Last notification before installation" --text="The installation process will begin, a window will appear. See here for an example : http://www.tug.org/texlive/doc/texlive-common/install-lnx-main.png\n\n But don't change anything, just click to continue. In other words, you will have to press the 'Install TeXlive' button, or something like it with other languages. Everything will be ok, don't worry"

echo $PASSWORD | sudo -S ./install-tl -gui

cd ~

rm -rf install-tl*

echo -e "export PATH=/usr/local/texlive/2010/bin/i386-linux:$PATH; export PATH\nMANPATH=/usr/local/texlive/2010/texmf/doc/man:$MANPATH; export MANPATH\nINFOPATH=/usr/local/texlive/2010/texmf/doc/info:$INFOPATH; export INFOPATH" >> ~/.bashrc
echo -e "PATH=/usr/local/texlive/2010/bin/i386-linux:$PATH; export PATH\nMANPATH=/usr/local/texlive/2010/texmf/doc/man:$MANPATH; export MANPATH\nINFOPATH=/usr/local/texlive/2010/texmf/doc/info:$INFOPATH; export INFOPATH" >> ~/.profile

zenity --info --title="Last settings" --text="Now I will apply something important to get fonts working with LaTeX. For more information, see here : http://www.tug.org/texlive/doc/texlive-en/texlive-en.html#x1-360003.4.5\n\n If you don't understand, don't worry just let me finish my job."

echo $PASSWORD | sudo -S cp /usr/local/texlive/2010/texmf-var/fonts/conf/texlive-fontconfig.conf /etc/fonts/conf.d/09-texlive.conf
echo $PASSWORD | sudo -S fc-cache -fsv

zenity --info title="Installation finished" --text="Congratulations, you have fully installed TeXlive 2010 !\n\n see you later for an update !"

else

PASSWORD=`zenity --title='Password' --text='Thank you. I will update TeXlive.\n Please enter your password: ' --entry`
echo $PASSWORD | sudo -S /usr/local/texlive/2010/bin/i386-linux/tlmgr update --all

zenity --info --title="Update finished" --text="Congratulations, you have fully updated TeXlive 2010 !\n\n see you later for an update !"

fi

Et téléchargeable ici.

Dernière modification par mondai (Le 14/10/2010, à 18:37)

Hors ligne

#3 Le 23/10/2010, à 22:29

Le Farfadet Spatial

Re : Script pour installer TeXLive 2011

Salut à tous !

   Merci Mondai pour ce script, j'ai justement besoin d'installer TeXLive 2010 sur une Ubuntu en ce moment.

   Juste, avant que je l'applique : sais-tu comment se passe la cohabitation avec l'installation standard d'Ubuntu ? Notamment, j'ai installé le paquet « texlive-full », est-ce que tout se passe bien dans ce cas avec ton script ? Admettons que dans quelques temps les paquets d'Ubuntu intégrerons TeXLive 2011, est-ce que tu sais s'il y a des risques de conflits ? En cas de problèmes, as-tu prévu un moyen de désinstaller tout ça ?

   Je te fais confiance, ton script est certainement très bien et je vais très probablement l'appliquer. C'est juste que je suis prudent par habitude.

   À bientôt.

Le Farfadet Spatial

Hors ligne

#4 Le 24/10/2010, à 02:13

mondai

Re : Script pour installer TeXLive 2011

Salut,

Après coup j'avais fais une dernière petite modification il y a un peu plus d'une semaine (quoique négligeable c'était juste pour permettre aux gens de taper le minimum), et que j'ai mis en téléchargement ici :
http://rapidshare.com/files/425399449/i … ate_tex.sh

Après, il faut juste faire :
ctrl+alt+t
puis, en admettant que l'endroit où le script a été téléchargé soit Desktop (chez moi c'est デスクトップ et dans les environnements français c'est Bureau je crois) :

cd ~/Desktop
chmod +x install_update_tex.sh
./install_update_tex.sh

À la base, j'avais écris ce script pour moi, puis j'ai rajouté des indications pour que les débutants ne soient pas rebutés (ayant utilisé word, puis openoffice pour mon mémoire, et voyant que les autres continuent d'utiliser ça, je leur conseille tjrs latex).

Aussi, il vaut mieux avoir une bonne connection internet, ou ne pas avoir de rendez-vous dans l'heure qui suit l'installation. La dernière fois, ayant installé TeXlive en utilisant la connection internet d'une bibliothèque à Paris, j'ai mis 15 min je crois.
Avant de poster ce message j'ai voulu réessayer le script chez moi, mais avec le débit que j'ai, le script s'est bloqué sur :
Loading http://www.ctan.org/tex-archive/systems … live.tlpdb
(quoique ça ce n'est plus mon script mais celui exécuté automatiquement à partir du mien). Donc bref, il te faut vraiment une connection potable pour ne pas avoir de problème, mais si tu n'es pas étudiant et que tu es salarié, j'imagine que tu dois avoir un bon débit.

Le Farfadet spatial a écrit :

Notamment, j'ai installé le paquet « texlive-full », est-ce que tout se passe bien dans ce cas avec ton script ?

Ça me fait bizarre de répondre à une question de qqn que je considère comme supérieur à moi (supérieur en termes de connaissances liées à la programmation)

Mais sinon oui, tout se passe bien. En fait la seule chose qu'il y a à faire est d'indiquer le PATH. Avec Freebsd j'avais TeTeX et je pouvais utiliser TeXlive 2009 sans problème après modification du PATH (et les autres aussi d'après les retours que j'ai vu sur le forum freebsd), et avec Ubuntu j'ai une partie de TeXLive 2009 d'installée pour cause de dépendances (avec je-ne-sais-plus-trop-quoi) et j'ai bien la 2010 de reconnu et d'utilisée :

$ tex --version
TeX 3.1415926 (TeX Live 2010)
kpathsea version 6.0.0
Copyright 2010 D.E. Knuth.
There is NO warranty.  Redistribution of this software is
covered by the terms of both the TeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the TeX source.
Primary author of TeX: D.E. Knuth.
Le Farfadet spatial a écrit :

Admettons que dans quelques temps les paquets d'Ubuntu intégrerons TeXLive 2011, est-ce que tu sais s'il y a des risques de conflits ?

Donc a priori non, il n'y a aucun risque de conflit. Je dis "a priori" car théoriquement, si l'on indique le bon PATH, je ne vois pas pourquoi ça irait chercher ailleurs quand on compile.

Le Farfadet spatial a écrit :

En cas de problèmes, as-tu prévu un moyen de désinstaller tout ça ?

Honnêtement non, mais j'aurai envie de dire qu'il ne peut pas y avoir de problèmes de toute façon. Et quand bien même il y en aurait, à partir du moment où on enlève les PATH qui sont mis automatiquement avec mon script dans .bashrc et .profile, on peux réutiliser texlive 2009 sans problème.

Et sinon j'assurerai le service-après vente ! Ce script n'a été testé que sur 4 ordinateurs pour l'instant, et bientôt un cinquième lundi, mais si tu utilises Ubuntu 10.04 ou 10.10 et une connection internet qui ne coupe pas tout le temps, il n'y aura pas de problème (sinon ctrl+c et relance le script après s'être assuré que la connection marche bien).

Le Farfadet spatial a écrit :

Je te fais confiance, ton script est certainement très bien et je vais très probablement l'appliquer

Quand je lis "je te fais confiance", venant de ta part, c'est un peu comme le jour où on a commencé à m'appeler "monsieur" au lieu de "hé, jeune homme", ou quand les prof d'université m'ont serré la main... ça fait bizarre !

À bientôt !
                                                                                                                                                                                         Mondai (je copie mon vénérable maître)

PS : au passage, j'avais continué à suivre le lien Openoffice est-il obsolète (si je me souviens bien du titre), et maintenant j'essaie d'utiliser tikz, là j'apprends tikz avec la doc pgfmanual et pgfplots, et même si pour l'instant j'obtiens rien de très efficace on va dire, je persévère, et merci bcp pour tes conseils très précieux.

Dernière modification par mondai (Le 24/10/2010, à 02:29)

Hors ligne

#5 Le 24/10/2010, à 18:14

Le Farfadet Spatial

Re : Script pour installer TeXLive 2011

Salut à tous !

mondai a écrit :

Ça me fait bizarre de répondre à une question de qqn que je considère comme supérieur à moi (supérieur en termes de connaissances liées à la programmation)

   Que voulez-vous, monsieur – je voulais dire, jeune homme –, je n'ai pas la science infuse !

   Le principe du libre, c'est l'échange. Pour ma part, je n'ai jamais de problème à poser une question et je n'hésite pas à dire que parfois des débutants (ce que tu n'es pas) m'ont débloqués des situations.

Je dis "a priori" car théoriquement, si l'on indique le bon PATH, je ne vois pas pourquoi ça irait chercher ailleurs quand on compile.

   Dis-moi si je comprends bien : ton script va demander le nom d'un dossier, dans lequel sera installé la nouvelle version de TeXLive et sur lequel il va faire pointer la variable d'environnement « $PATH ».

PS : au passage, j'avais continué à suivre le lien Openoffice est-il obsolète (si je me souviens bien du titre), et maintenant j'essaie d'utiliser tikz, là j'apprends tikz avec la doc pgfmanual et pgfplots, et même si pour l'instant j'obtiens rien de très efficace on va dire, je persévère, et merci bcp pour tes conseils très précieux.

   J'ai moi aussi des difficultés avec Tikz, mais ceux qui le maîtrisent arrivent à faire des choses impressionnantes. De toute façon, je ne me considère pas comme un utilisateur avancé de LaTeX.

   À bientôt.

Le Farfadet Spatial

Hors ligne

#6 Le 24/10/2010, à 19:45

mondai

Re : Script pour installer TeXLive 2011

Salut !

Le Farfadet Spatial a écrit :

Dis-moi si je comprends bien : ton script va demander le nom d'un dossier, dans
lequel sera installé la nouvelle version de TeXLive et sur lequel il va faire
pointer la variable d'environnement « $PATH ».

C'est vrai que je n'ai pas parlé du contenu, alors voici, dans l'ordre, ce que
fait la version de mon script que j'ai mis à télécharger, si tu choisis l'option
install au lieu de update :

  1. il installe perl-tk, un paquet nécessaire pour lancer l'interface graphique de
    l'installateur de TeXLive 2010

  2. Il télécharge le script officiel pour installer TeXlive sur les systèmes Unix,
    puis lance l'interface graphique

  3. Il écrit les PATH dans .bashrc et .profile

  4. Il efface (rm -rf) tous les fichiers ou dossiers commençant par install-tl
    (c'est-à-dire l'archive téléchargée et le dossier décompressé)

C'est vraiment tout bête, mais les gens que je connais qui utilisent Word ou
OpenOffice.org n'étant pas familier de LaTeX, et étant encore moins habitué à la
ligne de commande, je fais en sorte d'automatiser le tout.

Le Farfadet Spatial a écrit :

   J'ai moi aussi des difficultés avec Tikz, mais ceux qui le maîtrisent
   arrivent à faire des choses impressionnantes.

Ah ok, ben 1 de ces 4 je ferai un post sur le forum où je mettrai mes futurs
snippet pour tikz (d'un autre côté, je me sers de tikz pour l'instant
exclusivement pour faire des graphs tout bête en économie, donc ça ne sera rien
d'intéressant si tu fais ne serait-ce que des graphs avec des fonctions de plus
de 2 variables)

Le Farfadet Spatial a écrit :

De toute façon, je ne me considère pas comme un utilisateur avancé de LaTeX.

Par expérience j'ai appris que les plus forts sont ceux qui ne se vantent pas et
qui restent modestes (comme toi par exemple).

Bonne soirée,
mondai

Dernière modification par mondai (Le 24/10/2010, à 19:51)

Hors ligne

#7 Le 25/10/2010, à 01:02

Le Farfadet Spatial

Re : Script pour installer TeXLive 2011

Salut à tous !

mondai a écrit :
  1. il installe perl-tk, un paquet nécessaire pour lancer l'interface graphique de
    l'installateur de TeXLive 2010

  2. Il télécharge le script officiel pour installer TeXlive sur les systèmes Unix,
    puis lance l'interface graphique

  3. Il écrit les PATH dans .bashrc et .profile

  4. Il efface (rm -rf) tous les fichiers ou dossiers commençant par install-tl
    (c'est-à-dire l'archive téléchargée et le dossier décompressé)

   Je constate qu'il passe par « apt-get » pour installer Perl-tk, très bien.

   Bon, je vais le tester.

Par expérience j'ai appris que les plus forts sont ceux qui ne se vantent pas et
qui restent modestes (comme toi par exemple).

   Jusqu'à l'année dernière, je manquais un peu de modestie, mais maintenant je suis parfait !

   À bientôt.

Le Farfadet Spatial

Hors ligne

#8 Le 25/10/2010, à 18:52

mondai

Re : Script pour installer TeXLive 2011

Le Farfadet Spatial a écrit :

Jusqu'à l'année dernière, je manquais un peu de modestie, mais maintenant je
suis parfait !

mort de rire !

À bientôt,
mondai

Hors ligne

#9 Le 26/10/2010, à 08:31

Le Farfadet Spatial

Re : Script pour installer TeXLive 2011

Salut à tous !

   Hé bien, ça s'est mal passé.

   Une fois le script exécuté, j'ai voulu lancer XeLaTeX, mais ce n'était pas la bonne version :

$ xelatex -version
XeTeX 3.1415926-2.2-0.9995.2 (TeX Live 2009/Debian)
kpathsea version 5.0.0
Copyright 2009 SIL International and Jonathan Kew.
There is NO warranty.  Redistribution of this software is
covered by the terms of both the XeTeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the XeTeX source.
Primary author of XeTeX: Jonathan Kew.
Compiled with ICU version 3.8.1 [with modifications for XeTeX]
Compiled with zlib version 1.2.3.4; using 1.2.3.4
Compiled with FreeType2 version 2.4.2; using 2.4.2
Compiled with fontconfig version 2.8.0; using 2.8.0
Compiled with libpng version 1.2.44; using 1.2.44
Compiled with poppler version 0.14.2

   J'ai alors vérifié la valeur de ma variable d'état « $PATH » :

$ $ echo $PATH
/usr/local/texlive/2010/bin/i386-linux:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

   Ça tombe mal, j'utilise une version 64 bits :

$ ls /usr/local/texlive/2010/bin/
x86_64-linux

   Donc, forcément, ça ne peut pas aller.

   Bon, une fois « $PATH » modifié, cela ne fonctionne toujours pas, mais c'est parce que le disque a été saturé avant la fin de l'installation : la version 10.10 de Ubuntu a grossi, elle ne se satisfait plus des 15 Gio que j'ai alloués à la partition racine. Je vais me débrouiller, mais je voulais t'informer de ce petit problème dans ton script.

   À bientôt.

Le Farfadet Spatial

Dernière modification par Le Farfadet Spatial (Le 26/10/2010, à 08:32)

Hors ligne

#10 Le 26/10/2010, à 18:28

mondai

Re : Script pour installer TeXLive 2011

Salut,

Merci beaucoup pour le retour, et je suis vraiment désolé de ne même pas avoir pensé aux processeurs 64 bits.

Je vais corriger tout de suite mon script, et l'uploader.

Le Farfadet Spatial a écrit :

la version 10.10 de Ubuntu a grossi, elle ne se satisfait plus des 15 Gio que j'ai alloués à la partition racine.

Effectivement, je n'avais pas pensé à faire un avertissement en cas de partitionnement différent de celui de base. Personnellement, j'avais eu le même problème que tu as eu il y a longtemps, et maintenant je choisis toujours 20 gb pour la racine.

Aussi je ne sais pas si ça peut te renseigner, mais mon dossier texlive dans /usr/local fait 2.3 gb en tout.

Je suis encore une fois vraiment désolé de ne pas avoir pensé à ces 2 choses, et je vais faire un avertissement sur le minimum d'espace libre requis pour texlive avant de mettre le choix.

bonne soirée,
mondai

Dernière modification par mondai (Le 26/10/2010, à 18:28)

Hors ligne

#11 Le 26/10/2010, à 19:31

Le Farfadet Spatial

Re : Script pour installer TeXLive 2011

Salut à tous !

mondai a écrit :

Je suis encore une fois vraiment désolé de ne pas avoir pensé à ces 2 choses, et je vais faire un avertissement sur le minimum d'espace libre requis pour texlive avant de mettre le choix.

   Pas de panique, tu ne peux pas penser à tout d'un coup, c'est aussi la force du libre que de permettre ce genre de retour.

   Cela dit, oui, je pense que ces deux modifications seraient utiles.

   À bientôt.

Le Farfadet Spatial

Hors ligne

#12 Le 26/10/2010, à 23:12

mondai

Re : Script pour installer TeXLive 2011

Salut,

Le Farfadet Spatial a écrit :

Pas de panique, tu ne peux pas penser à tout d'un
coup, c'est aussi la force du libre que de permettre ce genre de retour.

Merci !

J'ai fais les modifications il y a quelques heures, mais impossible de tester,
ma connection internet (ou plutôt la connection internet de celle de quelqu'un
du voisinage) déconne sans arrêt (il /elle doit télécharger sans arrêt). Je
verrai ça dans quelques jours dans une bibliothèque finalement.

En tous cas voici la version non testée (mais qui devrait marcher) :

# ~/install_update_tex
#=======================================================================
# FILE: Script to automate the install and update process of TeXLive 2010
# It might be useful if you need to install it on several computers.
#
# USAGE: You will need to use your terminal, sorry if you are not used to it
#
# DESCRIPTION: —
# OPTIONS: —
# REQUIREMENTS: Ubuntu, tested on Ubuntu 10.04 with bash shell
# BUGS: —
# NOTES: In case of problem, see here : http://alexkrispin.wordpress.com/
# AUTHOR: Alexandre Krispin, k.m.alexandre@gmail.com
# COMPANY: —
# CREATED: 2010年 10月 11日 月曜日 22:25:43 CEST
# REVISION: 2010年 10月 14日 月曜日 19:12:51 CEST
#=======================================================================
#! /bin/bash

#You will need to enter install or update
INSTALL_OR_UPDATE=$(zenity --title="Install or update" --text="Do you want to install TeXlive
2010, or to update it ?" --list --radiolist --column "Select" --column "Choice"\
    true "Install"\
    false "Update")

case "$INSTALL_OR_UPDATE" in
    "Install")

zenity --title='Required disk space' --text="Please, be aware that you will
need\n
more than 2.3 gb of space to install TeXLive 2010. If you don't have enought\n
space, then stop the script or close your terminal."

PASSWORD=`zenity --title='Password' --text='Thank you, I will install TeXLive
2010.\n I need to install something.\n Please enter your password' --entry`
echo $PASSWORD | sudo -S apt-get install perl-tk

cd ~
wget http://mirrors.ircam.fr/pub/CTAN/systems/texlive/tlnet/install-tl.zip
unzip install-tl.zip

cd ~/install-tl-20*

zenity --info --title="Last notification before installation" --text="The installation process will begin, a window will appear. See here for an example : http://www.tug.org/texlive/doc/texlive-common/install-lnx-main.png\n\n But don't change anything, just click to continue. In other words, you will have to press the 'Install TeXlive' button, or something like it with other languages. Everything will be ok, don't worry"

echo $PASSWORD | sudo -S ./install-tl -gui

cd ~

rm -rf install-tl*

I386_OR_X86_64=$(zenity --title="i386 or x86-64" --text="Do you have installed a
i386 version of Ubuntu, or a x86-64 bits version ?\n If you don't know, choose i386" --list --radiolist --column "Select" --column "Choice"\
    true "i386"\
    false "x86-64")

case "$I386_OR_X86_64" in
    "i386")

echo -e "export PATH=/usr/local/texlive/2010/bin/i386-linux:$PATH; export PATH\nMANPATH=/usr/local/texlive/2010/texmf/doc/man:$MANPATH; export MANPATH\nINFOPATH=/usr/local/texlive/2010/texmf/doc/info:$INFOPATH; export INFOPATH" >> ~/.bashrc
echo -e "PATH=/usr/local/texlive/2010/bin/i386-linux:$PATH; export PATH\nMANPATH=/usr/local/texlive/2010/texmf/doc/man:$MANPATH; export MANPATH\nINFOPATH=/usr/local/texlive/2010/texmf/doc/info:$INFOPATH; export INFOPATH" >> ~/.profile
exit
;;
    esac
case "$I386_OR_X86_64" in "x86-64")
echo -e "export PATH=/usr/local/texlive/2010/bin/x86_64-linux:$PATH; export PATH\nMANPATH=/usr/local/texlive/2010/texmf/doc/man:$MANPATH; export MANPATH\nINFOPATH=/usr/local/texlive/2010/texmf/doc/info:$INFOPATH; export INFOPATH" >> ~/.bashrc
echo -e "PATH=/usr/local/texlive/2010/bin/x86_64-linux:$PATH; export PATH\nMANPATH=/usr/local/texlive/2010/texmf/doc/man:$MANPATH; export MANPATH\nINFOPATH=/usr/local/texlive/2010/texmf/doc/info:$INFOPATH; export INFOPATH" >> ~/.profile
exit
;;
    esac

zenity --info --title="Last settings" --text="Now I will apply something important to get fonts working with LaTeX. For more information, see here : http://www.tug.org/texlive/doc/texlive-en/texlive-en.html#x1-360003.4.5\n\n If you don't understand, don't worry just let me finish my job."

echo $PASSWORD | sudo -S cp /usr/local/texlive/2010/texmf-var/fonts/conf/texlive-fontconfig.conf /etc/fonts/conf.d/09-texlive.conf
echo $PASSWORD | sudo -S fc-cache -fsv

zenity --info title="Installation finished" --text="Congratulations, you have fully installed TeXlive 2010 !\n\n see you later for an update !"
exit
;;
esac

case "$INSTALL_OR_UPDATE" in
    "Update")
I386_OR_X86_64=$(zenity --title="i386 or x86-64" --text="Thank you, but before I
update TeXlive, please, choose if you have installed a
i386 version of Ubuntu, or a x86-64 bits version.\n If you don't know, choose i386" --list --radiolist --column "Select" --column "Choice"\
    true "i386"\
    false "x86-64")

case "$I386_OR_X86_64" in
    "i386")
PASSWORD=`zenity --title='Password' --text='Thank you. I will update TeXlive.\n Please enter your password: ' --entry`
echo $PASSWORD | sudo -S /usr/local/texlive/2010/bin/i386-linux/tlmgr update --all
exit
;;
    esac

case "$I386_OR_X86_64" in
    "x86-64")
PASSWORD=`zenity --title='Password' --text='Thank you. I will update TeXlive.\n Please enter your password: ' --entry`
echo $PASSWORD | sudo -S /usr/local/texlive/2010/bin/x86_64-linux/tlmgr update --all
exit
;;
    esac


zenity --info --title="Update finished" --text="Congratulations, you have fully updated TeXlive 2010 !\n\n see you later for an update !"
exit
;;
esac

Bonne soirée,
mondai

EDIT : ah tiens, en relisant mon script je viens de remarquer que j'ai oublié de modifier la date de révision, et aussi de préciser que le script faisait aussi un petit "bidouillage" pour que XeLaTeX compile correctement avec les polices de caractères.

Dernière modification par mondai (Le 26/10/2010, à 23:22)

Hors ligne

#13 Le 30/10/2010, à 12:01

mondai

Re : Script pour installer TeXLive 2011

Salut,

Bon j'ai pu tester le script avec une bonne connection internet, et j'ai corrigé les erreurs.

Je l'ai mis à télécharger ici :
http://rapidshare.com/files/427931619/i … ate_tex.sh

Je suis encore une fois désolé pour le Farfadet Spatial que ça n'ait pas marché, et cette fois-ci, tout est bon normalement.

Le script fait, dans l'ordre, les choses suivantes :

  1. Il demande si vous voulez installer ou mettre à jour texlive

  2. Il avertit d'un strict minimum à avoir comme espace disque

  3. Il installe un paquet pour lancer une interface graphique

  4. Il télécharge et lance le script officiel d'installation de texlive 2010

  5. Après l'installation il efface les fichiers téléchargés et extraits

  6. Il écrit le path dans les fichiers ad hoc, après avoir demandé si vous êtes en i386 ou x64

  7. Il fait une petite bidouille pour utiliser les polices de caractères correctement avec xelatex

Si vous choisissez de mettre à jour :

  1. Il demande si vous êtes en i386 ou x64

  2. Et lance le nécessaire selon votre choix

Le script que j'ai mis à télécharger est le suivant :

# ~/install_update_tex
#=======================================================================
# FILE: Script to automate the install and update process of TeXLive 2010
# It might be useful if you need to install it on several computers.
#
# USAGE: You will need to use your terminal, sorry if you are not used to it
#
# DESCRIPTION: —
# OPTIONS: —
# REQUIREMENTS: Ubuntu, tested on Ubuntu 10.04 with bash shell
# BUGS: —
# NOTES: In case of problem, see here : http://alexkrispin.wordpress.com/
# AUTHOR: Alexandre Krispin, k.m.alexandre@gmail.com
# COMPANY: —
# CREATED: 2010年 10月 11日 月曜日 22:25:43 CEST
# REVISION:2010年 10月 30日 土曜日 13:00:45 CEST
#=======================================================================
#! /bin/bash

#You will need to enter install or update
INSTALL_OR_UPDATE=$(zenity --title="Install or update" --text="Do you want to install TeXlive
2010, or to update it ?" --list --radiolist --column "Select" --column "Choice"\
    true "Install"\
    false "Update")

case "$INSTALL_OR_UPDATE" in
    "Install")

zenity --warning --title='Required disk space' --text="Please, be aware that you will need more than 2.3 gb of space to install TeXLive 2010. If you don't have enough
space, then close your terminal to stop the script."

PASSWORD=`zenity --title='Password' --text='Thank you, I will install TeXLive
2010.\n I need to install something.\n Please enter your password' --entry`
echo $PASSWORD | sudo -S apt-get install perl-tk

cd ~
wget http://mirrors.ircam.fr/pub/CTAN/systems/texlive/tlnet/install-tl.zip
unzip install-tl.zip

zenity --info --title="Last notification before installation" --text="The installation process will begin, a window will appear. See here for an example : http://www.tug.org/texlive/doc/texlive-common/install-lnx-main.png\n\n But don't change anything, just click to continue. In other words, you will have to press the 'Install TeXlive' button, or something like it with other languages. Everything will be ok, don't worry"

cd ~/install-tl-2*
echo $PASSWORD | sudo -S ./install-tl -gui

cd ~

rm -rf install-tl*

I386_OR_X86_64=$(zenity --title="i386 or x86-64" --text="Do you have installed a
i386 version of Ubuntu, or a x86-64 bits version ?\n If you don't know, choose i386" --list --radiolist --column "Select" --column "Choice"\
    true "i386"\
    false "x86-64")

case "$I386_OR_X86_64" in
    "i386")

echo -e "export PATH=/usr/local/texlive/2010/bin/i386-linux:$PATH; export PATH\nMANPATH=/usr/local/texlive/2010/texmf/doc/man:$MANPATH; export MANPATH\nINFOPATH=/usr/local/texlive/2010/texmf/doc/info:$INFOPATH; export INFOPATH" >> ~/.bashrc
echo -e "PATH=/usr/local/texlive/2010/bin/i386-linux:$PATH; export PATH\nMANPATH=/usr/local/texlive/2010/texmf/doc/man:$MANPATH; export MANPATH\nINFOPATH=/usr/local/texlive/2010/texmf/doc/info:$INFOPATH; export INFOPATH" >> ~/.profile
exit
;;
    esac
case "$I386_OR_X86_64" in "x86-64")
echo -e "export PATH=/usr/local/texlive/2010/bin/x86_64-linux:$PATH; export PATH\nMANPATH=/usr/local/texlive/2010/texmf/doc/man:$MANPATH; export MANPATH\nINFOPATH=/usr/local/texlive/2010/texmf/doc/info:$INFOPATH; export INFOPATH" >> ~/.bashrc
echo -e "PATH=/usr/local/texlive/2010/bin/x86_64-linux:$PATH; export PATH\nMANPATH=/usr/local/texlive/2010/texmf/doc/man:$MANPATH; export MANPATH\nINFOPATH=/usr/local/texlive/2010/texmf/doc/info:$INFOPATH; export INFOPATH" >> ~/.profile
exit
;;
    esac

zenity --info --title="Last settings" --text="Now I will apply something important to get fonts working with LaTeX. For more information, see here : http://www.tug.org/texlive/doc/texlive-en/texlive-en.html#x1-360003.4.5\n\n If you don't understand, don't worry just let me finish my job."

echo $PASSWORD | sudo -S cp /usr/local/texlive/2010/texmf-var/fonts/conf/texlive-fontconfig.conf /etc/fonts/conf.d/09-texlive.conf
echo $PASSWORD | sudo -S fc-cache -fsv

zenity --info title="Installation finished" --text="Congratulations, you have fully installed TeXlive 2010 !\n\n see you later for an update !"
exit
;;
esac

case "$INSTALL_OR_UPDATE" in
    "Update")
I386_OR_X86_64=$(zenity --title="i386 or x86-64" --text="Thank you, but before I
update TeXlive, please, choose if you have installed a
i386 version of Ubuntu, or a x86-64 bits version.\n If you don't know, choose i386" --list --radiolist --column "Select" --column "Choice"\
    true "i386"\
    false "x86-64")

case "$I386_OR_X86_64" in
    "i386")
PASSWORD=`zenity --title='Password' --text='Thank you. I will update TeXlive.\n Please enter your password: ' --entry`
echo $PASSWORD | sudo -S /usr/local/texlive/2010/bin/i386-linux/tlmgr update --all
exit
;;
    esac

case "$I386_OR_X86_64" in
    "x86-64")
PASSWORD=`zenity --title='Password' --text='Thank you. I will update TeXlive.\n Please enter your password: ' --entry`
echo $PASSWORD | sudo -S /usr/local/texlive/2010/bin/x86_64-linux/tlmgr update --all
exit
;;
    esac


zenity --info --title="Update finished" --text="Congratulations, you have fully updated TeXlive 2010 !\n\n see you later for an update !"
exit
;;
esac

Bonne journée,
mondai

Dernière modification par mondai (Le 30/10/2010, à 12:20)

Hors ligne

#14 Le 09/11/2010, à 00:51

funzy

Re : Script pour installer TeXLive 2011

Bonsoir,

Je n'ai pas encore testé le script je pense le faire ce soir ou un autre jour. Je le faisais déjà à la mai, mais vu qu'il y a un joli script tout prêt profitons en. J'ai quelques remarques :

  1. Le mot de passe est tapé en clair en rajoutant "--hide-text" tu peux le cacher par des points

    PASSWORD=`zenity --title='Password' --text='Thank you, I will install TeXLive 2010.\n I need to install something.\n Please enter your password' --entry --hide-text`
  2. Sur cette même fenêtre si tu appuies sur annuler le code continue alors qu'il devrait s'annuler

  3. De même si je rentre un mot de passe vide il continuera.


J'ai fait de mon côté quelques recherches pour voir si je pouvais apporter des solutions aux toutes petites choses qui m'embêtent  mais excepté pour cacher le mot de passe, je n'ai pas trouvé.

Cordialement
Funzy

Dernière modification par funzy (Le 09/11/2010, à 00:52)

Hors ligne

#15 Le 09/11/2010, à 15:07

mondai

Re : Script pour installer TeXLive 2011

Bonjour,

Voici le script avec les dernières modifications (et qui comporte une amélioration concernant tes points qui t'embêtent) :

#=======================================================================
# FILE: install_update_texlive.sh
# USAGE: Run from the terminal
# DESCRIPTION: Automatic install/update of TeXLive 2010
# OPTIONS: —
# REQUIREMENTS: Ubuntu or OpenSuse
# BUGS: —
# NOTES: Website: http://alexkrispin.wordpress.com/
# AUTHORS: Alexandre Krispin, k.m.alexandre@gmail.com, Matthew D. Mower
# COMPANY: —
# CREATED: 2010 Oct 11, 20:25:43 UTC
# REVISION:2010 Nov 08, 17:39:00 UTC
#=======================================================================
#! /bin/bash

sudo -k

OS=$(zenity --title="Your OS" --text="Choose your OS:" --list --radiolist --column "Select" --column "Choice" true "Ubuntu" false "OpenSuse")
if [ "$?" -eq "1" ]
then
    exit;
fi

PLATFORM=$(zenity --title="32bit or 64bit" --text="32bit (i386) or 64bit (x86-64)?\n(If you don't know, type 'uname -m' in a new console to find out)" --list --radiolist --column "Select" --column "Choice" true "32bit" false "64bit")
if [ "$?" -eq "1" ]
then
    exit;
fi

INSTALL_OR_UPDATE=$(zenity --title="Install or update" --text="New install or update?" --list --radiolist --column "Select" --column "Choice" true "Install" false "Update")
if [ "$?" -eq "1" ]
then
    exit;
fi

case "$PLATFORM" in
"32bit") BITTAG="i386-linux";;
"64bit") BITTAG="x86_64-linux";;
esac

case "$OS" in
"Ubuntu") PKGMGR_PERL="apt-get install perl-tk";;
"OpenSuse") PKGMGR_PERL="zypper perl-Tk";;
esac

case "$INSTALL_OR_UPDATE" in
"Install")

zenity --question --title="Disc space" --text="A full installation requires ~2.3GB of disc space. Press Yes to preceed or No to halt."
if [ "$?" -eq "1" ]
then
    exit;
fi

STARTDIR=$(pwd)

PASSWORD=`zenity --title='Password' --text="Your password is needed to continue:" --hide-text --entry`
if [ "$?" -eq "1" ] ; then
    exit
fi
echo $PASSWORD | sudo -S echo -e '\nPassword test.'
while [ "$?" -eq "1" ]; do
PASSWORD=`zenity --title='Invalid password' --text="Invalid password. Please re-enter a sudo capable password:" --hide-text --entry`
if [ "$?" -eq "1" ]; then
    exit
fi
echo $PASSWORD | sudo -S echo -e '\nPassword test.'
done

echo $PASSWORD | sudo -S $PKGMGR_PERL

wget http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz
tar -xf install-tl-unx.tar.gz

echo -e "The installation process will begin and a window will appear. See here for an example:\nhttp://www.tug.org/texlive/doc/texlive-common/install-lnx-main.png\n\nCheck that paper size is correct. Then click 'Install TeX Live' to continue. (Note that this script is hard coded to work only with the default installation directory)" | zenity --title="Last notification before installation" --text-info --width 500 --height 200

cd $STARTDIR/install-tl-2*
echo $PASSWORD | sudo -S ./install-tl -gui

cd $STARTDIR

zenity --question --title="Install files" --text="Would you like to keep the downloaded installation files? (They are not necessary to use TeXLive)"
if [ "$?" -eq "1" ]
then
    rm -rf install-tl*
fi

echo -e "\nPATH=\$PATH:/usr/local/texlive/2010/bin/$BITTAG; export PATH\nMANPATH=\$MANPATH:/usr/local/texlive/2010/texmf/doc/man; export MANPATH\nINFOPATH=\$INFOPATH:/usr/local/texlive/2010/texmf/doc/info; export INFOPATH\n" >> ~/.profile

zenity --info --title="Information notice" --text="Now fonts will be configured."

echo $PASSWORD | sudo -S cp /usr/local/texlive/2010/texmf-var/fonts/conf/texlive-fontconfig.conf /etc/fonts/conf.d/09-texlive.conf
echo $PASSWORD | sudo -S fc-cache -fsv

zenity --info title="Installation finished" --text="Installation finished. You can periodically run this script at later dates to update your distribution. In order for environment variables to be set, you still need to log out and log back in."

;;
esac

case "$INSTALL_OR_UPDATE" in
"Update")

PASSWORD=`zenity --title='Password' --text="Your password is needed to continue:" --hide-text --entry`
if [ "$?" -eq "1" ] ; then
    exit
fi
echo $PASSWORD | sudo -S echo -e '\nPassword test.'
while [ "$?" -eq "1" ]; do
PASSWORD=`zenity --title='Invalid password' --text="Invalid password. Please re-enter a sudo capable password:" --hide-text --entry`
if [ "$?" -eq "1" ]; then
    exit
fi
echo $PASSWORD | sudo -S echo -e '\nPassword test.'
done

echo $PASSWORD | sudo -S /usr/local/texlive/2010/bin/$BITTAG/tlmgr update --self
echo $PASSWORD | sudo -S /usr/local/texlive/2010/bin/$BITTAG/tlmgr update --all
zenity --info --title="Update finished" --text="TeXlive has been updated."

;;
esac

exit

J'avais pensé aux points qui t'embêtait, et je n'avais pas rendu le mot de passe invisible essentiellement car je voulais que l'utilisateur ait la possibilité d'avoir la fenêtre qui revient en cas d'erreur du mot-de-passe, ce qui est maintenant le cas.

Les dernières modifications sont essentiellement celle de  Matthew D. Mower, une personne très sympathique qui m'a contacté. Grâce à ce contact j'ai d'ailleurs pu voir par moi-même les avantages du code libre et ouvert à tous.

Bonne journée,

mondai

Dernière modification par mondai (Le 09/11/2010, à 15:08)

Hors ligne

#16 Le 11/11/2010, à 04:08

funzy

Re : Script pour installer TeXLive 2011

Bonjour,

Vraiment clair et donc facile à lire ton script.
Deux points que je voulais encore souligner :

Comme les textes sont en anglais et pour rester cohérent il est possible de changer le texte des boutons (mes boutons sont en français) en précisant --ok-label et --cancel-label mais apparemment ce n'est pas possible pour toutes les fenêtres zenity, par exemple :

zenity --question --title="Install files" --text="Would you like to keep the downloaded installation files? (They are not necessary to use TeXLive)" --ok-label="Yes" --cancel-label="No" 

Le second point est en fait une prise de position car j'aime le fait qu'au bout de trois mauvaises entrées du mot de passe qu'on annule la commande donc je propose de faire ça :

# ------- deb
# Je compte le nombre d'entree du mot de passe
nb_inputpwd=1 
# ------- fin
echo $PASSWORD | sudo -S echo -e '\nPassword test.'
while [ "$?" -eq "1" ]; do
# ------- deb
# Je n'autorise que trois mauvaises erreurs
    if [ "$nb_inputpwd" -eq "3" ]; then
    zenity --title='Invalid password' --text="Sorry 3 incorrect password attempts. We are exiting" --error
    exit
    else
# ------- fin
    PASSWORD=`zenity --title='Invalid password' --text="Invalid password. Please re-enter a sudo capable password:" --hide-text --entry`
    if [ "$?" -eq "1" ]; then
    exit
    fi
#------- deb
    # J'incremente mon compteur
    nb_inputpwd=$(( nb_inputpwd+1 ))
#------- fin
    echo $PASSWORD | sudo -S echo -e '\nPassword test.'
# ------- deb
    fi
# ------- fin

J'ai encadré les lignes que j'ai rajoutées. J'ai encore autres choses. Pour ne pas avoir à renseigner le type de machine et de système quand on relance le script on peux écrire ces informations dans un ".conf" .install_update.conf par exemple? Mais à ce propos si "uname -m" renvoie la PLATFORM pourquoi ne pas récupérer la varible ça fera une question de moins à poser

# ------- deb
confile=~/.install_update.conf

ask_OS ()
{
    OS=$(zenity --title="Your OS" --text="Choose your OS:" --list --radiolist --column "Select" --column "Choice" true "Ubuntu" false "OpenSuse")
    if [ "$?" -eq "1" ]
    then
    exit;
    fi
}

ask_PLATFORM ()
{
    PLATFORM=$(zenity --title="32bit or 64bit" --text="32bit (i386) or 64bit (x86-64)?\n(If you don't know, type 'uname -m' in a new console to find out)" --list --radiolist --column "Select" --column "Choice" true "32bit" false "64bit")
    if [ "$?" -eq "1" ]
    then
    exit;
    fi
}

if [ -f $confile ] # test l'existance du fichier
then
    OS=`sed -n 2p $confile`       # Recupere la 2eme ligne du fichier conf
    PLATFORM=`sed -n 4p $confile` # Recupere la 4eme ligne du fichier conf
    if [ "$OS" != "Ubuntu" -a "$OS" != "OpenSuse" ]; then
        # Peut-etre une erreur dans le fichier !
        # Je repose alors la question de l'OS
    ask_OS
                # je note la reponse dans un fichier temporaire
    echo $OS > confile.tmp
               # Remplacer la deuxieme ligne par le contenu du fichier temporaire
    sed -i '2 s/.*/cat confile.tmp/e' $confile 
               # J'efface le fichier temporaire
    rm -f confile.tmp
               # Je n'ai pas trouve une autre methode pour remplacer directement une ligne par une autre dans un fichier.
    fi

    if [ "$PLATFORM" != "32bit" -a "$PLATFORM" != "64bit" ]; then
        # Peut-etre une erreur dans le fichier !
        # Je repose alors la question de la plateforme
    ask_PLATFORM
    echo $OS > confile.tmp
    sed -i '4 s/.*/cat confile.tmp/e' $confile # Remplacer la quatrieme ligne
    rm -f confile.tmp
    fi

else
    ask_OS
    echo -e "Your OS is :\n$OS" > $confile

    ask_PLATFORM
    echo -e "Your Platform is :\n$PLATFORM" >> $confile
# ------- fin
fi

Voilà. Il y a encore un denier truc que je n'ai pas pris le temps de faire, je vais me coucher. Il faudrait peut être rajouté une question du genre

zenity --question --text="Is your system an $PLATFORM $OS ?" --ok-label="Yes" --cancel-label="No" --title="Check your system"

lorsque lis le fichier

Hors ligne

#17 Le 11/11/2010, à 12:44

mondai

Re : Script pour installer TeXLive 2011

Bonjour,

Funzy a écrit :

Vraiment clair et donc facile à lire ton script.

Merci ! En fait la façon de coder de Matthew Mower est vraiment claire, et c'est surtout lui qui a tout clarifié. Mon script était devenu franchement long en rajoutant le choix d'opensuse, et lui a tout clarifié, je le remercie entre autres pour cela.

Funzy a écrit :

Le second point est en fait une prise de position car j'aime le fait qu'au bout de trois mauvaises entrées du mot de passe qu'on annule la commande donc je propose de faire ça :

En fait c'est une bonne idée, mais je préfèrerai rajouter ton nom dans les auteurs : personnellement je tenderai plutôt à être contre les droits d'auteurs (ou totalement contre les droits d'auteur pour être honnête), mais je suis aussi contre le plagiat. Dans le cas où tu ne voudrais pas donner ton nom, ce que je peux comprendre, je pense peut-être rajouter un lien sur ce thread dans le script.

Funzy a écrit :

Mais à ce propos si "uname -m" renvoie la PLATFORM pourquoi ne pas récupérer la varible ça fera une question de moins à poser

C'est une très bonne idée. Je vais voir pour rajouter ça ce week-end, et je ferai un post une fois terminé. Je l'aurai bien fait aujourd'hui, mais là... j'ai l'impression de crouler sous la masse de travail, donc je préfère utiliser mon jour de congé pour travailler sur ce que je fais tongue

Bonne journée,
mondai

Hors ligne

#18 Le 20/11/2010, à 19:19

mondai

Re : Script pour installer TeXLive 2011

Hello,

Un post pour faire part d'une update, pour laquelle je remercie Funzy

Le script est téléchargeable ici :
http://rapidshare.com/files/432072755/i … texlive.sh

Et voici le contenu :

#=======================================================================
# FILE: install_update_texlive.sh
# USAGE: Run from the terminal
# DESCRIPTION: Automatic install/update of TeXLive 2010
# OPTIONS: —
# REQUIREMENTS: Ubuntu or OpenSuse
# BUGS: —
# NOTES: Website: http://alexkrispin.wordpress.com/
# AUTHORS: Alexandre Krispin, k.m.alexandre@gmail.com, Matthew D. Mower, Cédrick Copol
# COMPANY: —
# CREATED: 2010 Oct 11, 20:25:43 UTC
# REVISION: 2010年 11月 20日 土曜日 19:06:34 CET
#=======================================================================
#! /bin/bash

sudo -k

#-------------------------------------------------------------------------------
#  Translations
#-------------------------------------------------------------------------------
#{{{
echo $LANG | grep -i fr;
if [ "$?" == "0" ]; then

#La langue est le français {{{
    SELECT="Sélectionnez"
    CHOISE="Choix"

    IN_UP_TITLE="Installation ou mise à jour"
    IN_UP_TEXT="Souhaitez-vous faire une (ré)installation ou une mise à jour ?"
    IN_UP_TRUE="Installation"
    IN_UP_FALS="Mise à jour"
    DISC_TITLE="Espace disque"
    DISC_TEXT="Une installation complète nécessite ~2,3GB d'espace libre. Appuyer sur Oui pour continuer ou Non pour quitter."
    PASSWD_TITLE="Mot de passe"
    PASSWD_TEXT="Votre mot de passe est nécessaire pour continuer."
    BAD_PASSWD_TITLE="Mot de passe invalide"
    BAD_PASSWD_TEXT="Mot de passe invalide. Veuillez recomposer celui-ci :"
    EXIT_BAD_PASSWD="Désolé 3 mauvais mot de passe donné.\n$0 va se fermer."
    INFO_TEXT="L'installation va commencer et une fenêtre s'ouvrira. Pour exemple voir\nhttp://www.tug.org/texlive/doc/texlive-common/install-lnx-main.png\n\nVérifiez la taille du papier (A4 en général) puis cliquer sur 'Install TeX Live' pour continuer. (Notez que ce script ne fonctionne correctement qu'avec le dossier d'installation par défaut de TeX Live)"
    INFO_TITLE="Dernière notification avant installation"
    FILE_TITLE="Fichiers d'installation"
    FILE_TEXT="Voulez-vous conserver les fichiers d'installation téléchargés ? (Ils ne sont pas nécessaire au fonctionnement de TeX Live)"
    FONT_TITLE="Remarque informative"
    FONT_TEXT="Les fontes vont maintenant être installées."
    IN_END_TITLE="Installation terminée"
    IN_END_TEXT="L'installation est terminée. Vous pouvez périodiquement relancer ce script plus tard afin de mettre à jour votre distribution. Pour appliquer les modifications veuillez fermer votre session puis la réouvrir."
    UP_END_TITLE="Mise à jour terminé"
    UP_END_TEXT="TeXlive a été mis à jour."
    #}}}
else
# Default language is English {{{
    SELECT="Select"
    CHOISE="Choice"

    IN_UP_TITLE="Install or update"
    IN_UP_TEXT="New install or update?"
    IN_UP_TRUE="Install"
    IN_UP_FALS="Update"
    DISC_TITLE="Disc  space"
    DISC_TEXT="A full  installation requires  ~2.3GB of
disc space. Press Yes to preceed or No to halt"
    PASSWD_TITLE="Password"
    PASSWD_TEXT="Your password is needed to continue:"
    BAD_PASSWD_TITLE="Invalid password"
    BAD_PASSWD_TEXT="Invalid password. Please re-enter a sudo capable password:"
    EXIT_BAD_PASSWD="Sorry 3 incorrect password attempts.\n $0 will be closed"
    INFO_TEXT="The installation process will begin and a window will appear. See here for an example:\nhttp://www.tug.org/texlive/doc/texlive-common/install-lnx-main.png\n\nCheck that paper size is correct. Then click 'Install TeX Live' to continue. (Note that this script is hard coded to work only with the default installation directory)"
    INFO_TITLE="Last notification before installation"
    FILE_TITLE="Install files"
    FILE_TEXT="Would you like to keep the downloaded installation files? (They are not necessary to use TeXLive)"
    FONT_TITLE="Information notice"
    FONT_TEXT="Now fonts will be configured."
    IN_END_TITLE="Installation finished"
    IN_END_TEXT="Installation finished. You can periodically run this script at later dates to update your distribution. In order for environment variables to be set, you still need to log out and log back in"
    UP_END_TITLE="Update finished"
    UP_END_TEXT="TeXlive has been updated."
fi
#}}}
#}}}

#===  FUNCTION  ================================================================
#          NAME:  ask_passwd
#   DESCRIPTION:  ask the password, and stop if there is more than 3 errors
#    PARAMETERS:  
#       RETURNS:  
#===============================================================================
# {{{
ask_passwd() 
{
    PASSWORD=`zenity --title='$PASSWD_TITLE' --text="$PASSWD_TEXT" --hide-text --entry`
    if [ "$?" -eq "1" ] ; then
    exit
    fi
    # Count of the times you try to enter the password
    nb_inputpwd=1 
    echo $PASSWORD | sudo -S echo -e '\nPassword test.'
    while [ "$?" -eq "1" ]; do
    # Only 3 errors are authorized
    if [ "$nb_inputpwd" -eq "3" ]; then
        zenity --title='$BAD_PASSWD_TITLE' --text="$EXIT_BAD_PASSWD" --error
        exit
    else
        PASSWORD=`zenity --title='$BAD_PASSWD_TITLE' --text="$BAD_PASSWD_TEXT" --hide-text --entry`
        if [ "$?" -eq "1" ]; then
        exit
        fi
            # Incrementation
        nb_inputpwd=$(( nb_inputpwd+1 ))
        echo $PASSWORD | sudo -S echo -e '\nPassword test.'
    fi
    done
}
#}}}

#-------------------------------------------------------------------------------
#  Select platform automatically, i386 or x64 {{{
#-------------------------------------------------------------------------------
PLATFORM=`uname -m`
case "$PLATFORM" in
    i386 | i486 | i586 | i686 | k7) BITTAG="i386-linux";;
    x86_64 | EM64T) BITTAG="x86_64-linux";;
    *)echo -e "$BAD_PLAT_TEXT" | zenity --title="$BAD_PLAT_TITLE" --text-info --width 500 --height 200;exit;;
esac
#}}}

#-------------------------------------------------------------------------------
#  Install or Update choice {{{
#-------------------------------------------------------------------------------
INSTALL_OR_UPDATE=$(zenity --title="$IN_UP_TITLE" --text="$IN_UP_TEXT" --list --radiolist --column "$SELECT" --column "$CHOISE" true "$IN_UP_TRUE" false "$IN_UP_FALS")
 if [ "$?" -eq "1" ]
 then
    exit;
 fi
#}}}
#-------------------------------------------------------------------------------
#  Case Install {{{
#-------------------------------------------------------------------------------
case "$INSTALL_OR_UPDATE" in
    "$IN_UP_TRUE")

#-------------------------------------------------------------------------------
#  Select OS {{{
#-------------------------------------------------------------------------------

OS=$(zenity --title="Your OS"\
    --text="Choose your OS:"\
    --list\
    --radiolist\
    --column "Select"\
    --column "Choice"\
    true "Ubuntu"\
    false "ArchLinux"\
    false "OpenSuse")
if [ "$?" -eq "1" ]
then
    exit;
    fi
#}}}

#-------------------------------------------------------------------------------
#  Installing a package for the official install script of TeXLive 2010 {{{
#-------------------------------------------------------------------------------
case "$OS" in
    "Ubuntu") PKGMGR_PERL="apt-get install perl-tk";;
    "SUSE LINUX") PKGMGR_PERL="zypper perl-Tk";;
    "ArchLinux") PKGMGR_PERL="pacman -S perl-tk";;
    *) echo -e "$BAD_OS_TEXT" | zenity --title="$BAD_OS_TITLE" --text-info --width 500 --height 200;exit;;
esac
#}}}

    zenity --question --title="$DISC_TITLE" --text="$DISC_TEXT"
    if [ "$?" -eq "1" ]
    then
        exit;
    fi

    STARTDIR=$(pwd)

    ask_passwd

    echo $PASSWORD | sudo -S $PKGMGR_PERL

    wget http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz
    tar -xf install-tl-unx.tar.gz

    echo -e "$INFO_TEXT" | zenity --title="$INFO_TITLE" --text-info --width 550 --height 200

    cd $STARTDIR/install-tl-2*
    echo $PASSWORD | sudo -S ./install-tl -gui

    cd $STARTDIR

    zenity --question --title="$FILE_TITLE" --text="$FILE_TEXT"
    if [ "$?" -eq "1" ]
    then
        rm -rf install-tl*
    fi

    echo -e "\nPATH=/usr/local/texlive/2010/bin/$BITTAG:\$PATH; export PATH\nMANPATH=/usr/local/texlive/2010/texmf/doc/man:\$MANPATH; export MANPATH\nINFOPATH=/usr/local/texlive/2010/texmf/doc/info:\$INFOPATH; export INFOPATH\n" >> ~/.profile

    zenity --info --title="$FONT_TITLE" --text="$FONT_TEXT"

    echo $PASSWORD | sudo -S cp /usr/local/texlive/2010/texmf-var/fonts/conf/texlive-fontconfig.conf /etc/fonts/conf.d/09-texlive.conf
    echo $PASSWORD | sudo -S fc-cache -fsv

    zenity --info title="$IN_END_TITLE" --text="$IN_END_TEXT"

    ;;
esac
#}}}

#-------------------------------------------------------------------------------
#  Case Update {{{
#-------------------------------------------------------------------------------
case "$INSTALL_OR_UPDATE" in
    "$IN_UP_FALS")

    ask_passwd
    
    echo $PASSWORD | sudo -S /usr/local/texlive/2010/bin/$BITTAG/tlmgr update --self
    echo $PASSWORD | sudo -S /usr/local/texlive/2010/bin/$BITTAG/tlmgr update --all
    zenity --info --title="$UP_END_TITLE" --text="$UP_END_TEXT"

    ;;
esac
#}}}

exit

#}}}

Il contient les améliorations de Funzy :
- traduction en français
- sélection plus aisée du type de platform utilisée
- une jolie fonction qui permet permet en plus de demander le password jusqu'à 3 fois au maximum.

Et qq corrections ou modifications de ma part.

Hors ligne

#19 Le 10/01/2011, à 17:53

petilu63

Re : Script pour installer TeXLive 2011

Bonsoir,

Et un nouveau retour positif, un ! J'ai utilisé avec succès le script dans sa dernière version, pour installer TeXLive 2010 et la mettre à jour. Caractéristiques du système : ubuntu 10.04 64 bits, pas d'installation existante de distribution LaTeX. Bravo à mondai et aux autres contributeurs pour leur beau travail !

Une question maintenant : avez-vous une astuce pour spécifier au gestionnaire de paquets que TeXLive est bien installée (créer un paquet à partir de l'installation quoi ?) sur le système ? L'installation de certains logiciels spécialisés réclame en effet toute une dépendance LaTeX (texlive-base, texlive-extra, ... -> la TeXlive des dépôts quoi) que je ne souhaite pas installer.


Ubuntu 10.04 + gnome / Debian Squeeze + openbox
un bon réflexe : documentation ; débutant sur ubuntu : lecture conseillée

Hors ligne

#20 Le 11/01/2011, à 21:27

mondai

Re : Script pour installer TeXLive 2011

Bonsoir,

petilu63 a écrit :

Et un nouveau retour positif, un ! J'ai utilisé avec succès le script dans sa dernière version, pour installer TeXLive 2010 et la mettre à jour. Caractéristiques du système : ubuntu 10.04 64 bits, pas d'installation existante de distribution LaTeX. Bravo à mondai et aux autres contributeurs pour leur beau travail !

Merci beaucoup !

petilu63 a écrit :

Une question maintenant : avez-vous une astuce pour spécifier au gestionnaire de paquets que TeXLive est bien installée (créer un paquet à partir de l'installation quoi ?) sur le système ? L'installation de certains logiciels spécialisés réclame en effet toute une dépendance LaTeX (texlive-base, texlive-extra, ... -> la TeXlive des dépôts quoi) que je ne souhaite pas installer.

Honnêtement là comme ça je n'aurai pas vraiment d'idée. Effectivement quand j'ai voulu installer des logiciels tels que Ktikz, j'ai été obligé d'installer une partie de TeXlive par les dépôts. Cependant, ayant plus de 15 gb sur ma partition / j'avoue que ne m'en suis pas préoccupé et que je n'ai pas cherché de solution à cela.

Mais peut-être y a-t-il une solution, essaie voir de poser ta question là :
http://groups.google.fr/group/fr.comp.text.tex/topics
Et si jamais tu as une réponse, n'hésite pas à revenir ici la donner smile

Bonne soirée !
mondai

Hors ligne

#21 Le 05/03/2011, à 22:58

mondai

Re : Script pour installer TeXLive 2011

Bonsoir,

Par hasard j'avais vu sur le TeX user group français la méthode de quelqu'un pour ne plus avoir le problème de dépendances inutiles correspondantes à la version de 2009 de TeXlive.

Voici le lien vers la page de la méthode pour Debian que j'ai utilisé pour me débarasser des dépendances de texlive 2009 :
http://weblog.elzevir.fr/2008/11/tex-li … bian-like/

J'ai mis ça sur mon blog en modifiant 2 ou 3 trucs (voir à la fin du post, où je mets UPDATE en gras) pour faire marcher la méthode citée ci-dessus avec Ubuntu :
http://alexkrispin.wordpress.com/2010/1 … live-2010/

J'ai également rajouté un petit quelque chose pour ceux qui, comme moi, ne pourraient se satisfaire de la version de Lualatex contenue dans TeXlive 2010 et qui devraient pour cela utiliser un autre dépôt que celui de la distribution texlive.

Bonne soirée,
mondai

PS : je précise que ce post est surtout en réponse à la question que petilu63 m'avait posé.

Dernière modification par mondai (Le 05/03/2011, à 23:02)

Hors ligne

#22 Le 01/06/2011, à 03:20

funzy

Re : Script pour installer TeXLive 2011

Salut,

Ça fait un bout de temps que je ne suis pas venu sur le forum. (J'en avais pas besoin. Aujourd'hui non plus mais je fais un tour)
La méthode qui consiste à créer un paquet avec equivs n'a jamais fonctionner pour moi, config ubuntu 10.04. Étant plutôt fan de kile
que de tout autre éditeur pour LaTeX la seule astuce que j'ai trouvé est d'installer kile en tapant :

apt-get install --no-install-recommends kile

Et avec ça il ne me demande pas d'installer LaTeX.
J'ai vu que tu dis que ça fonctionne pour ta 10.10 donc j'ai du louper quelque chose. Peut-être en donnant la version dans le fichier.
Dès que je teste je reviens.

Cordialement funzy

Hors ligne

#23 Le 02/06/2011, à 19:00

mondai

Re : Script pour installer TeXLive 2011

Salut,

Je n'avais jamais eu de problèmes pour avec cette méthode de mon côté, mais j'ai vu que Manuel Pégourié-Gonnard (celui qui propose cette méthode) en a eu un par la suite. Donc effectivement, cette méthode a sans doute une limite (même si je ne l'ai jamais rencontré).

De mon côté depuis quelques mois je suis passé à Fedora pour utiliser une version de Gnome3 qui fonctionne correctement (je réutiliserai Ubuntu peut-être en Octobre). Je n'ai donc pas utilisé depuis Ubuntu 10.10 cette méthode, de plus j'utilise GVim sans logiciels comme KTikZ, je ne recontre donc plus de problème de dépendances tongue

@+

mondai

PS : au passage tu devrais voir à jeter un coup d'oeil à GVim, il fait vraiment des merveilles pour écrire rapidement, le système des snippets, des mappings et des abbréviations sont extraordinaires sur le plan de l'efficacité à long terme. Le seul défaut que je n'ai pas encore résolu (mais d'après ce que j'ai vu la solution existe, j'y jetterai un coup d'oeil plus tard), c'est pour avoir l'auto-complétion des bibkey dans le fichier *.tex à partir du fichier *.bib. Pour le reste, j'écris comme une fusée.

Dernière modification par mondai (Le 02/06/2011, à 19:07)

Hors ligne

#24 Le 16/08/2011, à 16:29

mondai

Re : Script pour installer TeXLive 2011

Salut,

Juste pour dire que le script marche très bien avec quelques modifications que j'ai faites pour installer TeXlive 2011 avec ubuntu (avec kubuntu il suffit d'installer le paquet zenity en plus).
Le nouveau est maintenant téléchargeable ici :
lien vers le script à télécharger

Bonne journée,
mondai

Dernière modification par mondai (Le 16/08/2011, à 23:44)

Hors ligne

#25 Le 27/11/2011, à 19:08

ratoune2008

Re : Script pour installer TeXLive 2011

Bonsoir !
Question de noob total !
J'ai utilisé le script (qui marche comme un charme ...) pour installer la TeXlive 2011.
Mais je ne me suis pas occupée de TeXlive 2010 installée de la même manière l'année dernière.
1. Donc, je viens de regarder dans mon /usr/local/texlive, j'ai bien deux dossiers qui cohabitent "2010" et "2011".
En fait, j'aurais sans doute dû supprimer 2010 avant 2011 mais je ne l'ai pas fait roll
du coup, quelle manipulation dois-je faire pour simplement supprimer ma TeXlive 2010 que je n'utiliserai plus ? ou en tout cas, que je ne souhaite pas utiliser ?
Rien n'apparaît dans Synaptic...
2. les PATH et compagnie ont été mis à jour, je suppose, ou bien je dois faire qqchose ? Moi je suis vite un peu perdue, ...

En tout cas, merci pour ce script qui facilite la vie ...

R.

Ubuntu 11.04

Hors ligne