J'utilise Linux, et j'aime faire tout mon travail en ligne de commande dans une seule session d'écran, afin de pouvoir redémarrer ma connexion graphique et autres sans perdre mes terminaux. Cependant, lorsque je me déconnecte et me reconnecte à ma session graphique, cela modifie toutes mes variables d'environnement de session, telles que les sessions DBus. Cela signifie qu'après une nouvelle connexion, ma session d'écran a maintenant les anciennes (et mauvaises) variables d'environnement. Alors maintenant, lorsque j'essaie de démarrer des programmes graphiques à partir de ma session d'écran, ils émettent au mieux un avertissement indiquant qu'ils ne peuvent pas se connecter au bus de session. Au pire, ils ne démarrent pas complètement.
Donc, ce que je recherche, c'est un moyen de modifier les variables d'environnement dans une instance d'écran en cours d'exécution, afin que toutes les fenêtres d'écran créées par la suite héritent des nouvelles variables d'environnement. Y a-t-il un moyen de faire cela?
setenv [var [string]] Set the environment variable var to value string. If only var is specified, the user will be prompted to enter a value. If no parameters are specified, the user will be prompted for both variable and value. The environment is inherited by all subsequently forked shells.