Ajouter $ HOME / bin à PATH pour un seul utilisateur dans Debian Wheezy avec LXDE

8

Dans Ubuntu, si $ HOME / bin existe, il sera automatiquement ajouté à PATH, mais cela ne se produit pas dans Debian.

Comment l'ajouter de façon permanente à PATH pour un utilisateur donné, mais uniquement pour lui, pas pour tous les utilisateurs? Je veux qu'il soit également valable pour les programmes GUI, pas seulement pour le terminal.

Edit: Pour clarifier, j'utilise LXDE, et à partir d'un gestionnaire de connexion, c'est-à-dire pas startx. .bashrcne fonctionne pas pour les programmes que je démarre en dehors d'un terminal.

sashoalm
la source
Remarque: Puisque vous parlez à la troisième personne, il est possible que l'utilisateur ne soit pas vous. Ensuite, il est considéré comme impoli de modifier ses paramètres vous-même (sauf s'il l'a demandé explicitement, bien sûr).
fkraiem
Ne vous inquiétez pas, l'utilisateur est moi.
sashoalm

Réponses:

8

Il s'est avéré que lightdm(le gestionnaire de connexion que LXDE utilise maintenant) ne source pas ~/.profile.

Ce qui a fonctionné pour moi, c'était de créer ~/.xsessionrc:

if [ -d $HOME/bin ]; then
    export PATH="$HOME/bin:$PATH"
fi

Vous pouvez également ajouter ceci à /etc/X11/Xsession.d/90userbinpathsi vous voulez que tous les utilisateurs en bénéficient (chaque utilisateur bénéficierait de son propre chemin) avec une configuration à l'échelle du système.

sashoalm
la source
2
Ou vous pouvez source le fichier .profile entier (qui pourrait faire plus que simplement définir $ PATH):if [ -f $HOME/.profile ]; then source $HOME/.profile; fi
basic6
1

Vous pouvez essayer le profil / etc /.

nano /etc/profile

Il y aura deux types de PATH, le chemin d'accès pour la racine et le chemin d'accès pour les utilisateurs normaux, non root. Donc, vous ajoutez simplement à la racine ou aux utilisateurs normaux le / $ HOME / bin sur la finale de la ligne Ctrl+Oet Ctrl+Xc'est parti :). N'oubliez pas que vous avez besoin de root pour effectuer cette opération.

Ou, vous pouvez vous rendre chez vous et consulter le profil.

cd /home/YOURUSERNAME
nano .profile

Dans debian, il le fait aussi automatiquement (ajoutez le bac au chemin). Faites un echo $HOMEpour voir ce qu'est la maison.

Rafael Campos Nunes
la source
Ce serait global pour tous les utilisateurs, j'ai précisé spécifiquement "pour un seul utilisateur". Ne serait-il pas préférable d'utiliser à la ~/.profileplace?
sashoalm
@sashoalm, édité :)
Rafael Campos Nunes
D'accord, mais .profilene semble pas du tout exécuté. Est-ce le bon fichier à utiliser? echo $PATHn'affiche pas mes modifications, même à partir d'un terminal. Je n'ai pas ~/.bash_profileou ~/.bash_login.
sashoalm
Essayez de quitter votre session et de vous reconnecter, eh bien je ne sais pas si c'est le bon fichier à utiliser, mais chaque utilisateur en a un, donc ce serait la réponse à votre question ...
Rafael Campos Nunes
Oui, je l'ai fait, mais cela ne semble pas du tout être lu. J'ai posté une nouvelle question à ce sujet - unix.stackexchange.com/questions/131320/…
sashoalm
-1

Dans votre fichier ~ / .bashrc, ajoutez la ligne suivante:

PATH=$PATH:$HOME/bin

Enregistrez-le, puis sourcez le fichier pour prendre effet.

source ~/.bashrc

Vous pouvez ensuite vérifier en exécutant

echo $PATH

Pour exécuter des programmes GUI à partir de la fenêtre de commande Exécuter (Alt + F2), créez un nouveau fichier .xsession vide dans votre répertoire personnel et ajoutez ces lignes:

#!/bin/bash -l
PATH=$PATH:$HOME/bin

Enregistrez-le et rechargez votre session LXDE. J'ai testé en déplaçant xterm dans le répertoire $ HOME / bin et en l'appelant avec Alt + F2 et en démarrant avec succès.

cioby23
la source
Cela fonctionnera pour une session X / programmes GUI, pas seulement pour le terminal, non?
sashoalm
Cela fonctionnera pour les deux cas GUI et terminal.
cioby23
OK, je pensais que les programmes GUI n'héritent pas de .bashrc, à moins d'être démarrés à partir d'un terminal.
sashoalm
Attention, vous pourriez finir par ajouter $HOME/binplusieurs fois à la fin de $ PATH de cette façon: unix.stackexchange.com/questions/124444/…
goldilocks
OK, .bashrc ne fonctionne pas - il semble fonctionner uniquement pour les programmes à partir desquels je démarre xterm, mais pas pour les programmes avec lesquels je commence à utiliser "Alt + F2", c'est-à-dire à partir de LXDE (le DE que j'utilise). Le DE utilise un gestionnaire de connexion, pas startx.
sashoalm