Howtos GNU/Linux .: kozaki :. Howtos GNU/Linux

Guide de Survie sous LinuxX - Installation & Configuration des logiciels

Mis à jour le 07/08/2005.

Installer un programme

Les outils, sûrs et puissants depuis longtemps, sont maintenant épaulés d'interfaces graphiques accessibles à tou-te-s, pour la plupart des distributions. Celà étant dit, oubliez pas que l'interface graphique est une "surcouche" à des commandes qui peuvent être tapées à la mano, pour mieux comprendre et/ou mieux contrôler ses actions sur la machine.

Interfaces graphiques pour chercher, installer et supprimer des logiciels

  • Debian, Ubuntu, Mint Linux et quelques autres: Synaptic (il y a aussi Adept, sous Kubuntu par exemple : guide Adept)
  • Mandriva : Rpmdrake
  • ...

1) Si le programme est livré en binaires (pré-compilé):

Vous avez un .rpm (Redhat, Mandrake/Mandriva, Suze, ...) :
rpm -i monprogramme.rpm (-ivh pour plus de détails) ou dpkg -i monprogramme.deb.
he he !Sur Mandrake/Mandriva, utilisez urpmi (en mode graphique ou ligne de commande) avec des sources bien configurées : détail...
attention Il existe généralement plusieurs versions d'un programme, selon le type de processeur (famille 386, alpha...) et la distribution : un rpm pour Suse n'est pas forcément adapté à une RedHat ou une Caldera.
Si une version est déjà installée, vous pouvez être bloqué.
Vous pouvez essayer rpm -Uvh monprogramme.rpm (U pour update). Si Ça ne marche encore pas, rpm -U monprogramme --force. L'opération marchera forcément... mais le programme ne marchera pas à coup sûr, et c'est meme tout à fait déconseillé au débutant --vous etes prévenu !
Vous avez un .deb (Debian, Knoppix, Ubuntu, ...) :
Avec Debian, dpkg -i --force-depends permet d'installer un programme récalcitrant.
Les nouvelles versions de Debian (et des autres distros utilisant dpkg / apt-get) utilisent apt-get. Tapez simplement apt-get install le_programme et le système se débrouillera automatiquement avec les dépendances.
Si c'est du source (.src.rpm), tapez rpm -ivh. Cela vous crée un fichier archive dans /usr/src/(redhat).
Si vous n'êtes pas programmeur, utilisez toujours cette méthode (c'est bien plus simple et rapide qu'install shield sous Windows). Cela marche, même à partir d'un autre disque.
Encore mieux, utilisez un utilitaire qui fait Ça en mode graphique : rpmdrake, kpackage (superbe), gnorpm, etc.

Si c'est un binaire prévu pour une autre distribution : alien !
Ex : alien --to rpm monprogramme.deb fait un rpm à partir d'un deb.

Note : Mandriva semble vouloir également utiliser le gestionnaire de paquetages développé par Conectiva, très avancé, et propose un nouvel outil de gestion de paquets : smart. Il implémente "un algorithme avancé de résolution des dépendances". Son statut est néanmoins considéré comme bêta pour le moment mais vous êtes encouragés à l'utiliser :)
Explication sur le forum mandriva : SMART vs URPMI

2) Si le programme est livré en sources :

  1. Avec un .tar.gz ou .tgz : copiez-le sur le disque Linux, là où Ça vous arrange, puis tar xvzf monprogramme.tgz (la lettre z dé-tarre, dézippe). Puis cd monprogramme/, ouvrez le fichier README ainsi que INSTALL : ils vous donneront les instructions et les commandes à suivre :o) + de détails ci dessous.
  2. si c'est un .gz : gunzip monprogramme.gz
  3. Si c'est un .tar.gz : tar zxvf monprogramme.tar.gz
  4. si c'est un .bz2 : vous avez besoin de bunzip2 (de plus en plus livré en standard) : bunzip2 monprogramme.bz2 ou bzip2 -d monprogramme.bz2.
  5. si c'est du .tar.bz2, faites tar xvjf monfichier.tar.bz2 (j permet à tar de décompresser directement les fichiers "bzippés").
