Comment faire pour démarrer automatiquement le programme uniquement dans GNOME


14

J'utilise à la fois GNOME et KDE SC. Dans GNOME, j'utilise Docky mais je ne l'utilise pas avec KDE. Donc, je voudrais que Docky démarre uniquement lorsque je me connecte à GNOME et non à KDE. Dans KDE, il y a une option pour faire démarrer automatiquement un programme uniquement dans KDE. Mais je ne trouve aucune telle option dans GNOME.

Comment puis-je faire ceci?

Merci d'avance.

Réponses:


14

Vous pouvez modifier l'objet de démarrage dans ~/.config/autostartet l'ajouter à la fin:

OnlyShowIn=GNOME

C'est une option mal nommée, mais elle empêchera KDE de démarrer l'application.


3

Je n'ai pas installé kde pour vérifier cela, mais je pense que l'ajout de l'application ici: Système -> Préférences -> Sessions -> Programmes de démarrage est spécifique au gnome.

Si cela ne fonctionne pas, vous pouvez toujours placer le programme dans un script wrapper qui vérifie la valeur de la variable d'environnement $ DESKTOP_SESSION. Quelque chose comme ça:

#!/bin/bash
if [ $DESKTOP_SESSION == "GNOME" ];then
        myApplication
fi

J'espère que ça répond à ta question!


Système -> Préférences -> Sessions -> Programmes de démarrage n'est pas spécifique au gnome.
ricky

1

Si vous ne trouvez pas l'entrée qui démarre un programme, vous pouvez également la trouver à la /etc/xdg/autostartplace. Je sais qu'ils ont finalement corrigé Nautilus automatiquement à partir de KDE en utilisant le paramètre OnlyShownIn. La modification des fichiers dans ce répertoire est à l'échelle du système, vous pouvez donc vouloir copier le fichier de l'application incriminée dans~/.config/autostart/

Au lieu d'utiliser OnlyShownIn, vous pouvez également nous utiliser NotShownIn. Cela peut vous permettre de ne pas quelque chose pour un seul bureau, mais de le montrer pour tous les autres. Pour cet exemple, vous pouvez charger Docky dans tous les gestionnaires de bureau sauf KDE, en utilisant ce qui suit:

NotShownIn=KDE;

Si vous ne voulez pas qu'il démarre sur n'importe quel bureau, vous pouvez le changer en OnlyShownIn=; Lignes dans les fichiers .desktop sont censés se terminer par un point-virgule. Le point-virgule est également utilisé pour séparer les valeurs des paramètres qui prennent plusieurs valeurs en même temps.

Cette astuce signifierait que vous devez répertorier chaque shell de bureau que vous utilisez pour empêcher quelque chose de fonctionner. Donc, utiliser NotShownIn=Unityserait bien si vous n'avez installé que Unity, mais cela continuerait si vous installiez plus tard KDE ou Gnome.

Si le fichier de bureau dans votre dossier de démarrage automatique de l'utilisateur n'arrête pas le démarrage d'une application, vous devrez traiter le fichier de bureau dans le répertoire xdg. Pour cela, je ferais une copie de sauvegarde du fichier. Au lieu de le copier avec une extension bak, ou quelque chose de standard qui pourrait être écrasé plus tard, faites cela pour l'application imaginaire appelée badapp pour cet exemple.

sudo cp /etc/xdg/autostart/badapp.desktop /etc/xdg/autostart/badapp.desktop.stop

Vous pouvez ensuite modifier le fichier de bureau d'origine. Si quelque chose se casse et que vous finissez par démarrer dans un démarrage de texte, vous pouvez ensuite renommer le fichier avec le nom d'origine.

sudo cp /etc/xdg/autostart/badapp.desktop.stop /etc/xdg/autostart/badapp.desktop

En outre, le dossier de démarrage automatique de l'utilisateur par défaut pour KDE est ~/.kde/Autostart/dû au fait que KDE fait les choses à la manière de KDE.


0

System > Preferences > Startup Applications Il s'agit de l'alternative Gnome au gestionnaire de démarrage de KDE.


Ce que Marco a dit, c'est spécifique au DM je pense.
inverser

Oui, mais il n'est pas limité à GNOME uniquement. Les applications là-dedans démarrent également dans KDE.
ricky

0

L'autre façon de modifier le fichier de démarrage automatique est avec une ligne comme:

OnlyShowIn=GNOME;Unity;
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.