# Fink : init.sh sans effet



## sylver (31 Décembre 2004)

Bonjour

Dans la procédure d'installation de Fink, une ligne a été rajoutée à mon fichier .bash_profile pour lancer /sw/bin/init.sh à l'ouverture de mon terminal.
Jusque là tout est normal.

Le truc pas normal, c'est que l'exécution de init.sh n'a aucun effet. Le script est censé modifier les variables PATH, MANPATH & co mais non, il ne change rien.

J'ai lancé le script init.sh tout seul (pour être sûr que le problème ne vient pas de mon .bash_profile) depuis la ligne de commande, et là pareil, aucun effet.
Les droits sont correctement positionnés (-rwxr-xr-x).

Alors avant de me lancer dans le debugging du script (qui sera long et fastidieux vu que le script est plutôt complexe pour mon niveau), auriez-vous une idée ?

Merci.


----------



## GrandGibus (31 Décembre 2004)

peux-tu donner la ligne qui a été rajoutée dans ton .profile ? Perso j'ai (tout à la fin du fichier .profile... je suis sous bash):


> ...
> SHELL=/bin/bash
> *. /sw/bin/init.sh*
> ...



Comment lances-tu (et sous quel shell) le init.sh ? Car de mon coté, depuis le .profile ou à la main, le PATH est bel et bien modifié !


----------



## sylver (31 Décembre 2004)

En fait la ligne qu'il ajoute fait d'abord un test sur l'existence du fichier init.sh, et si ce test est vrai le script est lancé.

```
test -r /sw/bin/init.sh && . /sw/bin/init.sh
```

Le premier réflexe que j'ai eu pour voir ce qui n'allait pas, c'est de commenter cette ligne pour la désactiver, et de lancer le script directement

```
#test -r /sw/bin/init.sh && . /sw/bin/init.sh
. /sw/bin/init.sh
```

Mais pareil, rien n'a bougé.

Pour lancer le script à la main, je mets dans le répertoire /sw/bin et je fais ./init.sh
Et là c'est comme d'hab, un echo $PATH me montre que mon path n'a pas bougé (alors que le script est censé y ajouter le chemin vers /sw/bin).


----------



## Thierry6 (31 Décembre 2004)

selon le shell que tu utilises, tu va peut être devoir lancer init.csh au lieu de init.sh (cas de tcsh) ?


----------



## GrandGibus (31 Décembre 2004)

Quel est ton shell (bash, tcsh, sh, ...) ???

car si je me souviens bien, il y a deux scripts d'init dans Fink: init.sh et init.csh (selon le mode dans lequel on est )


----------



## sylver (31 Décembre 2004)

J'ai un shell bash (par défaut sur Panther), et c'est donc init.sh qui doit être lancé.

Vu que je n'ai pas touché le script, c'est bien celui d'origine et il ne devrait pas y avoir de problème normalement.
Je crois que je vais ajouter en dur dans mon .bash_profile les lignes de code pour initialiser les variables d'environnement $PATH & co (en dernier recours).

Merci à vous en tout cas.


----------



## GrandGibus (31 Décembre 2004)

_bash.profile tu dis ? Car chez moi, c'est le fichier .profile !!!

En tout cas, ça n'explique pas pourquoi en lançant à la main, ça ne fonctionne pas :mouais:.


----------



## sylver (2 Janvier 2005)

C'est effectivement un .bash_profile que j'ai, pas de .profile.
Mais je ne pense pas que ce soit le fond du problème, car mon .bash_profile est bien lancé au démarrage du terminal (je l'utilise déjà pour faire certaines initialisations au démarrage du terminal).


----------