Puis cd monprogramme/ (pour vous placer dans le répertoire créé par tar),
puis ./configure (le ./ indique qu'on veut exécuter (lancer) le fichier configure qui se trouve dans le répertoire courant, car celui-ci n'est pas dans le PATH càd. les endroits connus par un OS pour chercher un exécutable),
puis make (précédé d'un make dep éventuellement), puis make check pour vérifier, puis make install (éventuellement en root si le programme le réclamme).
attention Cependant, compiler un programme hors du gestionnaire de package de votre distrib donc, signifie que ce dernier ne saura pas que vous avez installé le programme compilé. Ce qui risque fort de causer des problèmes ensuite ! Pour éviter les problèmes de dépendances, il vaut donc mieux l'installer tout à fait à part dans le système.
Chez moi, quand je dois compiler un programme, je l'installe dans son propre répertoire par exemple dans : /opt/test/[programme]/ avec toutes ses dépendances. Pour celà je lance en général : ./configure --prefix=/opt/test/[programme].
Sachant que /opt/test est accessible en lecture/écriture pour l'utilisateur standard, ce qui me permet de faire un "make install" sans passer en root (et d'éviter que des fichiers n'aillent où il ne faut pas sans crier gare).
Pour virer le programme... et bé, il faut juste à supprimer le répertoire d'installation :)

Si vous voulez faire un rpm à partir d'un binaire tar.gz : rpm -tb monprogramme.tar.gz, à condition que celle-ci contienne un specfile. C'est mieux pour la désinstallation. Détail sur la construction d'un rpm et de son specfile ici français.
Attention Pour avoir une chance de compiler quelque chose,
vous devez avoir installé les compilateurs (gcc, make, ...)
ainsi que toutes les bibliothèques de développement nécessaires pour le programme (souvent nommées *devel*, ./configure indique celles qui manquent).
Attention ! certaines distributions ne les installent pas par défaut (Caldera, Mandrake/Mandriva sur le 2è cdrom seulement, Corel...), ou vous pouvez aussi avoir une mauvaise version.
Vous les trouverez sur les CDs de votre distribution en installant les "outils de développement", ainsi que sur les mirroirs internet, ou le cas échéant sur rpmfind.net, rpm.pbone.net (si vous utilisez un système basé sur rpm).
Certains programmes peuvent aussi avoir besoin des sources du noyau (situées dans /usr/src/linux) ou des sources de XFree ou Xorg (XFree86-devel*). Vous pourrez alors découvrir les joies du développement !

astuce Jetez un coup d'oeil au configure situé dans le répertoire d'installation (par exemple en tapant ./configure --help). Vous pouvez y voir des options qui peuvent être indispensables dans votre cas. Options que vous n'aurez qu'à ajouter à la ligne de commande. Exemple : ./configure --prefix=le_rep_d_install pour forcer l'installation à se faire à un endroit précis.

Si tout va bien, il n'y a plus qu'à lancer le programme (en tapant son nom au prompt, puis en lui créant un raccourci). Sinon, lisez soigneusement les fichiers d'installation, le configure et le Makefile. Mettez à jour les librairies si on vous le réclame.

Si vous n'y arrivez toujours pas (c'est fréquent) : lisez bien le README ou le INSTALL, il y a souvent des modifications à faire dans le Makefile, puis mailez à l'auteur ou à un newsgroup en précisant bien vos versions de librairies, de gcc, de distribution et de kernel.

astuce Une solution est souvent de mettre les bons paths pour les librairies utilisées par le compilateur.
Éditez le fichier /etc/ld.so.conf, puis placez-y (pour un programme utilisant QT) : /opt/kde/lib (n'oubliez pas d'installer qt-devel), ou (pour un programme utilisant gtk) /usr/include/gtk.
Enfin mettez à jour par ldconfig.

Pour améliorer un programme: voir un peu + loin (suivez le lien)

compile un "petit" script (30Ko) pour compiler, installer localement (sans nécessiter le compte root) et gérer différents "projets".

Ça ne compile pas !bof

Si la compilation plante sur un message du genre undefined reference to xxx, créez dans le répertoire d'où ce message a été lancé un fichier bidon xxx (en tapant touch xxx) ou, mieux, mettez-y le fichier réclamé.

Si la compilation plante sur un missing separator, il doit s'agir d'un problème de tabulations. Des tabulations ont dû être remplacées accidentellement (lors d'un copier-coller par exemple) par des espaces. Faites donc la manip inverse.

S'il vous manque des librairies, mais vous ne savez pas sous quel nom elles se trouvent sur le cdrom, rendez-vous sur la console dans le répertoire des rpm du cdrom (cd /chemin/du/cdrom/repertoire/rpm) et tapez la ligne suivante :

for i in *.rpm;do rpm -qlp $i|grep yacc>/dev/null $$ echo $i;done (dans cet exemple, on cherche le rpm qui contient yacc). Cette astuce est bien entendu valable dans tous les cas où vous cherchez à identifier un paquetage contenant un fichier.

En désespoir de cause : make -i pour terminer la compil en ignorant les erreurs.

Et si make ne trouve pas le compilateur C, faites export CC=/usr/bin/gcc (adaptez selon votre cas).

Exemple d'installation difficile : Gimp 1.1.x
L'installation de Gimp dépend de gtk, qui dépend lui-même de glib. Bien sûr, vous risquez fort d'avoir déjà des anciennes versions de ces programmes. Donc comme pour KDE, commencez par tout retirer (rpm -e --nodeps ...).
RETIREZ AUSSI glib-config et gtk-config, sous peine de conflit de version. À moins que vous ne maîtrisiez assez bien la configuration des programmes pour obliger la nouvelle installation à se faire dans les anciens paths.
Ensuite, compilez classiquement (./configure && make && make install) glib, gtk +, puis gimp.
Arrangez-vous pour que glib-config et gtk-config soient dans le PATH

Requêtes

Quels sont les programmes installés ?

rpm -qa vous affiche les programmes qui ont été installés par rpm. Ça va trop vite ? rpm -qa|less.
C'est dans le désordre ? rpm -qa|sort|less (Notez qu'un programme comme ici sort, qui reÇoit des informations sur son entrée, les traite et les renvoie sur sa sortie à destination d'un autre programme, s'appelle un filtre).
Vous cherchez un package précis ? rpm -qa|grep monpackage. Si cette commande est inopérante, c'est que la base de données sur les packages a été détruite. Reconstruisez-la par rpm --rebuilddb.

Aller plus loin

Compiler plus vite (faire un cluster de compilations)

Si vous avez un réseau de machines Linux avec un environnement de compilation installé, vous devriez installer distcc (http://distcc.samba.org/) sur toutes les machines.

  • Sur la machine cliente, tapez export DISTCC_HOSTS='moi toi lui l_autre'.
  • Sur CHAQUE machine serveur (moi, toi, lui, l_autre), lancez distccd.
  • C'est prêt !
  • Sur la machine cliente, tapez make -j8 CC=distcc (variante : pour le Crel="external", tapez plutôt CXX=distcc).

Hop, votre cluster fonctionne. Vous pouvez vérifier par un top sur les différentes machines. Le gain est proportionnel au nombre de machines. La valeur du chiffre qui suit j doit être d'environ le double du nombre de machines. Les précautions : ne pas utiliser de versions différentes de gcc ou des librairies, ne pas mettre dans la liste des hôtes une machine non disponible. De quoi transformer un réseau de bureautique en méga-cluster. Bluffant.

Faire ses RPM

1) La méthode classique

Si votre système est basé sur RPM, bien sûr, vous pouvez installer les logiciels que vous compilez vous-même par le classique ./configure && make && make install. Le problème, c'est que ce super-programme ne sera pas listé dans les programmes installés (souvenez-vous : rpm -qa), et que la désinstallation ou la mise à jour ne sera pas facile non plus. Pour que votre programme soit intégré au système RPM, vous devez d'abord en faire un RPM. C'est assez facile.

  • Vous devez avoir quelque part une arborescence contenant les dossiers BUILD/ RPMS/ SOURCES/ SPECS/ et SRPMS/. Souvent présente dans /usr/src/RPM.
  • Vous placez le source dans...SOURCE ! (pas obligé de le dézipper)
  • Vous devez disposer d'un fichier .spec dans SPECS. C'est le point difficile. Vous pouvez récupérer ce fichier dans un de vos fichiers .src.rpm avec la formule magique rpm -ih fichier.src.rpm. Ensuite, modifiez-le avec le bon nom de programme, les bonnes dépendance, les bonnes lignes de compilation, etc. Il existe aussi des programmes destinés à faciliter l'écriture du fichier de specs.
  • Dans le répertoire supérieur (RPM/ ici), faites rpm -ba SPECS/fichier_de_specs_de_votre_prog.spec. Surveillez les erreurs, c'est ici que ça risque grandement de rater (mauvaises bibliothèques installées, mauvaises options de configure, etc.)
  • Une fois terminé sans erreur, vous devez avoir un .src.rpm dans SRPMS.
  • Installez par rpm -i SRPMS/votre_prog.src.rpm
  • Vous devriez obtenir un fichier .rpm dans RPMS/votre_architecture.
  • Il ne reste plus qu'à l'installer classiquement (rpm -i mon_programme.rpm)
  • Détail pour les utilisateurs de Mandrake/Mandriva, qui explique notamment comment faire ses .RPM sans etre root, ni devoir les installer en tant que root !
2) La méthode checkinstall
  • Vous ne vous préoccupez pas de l'arborescence ci-dessus : vous désarchivez le source là où ça vous chante et ./configure && ./make
  • Puis checkinstall -R
  • C'est tout. Votre rpm est créé dans /usr/src/RPM et installé en même temps. Vous avez aussi droit à l'option -D pour faire un .deb et -S pour un .tgz de Slackware.
    Seul problème : la gestion des dépendances est moins fine (elle se joue au niveau des fichiers, et non des paquets).

Gestion des sources avec CVS (ou SVN)

Lorsque vous voudrez installer une version récente, voire en développement actif, d'un programme, vous devrez souvent vous raccorder à un serveur CVS (Concurrent Version System)

Qu'est-ce que CVS ?

C'est un gestionnaire de suivi de versions :
Il s'agit d'un serveur qui garde, dans chacun des fichiers qu'il héberge, l'ensemble des modifications qui ont permis d'y accéder. Ces modifications sont datées, signées et commnetées.

Récupérer des fichiers sur un serveur CVS
  • Donnez la racine CVS à laquelle vous voulez vous connecter, et de quelle manière exacte :
    export CVSROOT=:pserver@quelquepart.com
  • Puis, connectez-vous au serveur : cvs login
  • Puis, récupérez vos données : cvs co fichier_indispensable
Liens CVS / SVN
  • Voir le document original de Gérard Delafond

  • Version Control with Subversion (SVN) : version en ligne (html / pdf) de Version Control with Subversion, un livre sur Subversion, un nouveau système de contrôle de version conçu pour remplacer CVS.
  • compile un "petit" script (30Ko) pour compiler, installer localement (sans nécessiter le compte root) et gérer différents "projets".

Quelques programmes qui posent problème

Staroffice/OpenOffice.org :

Voyez la page consacrée aux programmes bureautique et à OpenOffice.org

Un site à aller visiter absolument : http://www.staroffice.online.fr.
Le groupe de discussion est staroffice.fr.support.misc.
Si vous comptez utiliser Java, installez-le préalablement.
Vous pouvez installer StarOffice 5.2 directement à partir du cdrom.
Tapez le nom du binaire en ajoutant en fin de ligne /net. Exemple : soffice.xxxxx.bin .net. Si le programme n'est pas exécutable, copiez-le sur le disque dur, rendez-le exécutable (en tapant dans la console chmod +x le_programme et recommencez la commande.
Demandez le mode expert, et précisez un répertoire d'installation neutre, comme /opt/office52 ou /usr/local/office52.
Après l'installation de base, loggez-vous sous chaque compte utilisateur, placez-vous dans /opt/Office52/program (si c'est bien là que vous l'avez installé), puis, tapez ./setup.
Cela installera 1,7 Mo de données spécifiques à l'utilisateur.
L'utilisateur peut même être un compte distant si vous avez donné un accès NFS au répertoire d'installation de StarOffice (En fait, ne fonctionne pas vraiment depuis la version 5.2). La première session lancée prend 40 Mo de RAM, la deuxième 4 Mo. Donc, StarOffice se prête très bien à l'exploitation depuis des clients légers.
astuce installez un window manager ultra-léger (fluxbox par exemple) avec Staroffice en démarrage automatique.
Comme SO sait à peu près tout faire, vous ne serez pas gêné et vous avez un maximum de ressources disponibles.
Encore pire : pas de WM du tout (lancez soffice directement dans votre .xinitrc ). Dans ce cas, StarOffice démarrera plus vite. Inconvénient : vous ne pourrez pas déplacer les fenêtres.
Pour utiliser l'imprimante système : donnez kprinter comme ligne de commande d'impression (si vous utilisez KDE bien sur).

Si non, lancez Imprimantes (une des icônes du desktop).
Choisir l'imprimante dans la liste, puis installer une nouvelle imprimante. ensuite connecter, taper le nom de l'imprimante puis = puis la commande
Par exemple si l'imprimante est appelée truc, taper : truc=lpr -truc
Le nom avant le = n'est utile que si vous avez plus d'une imprimante. (D'après une contribution de newsgroup)

Si vous utilisez CUPS pour l'impression, vous devez mettre default_queue=qtcups (Merci à Fred Bastok). Pour CUPS, vous aurez aussi le problème de savoir où est l'imprimante. Le chemin demandé est /etc/cups/ppd.

Enfin, sachez que le répertoire des paramètres de StarOffice est ~/office52/user/sofficerc.

Word Perfect

Se lance avec /opt/xwp/wpbin/xwp -lang fr. (Changez le Path selon votre installation).

Problème pour imprimer : Word Perfect ne connaît qu'une liste restreinte d'imprimantes. Si la vôtre est déjà configurée avec ghostscript, il faut procéder en 5 boites de dialogue successives :
Fichier Imprimer...
Imprimante select (prenez l'Apple laser writer, c'est du postscript)
Imprimante créer modifier
Configuration
Destination : choisissez lp ou le nom que vous avez donné à votre imprimante. OUF ! Validez tout, Ça devrait marcher.
Autre méthode : allez chez Corel, récupérez le driver pour DOS qui va bien, renommez-le (WP60ms03.all > wp60ms.us.all pour une bj4200), puis sélectionnez-le. Avantage : vous n'aurez pas une page d'erreur après une impression correcte.

Applixware

Problème pour la langue. Si vous avez installé à la main, pour avoir le FranÇais, il faut supprimer tous les répertoires d'autres langues. Si vous passez par le processus normal d'install, on doit vous demander le choix de la langue.

Amaya v 4.1

(éditeur HTML du W3C) : pour avoir le franÇais : Menu Special->Preferences->General->dialog language -> fr. Vous bénéficierez d'un très bel éditeur HTML, 30 fois plus rapide à démarrer que StarOffice et permettant la vue simultanée et synchronisée en texte source, mode plan, liste des liens, texte définitif HTML, etc. Impressionnant. Malheureusement encore des problèmes de finition et pas de support des frames.

Ispell

le correcteur d'orthographe GNU a une version FranÇaise. Pour corriger un texte : ispell -d franÇais letextequejeveuxcorriger.txt.

Emacs:

Enregistrer du texte : <Ctrl - x Ctrl - s> (Notation emacs : C-x C-s), puis le_nom_du_fichier (si le fichier n'avait pas de nom) dans la zone du bas, nommée mini-tampon.
Ouvrir un nouveau fichier ou un fichier existant : <Ctrl-x .trl-f> (find), puis le_nom_du_fichier.
Voir tous les tampons ouverts : <Ctrl-x .trl-b>.
Passer d'un tampon à l'autre : <Ctrl-x .>, puis les flèches et <Entrée>.
Lancer des commandes : <Alt-x>, puis tetris, doctor, blackbox ou hanoi
Quitter Emacs Ctrl-x .trl-c
Attention En fait, si vous connaissez les raccourcis du shell Bash, vous connaissez les raccourcis emacs. (Vérifiez par set -o dans le shell.code).

VI

Ouvrir un fichier avec le curseur placé sur la première ligne où apparaît le terme toto : vi +/toto le_fichier. La dernière ligne du fichier vi + le_fichier. La 15° ligne : vi +15 le_fichier.
Annuler la dernière commande : u (undo). Annuler l'annulation : <Ctrl-r>.
Aller à la ligne xx : xx <Maj-G>. Aller en bas : <Maj-G>.
Faire un chercher/remplacer global dans le fichier : :%s/ancienne_chaine/nouvelle_chaine/g (s=search, g=global).
Coller ce qui a été coupé : p (paste).
Coller un fichier entier à l'emplacement du curseur : :r nom_du_fichier.
Trouver de l'aide dans vi : <Esc> :help, ou lisez /usr/doc/vim-common-5.6/tutor/tutor.
Ouverture de fichiers multiples (tampons) : :<Ctrl-w>, puis <n> pour ouvrir une demie fenêtre avec un nouveau fichier sans nom, :new nom_du_fichier pour ouvrir une demie fenêtre avec un nouveau fichier ou un fichier existant. :split pour couper en deux la vue existante. Changer le curseur de fenêtre : <Ctrl-w>, puis <flèche_haut> ou <flèche_bas>.
Lancer une commande shell : :!ls et vous aurez la liste des fichiers du répertoire.

Xdoom

ne se lance pas : la commande est rundoom et il ne marche en mode fenêtré qu'en bpp8. attention ce programme utilise la SVGAlib.

Xtel (Minitel)

S'il est trop grand : xtel -petit. Si xtel vous dit qu'il ne trouve pas le réseau local, tapez ifconfig. Si vous n'avez pas de réponse contenant lo, tapez ifconfig -o 127.0.0.1 -p. Ce service doit normalement être lancé automatiquement au démarrage.

xboard

S'il est trop grand xboard -size small (ou même Tiny, vous ne serez pas encombré !).
S'il ne sait pas jouer aux échecs, vous avez oublié d'installer gnuchess.

LaTeX

c'est un processeur de texte.
Deds informations sur http://www.loria.fr/services/tex/general/flshort-3.3.dvi et http://www.loria.fr/services/tex
Utilisez un éditeur de textes bruts quelconque (vi, notepad...).
Écrivez un texte avec des balises spéciales. Enregistrez-le comme mondoc.tex.
Tapez latex mondoc.tex. Cela vous génère un fichier mondoc.dvi (= device independant).
Lisez-le avec xdvi .ondoc.dvi.
Si l'apprentissage des balises ne vous tente pas, essayez lyx ou klyx.

Gnuplot

Traceur de courbes. Taper gnuplot, puis pour les courbes 2D : plot log(x) ou, plot 2*(x)**2+3*(x)+1 (=2x²+3x+1);
pour les courbes 3D : splot sqrt(x)+(y*y). q pour quitter.

Les How-to ont souvent des titres c co om me eÇ Ça a. Lisez-les avec less, et ils seront en gras.

KDE

combien de messages a-t-il provoqués !

Avant tout, il faut définir des PATHS et des variables d'environnement (fonction export)

rajouter les 3 lignes suivantes à /etc/profile (ces PATHS dépendent de la manière dont KDE a été compilé. L'installation standard de KDE2 est dans /usr) :

	export KDEDIR=/opt/kde
	   export PATH=$PATH:$KDEDIR/bin
	   export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$KDEDIR/lib>

Il faut placer startkde dans le fichier de démarrage de X ($HOME/.xinitrc si vous faites startx).

astuce pour déplacer une fenêtre sous KDE, appuyez sur <Alt> et enfoncez le bouton gauche de la souris. Plus besoin d'aller sur la barre de titre ! Pratique si elle dépasse de l'écran ! Pour la redimensioner, <Alt-bouton droit>, pour l'envoyer à l'arrière-plan, <Alt-bouton central>.

Je vous déconseille KDE si vous n'avez pas plus de 96, voire 128Mo de RAM.

Attention, les chemins ont changé dans kde 1.1.2 !!

Gnome

se lance par gnome-session (commande à placer dans le .xinitrc par exemple). Si vous ne voulez que le lanceur d'applications : panel.

Gimp

Voyez les guides news et liens sur Gimp2

Pour enregistrer un gif : il faut d'abord convertir l'image en 256 couleurs, en faisant Image-Indexed (automatisé dans les versions récentes). De toutes faÇons, il n'y a plus de raison d'utiliser le .gif, format propriétaire pour lequel les détenteurs du brevet réclament des royalties. Utilisez plutôt le png.

Si Gimp ne trouve pas les fonts des scripts-fu, installez freefonts (dézippez dans /usr/X11R6/lib/X11/fonts/, puis rajoutez :
FontPath "/usr/X11R6/lib/X11/fonts/freefont/"
dans votre XF86Config). Relancez X.

Pour avoir gimp 1.1.x en franÇais, allez dans le répertoire de langues, tapez msgfmt .o .imp.mo .r.po, et copiez le résultat gimp.mo dans /usr/share/locale/fr/LC_MESSAGES.

Postgresql (base de données relationnelle) version 6.4. (Récemment 7.2)

Supposons que vous avez installé les rpm de Redhat.

Vérifiez que serveur postgres tourne (ps -aux|grep post). Sinon, lancez-le (# /etc/(rc.d/)init.d/postgresql start).

Donnez un mot de passe au root de postgresql, qui s'appelle postgres (passwd postgres).

Devenez postgres (su - postgres).

Créez un utilisateur ordinaire de postgresql (createuser bebert) et son mot de passe, ayant les droits de créer des bases de données.

Devenez bebert (su - bebert).

Modifiez le .code_profile de bebert en y rajoutant le path /var/lib/pgsql. Déconnectez-vous et reconnectez-vous en bebert sous X.

Tapez createdb ma_base_a_moi, puis pgaccess ma_base_a_moi. Ça y est, vous êtes en mode graphique (nécessite tcl/tk). Sinon, tapez psql ma_base_a_moi. Vous avez accès à la base en mode texte. (Si je vous disais que Ça marche même à partir du Psion connecté par p3nfs !!!). Si vous préférez le mode graphique, pgaccess (dans le paquetage postgres-tcl parfois) vous offre une interface sympathique, mais encore incomplète.

Pgaccess est fourni avec une base de démonstration (pgassess/demo/formdemo.sql ) très instructive quant à ses capacités. Pour l'installer :

Créez une base : createdb formdemo. Puis installez la démo : psql -q formdemo <formdemo.sql. Il ne vous reste plus qu'à l'ouvrir : pgaccess formdemo.

Sauvegarder une base :

pg_dump dbname > fzip > filename.dump.gz

Restaurer la base :

createdb dbname
cat filename.dump.gz | gunzip | psql dbname

(Merci à Tuan)

PS : je n'ai pas réussi à lancer postgres ou pgaccess en réseau.

Pour utiliser Postgres en réseau, faites (Merci à G.Gracian)

-décommenter la ligne PGALLOWTCPIP=no et remplacer le no par un yes dans postmaster.init.

-déclarer les machines qui sont autorisées à se connecter dans le fichierpg_hba.conf. Exemple :

host all 192.168.68.52 255.255.255.255 trust #ici, une seule machine a accès à toutes les bases (all) sans authentification

host all 192.168.68.0 255.255.255.0 trust # ici, un réseau

Si vous avez Mandrake 8.0, ajoutez -o "-i" juste après "pg_ctl" ligne 83 de /etc/rc.d/init.d/postgresql

Lancer freeciv :

placez-vous dans le répertoire d'installation. Lancez 2 consoles en tant qu'utilisateur ordinaire (pas root ).
Dans la première, tapez ./serv.
Dans la deuxième ./civ (pareil pour d'autres clients intéressés).
Retournez à la première, où se trouve maintenant un prompt spécial, et tapez start.

Heretic II

Installation par: sh heretic2-demo-x86.run

Lancer Heretic II avec l'accélération 3D : ./heretic2_demo +set 640 glx (ou un autre nombre selon la résolution souhaitée).

Le programme ne marche pas

Vous avez réussi à installer/compiler le programme de vos rêves. L'exécutable est bien exécutable, il est bien dans le PATH, mais il ne démarre pas. Lancez-le à partir d'un xterm au lieu d'utiliser les menus de l'interface graphique. Vous aurez des messages qui vous donneront peut-être la clé du problème.

Si le xterm n'est pas bavard, essayez de lancer le programme par (valable pour les scripts seulement, pas pour les binaires). Vous devriez avoir d'autres renseignements.

Pour les binaires, tapez strace nom_du_prog. En lisant ce qui en sort, vous trouverez ce que le programme tente de faire, et donc aurez une chance d'y remédier.

Et mes applications dos ?

Il existe un émulateur DOS, dosemu, qui tourne soit en console texte (se lance par dos), soit en console graphique : dos in a box, qui se lance par xdos. (Ne lancez surtout pas dos dans une fenêtre graphique !) Son paramétrage n'est pas évident (amusez-vous avec dosemu.conf !). Il est assez performant. Il refuse certaines applications, qui en général refusent également l'environnement Windows (celles qui accèdent directement au mode protégé du processeur).

S'il refuse de démarrer pour cause de VGA font, vérifiez que le fichier /usr/X11R6/lib/X11/fonts/misc/fonts.dir contient :

vga.pcf vga
vga11x19.pcf vga11x19

La version est maintenant 1.0.1 ! Les développeurs assurent qu'il fonctionne comme un vrai DOS. Dans un certain nombre de cas, il apporte même à des applications un environnement meilleur que le vrai DOS, sur lequel il s'appuie (plus de mémoire).

attention Si vous utilisez le vrai DOS, la partition DOS ne doit pas être mountée. Votre $_hdimage doit pointer sur votre disque physique (/dev/disque) dans le /etc/dosemu.conf, par exemple $_hdimage="/dev/hda1". Sinon, vous pouvez utiliser freedos et laisser faire l'installation standard.

Pour le problème du clavier et de l'affichage en FranÇais, j'ai enfin trouvé qu'il y avait un conflit entre l'autoexec.bat de DOS et Linux. Il faut copier l'autoexec.bat en autoexec.lin, le signaler au dosemu.conf ($emubat= "lin"), et mettre en commentaire les lignes qui chargent le clavier et les fontes dans l'autoexec.lin.
Vous verrez démarrer un DOS propre, et avec plus de mémoire que le vrai.

Il faut aussi renseigner le dosemu.conf avec $_rawkeyboard=(on), $_keybint = (on) et $_layout= "fr" pour avoir le FranÇais.

Pour toutes les opérations DOS, si les interfaces graphiques échouent, vous pouvez utiliser les mtools. Le principe est simple : toutes les commandes MSDOS on un équivalent, qui se trouve en rajoutant m devant la commande DOS (mformat, mcopy...). Ça marche parfois mieux que la vraie...

Et mes applications Windows ?

Linux sait aussi leur procurer un environnement. En revanche, wine n'émule que le fonctionnement de Windows, pas la totalité de l'environnement. Les applications Windows (du moins, celles qui veulent bien) tournent directement dans Linux.

Page dédiée : Windows sous Linux !

Si vous installez à partir des sources, n'utilisez pas le sempiternel ./configure..., mais lancez ./tools/wineinstall dans le répertoire des sources. Cela fera toute la compilation et créera un fichier de paramètres ~/.wine/config. Ainsi qu'une mini-arborescence Windows dans le répertoire que vous aurez signalé comme devant se substituer à C:\.

Le lancement se fait par (chemin/vers/)wine monappli.

Si vous avez un Windows quelque part sur la machine, le disque où il se trouve doit être mounté et correctement déclaré dans le wine.conf (c'est son répertoire de mountage que l'on déclarer dans (/usr/local/)etc/wine.conf).

Sur Mandrake/Mandriva, le /etc/wine.conf s'appelle /usr/share/wine/wine-config, que vous générez par winebuild /usr/share/wine/wine.config.default
Exemple :

	[Drive C]
		Path=/mnt/dosc
		[Drive E]
		Path=/ (Ceci pour permettre à wine de savoir quoi faire
		de votre partition Linux. Il la mounte ici en E)

Dans le même fichier, il faut aussi voir les PATHS et le répertoire Temp. Ils doivent correspondre à l'arborescence de votre partition Windows.

Si vous n'avez pas de partition Windows, créez un répertoire qui en tiendra lieu : mkdir -c (/var/wine n'est pas une mauvaise idée non plus). Assignez le path comme suit :
[Drive C]
Path=/c

Dans ce cas (Wine sans Windows), pour installer un programme : wine install.exe. Quand Ça marche (de plus en plus souvent), c'est spectaculaire.

attention Lorsque vous tapez les chemins, les barres de répertoire sont obliques dans le sens UNIX : /.
Rien ne vous empêche de créer un raccourci, comme pour n'importe quel programme Linux (ex : /usr/local/bin/wine /olitec/olifax vous permet de lire vos fax reÇus sous Windows avec un modem Olitec). N'oubliez pas de mettre le chemin du disque Windows entre guillemets s'il y a des espaces dans les noms !
(Ex : wine "/Programs files/monprogramme").
Si Ça ne fonctionne pas, testez avec un programme qui est dans le path wine notepad.
Si Ça marche, essayez wine c:\\monrep\\monprogramme.

Word 7 et Excel 7 fonctionnent de mieux en mieux, mais il y avait encore des problèmes en 2001. On nous promet un fonctionnement sans faille bientôt.

En FranÇais, vous aurez des problèmes pour ouvrir ou enregistrer les fichiers. Wine vous réclamera mso5enu.dll et openenu.dll. Il vous suffit de copier openfra.dll et mso5fra.dll vers les noms réclamés.

astuce Si un programme refuse de fonctionner pour cause de dll , donnez-lui en une (créez un fichier vide de ce nom dans votre Pseudo_C/windows/system ). Wine saura ensuite lui donner la vraie dll émulée.

Nouveauté : Si vous voulez vraiment un émulateur de Windows, installez XWine (http://darken.tuxfamily.org/pages/xwine.html), qui est une surcouche graphique de Wine. De cette manière, vous aurez le menu démarrer et toutes ces choses qui vous manquent tant ;o)

Ne pas confondre avec Winex, qui est une version commerciale modifiée de Wine, destinée à supporter une émulation DirectX.

Autres possibilités pour avoir Linux et Windows :

  • Win4lin 2.0 (http://www.netraverse.com/) est un vrai émulateur PC (commercial) qui semble assez valable mais ne supporte que Windows 9x.
  • VMWare 4.0 (logiciel commercial), à récupérer sur http://www.vmware.com, crée une machine virtuelle (avec BIOS virtuel !!), dans laquelle vous pouvez installer Windows. Grosse puissance nécessaire !! (je fais tourner MS-DOS avec seulement 64 Mo de RAM).
    S'installe par vmware-install.pl. Copier le fichier licence envoyé par e-mail par la société dans /root/.vmware/.
    Le résultat est bluffant.
  • Plex86, l'équivalent en libre. En phase finale de développement.
  • VNC (license GPL) permet d'afficher l'écran de n'importe quelle machine reliée en réseau TCP/IP, donc entre autres d'avoir un Windows dans une fenêtre ;-)))
  • Tant qu'on est dans les émulateurs, Line(http://line.sourceforge.net) fait le contraire de Wine : il fait tourner les applis Linux dans Windows.
Pour lire MS Word sans MS word :
-Le plus efficace : strings letexte.doc (ou strings fichier.doc|fmt -w 65|more). Vous aurez la surprise de lire non seulement le texte, mais aussi le modèle d'imprimante, toutes les corrections, et avec un peu de chance le numéro de carte bleue de l'expéditeur !!
-Le plus définitif : MSWordView (http://www.wvWare.com) vous transforme du .doc en .html .
-Sinon, OpenOffice (licence GPL, basé sur StarOffice)..., wordperfect, Applix
Pour traduire les fichiers excel, et doc je crois :
http://www.ice.ru/~vitus/catdoc/
Par ailleurs, Wingz (http://www.wingz.com/) sait aussi lire les fichiers excel (les graphiques ne passent pas toujours très bien le cap).

Faire des présentation à la powerpoint : utiliser magic point (Merci C.Vidal), kpresenter ou OpenOffice.

Émulation MacOS

Linux sait aussi procurer un environnement aux applications Mac grâce à Mac-on-Linux.
Cet émulateur sous licence GPL permet d'exécuter MacOS sous Linux pour PowerPC (Yellow Dog, ppc, SuSE, etc.). Disponible à: http://www.ifrance.com/macpower

Je veux améliorer un programme, mais je n'y connais rien en programmation

Eh bien, c'est faisable (vive l'open source !)

Prenons un exemple concret. Vous voulez jouer au Grand Père, jeu faisant partie de kpat (en standard sous kde). Problème : la fenêtre est trop petite, et vous êtes bloqué pour finir les parties.

Allez donc faire un tour dans le source. Répertoire kdegames, sous répertoire kpat. Repérez un fichier nommé grandf.cpp (cpp pour crel="external", Ça serait c tout court pour un programme en C). Éditez-le, et vous verrez une ligne comme Ça :
return QSize(700, 476);
Cette ligne fait drôlement penser à la taille de la fenêtre. Sauvegardez-la, mettez la sauvegarde en commentaire (rajoutez // devant) au cas où, et changez 476 par une valeur plus grande. Enregistrez. Ça donne :
// return QSize(700, 476);
return QSize(700, 676); }
Partant du principe que vous aviez déjà compilé les sources, vous devez avoir des fichiers .o un peu partout. Vous pouvez alors faire un make : Ça ira très vite, car tous les programmes qui ont encore leur .o ne seront pas recompilés.
Si vous aviez fait un make clean, vous auriez effacé tous les fichiers .o, et la recompil aurait été nettement plus longue.
Faites ensuite normalement make install, et relancez votre programme.
Maintenant, vous avez un programme qui vous permet de finir les parties même si vous avez de très longues colonnes de cartes. Au passage, envoyez le résultat de votre travail à l'auteur. Pour le tcl/tk, c'est encore plus simple : le code source ne se compile pas et est directement exécutable.

Traduire un programme

Vous pouvez très facilement traduire un programme dans votre langue préférée. À noter que beaucoup de programmes sont prévus pour l'internationalisation, et il existe des fichiers à part où se trouvent tous les items à traduire.

Ces fichiers ont l'extension .po. Si vous n'avez pas le .po, vous pouvez le générer à partir du source du programme en plaÇant en début du fichier en c à traduire les commandes suivantes :

#include <libintl.h>
			#define _(x) gettext(x)
puis en faisant :
xgettext -d le_fichier-de_chaines_pret_a_traduire -k_ -s le_prog_que_je_veux_traduire.c.
Dans ce cas précis, le k_ signifie que vous avez entouré dans le source toutes les chaînes à traduire par une balise _(english-string). Cette balise peut être n'importe quelle suite de caractères, souvent i18n.
Vous obtiendrez un fichier le_fichier-de_chaines_pret_a_traduire.po
Traduisez ensuite le .po. Emacs a un mode spécial pour vous faciliter le travail. Sinon, kbabel.

Compilez-le ensuite : msgfmt -o le_fichier_traduit_binaire.mo -v le_fichier_traduit_source.po .».
Copiez ensuite le .mo dans /usr/share/locale/fr/LC_MESSAGES/.
Relancez votre programme : il est maintenant en FranÇais. Envoyez le .po à l'auteur. C'est encore mieux si vous intégrez une équipe de traducteurs sur Internet, afin de coordonner vos efforts (http://www.traduc.org).

Si le programme n'est pas fait pour l'internationalisation, vous pouvez traduire directement dans le source et recompiler (déconseillé). Bon courage.

Trop cool pour Internet Explorer