Wie man das Programm nur in GNOME automatisch startet

14

Ich benutze sowohl GNOME als auch KDE SC. In GNOME verwende ich Docky, aber ich verwende es nicht mit KDE. Daher möchte ich, dass Docky nur gestartet wird, wenn ich mich bei GNOME und nicht bei KDE anmelde. In KDE gibt es die Möglichkeit, ein Programm nur in KDE automatisch zu starten. Aber ich kann keine solche Option in GNOME finden.

Wie kann ich das machen?

Danke im Voraus.

ricky
quelle

Antworten:

14

Sie können das Startobjekt in bearbeiten ~/.config/autostartund dieses am Ende hinzufügen:

OnlyShowIn=GNOME

Es ist eine schlecht benannte Option, die jedoch dazu führt, dass KDE die Anwendung nicht startet.

Ressu
quelle
3

Ich habe kde nicht installiert, um dies zu überprüfen, aber ich glaube, das Hinzufügen der Anwendung hier: System -> Einstellungen -> Sitzungen -> Startprogramme ist gnomspezifisch.

Wenn das nicht funktioniert, können Sie das Programm immer in ein Wrapper-Skript einfügen, das den Wert der Umgebungsvariablen $ DESKTOP_SESSION überprüft. Etwas wie das:

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

Hoffe das beantwortet deine Frage!

Anwar
quelle
System -> Einstellungen -> Sitzungen -> Startprogramme ist nicht gnomespezifisch.
Ricky
1

Wenn Sie den Eintrag, der ein Programm startet, nicht finden können, finden Sie ihn möglicherweise auch in /etc/xdg/autostart. Ich weiß, dass sie Nautilus mit der Einstellung OnlyShownIn endlich automatisch in KDE gestartet haben. Das Ändern von Dateien in diesem Verzeichnis ist systemweit, daher möchten Sie möglicherweise die Datei der betreffenden Anwendung kopieren~/.config/autostart/

Anstelle von OnlyShownIn können Sie auch NotShownIn verwenden. Dadurch können Sie nicht nur etwas für den einen Desktop anzeigen, sondern für alle anderen. In diesem Beispiel können Sie Docky in allen Desktop-Managern mit Ausnahme von KDE wie folgt laden:

NotShownIn=KDE;

Wenn Sie nicht möchten, dass es auf einem Desktop gestartet wird, können Sie es in OnlyShownIn=; Zeilen ändern, in denen .desktop-Dateien mit einem Semikolon enden sollen. Das Semikolon wird auch verwendet, um Werte für Einstellungen zu trennen, die mehr als einen Wert gleichzeitig annehmen.

Dieser Trick würde bedeuten, dass Sie jede Desktop-Shell auflisten müssen, die Sie verwenden, um zu verhindern, dass etwas ausgeführt wird. Die Verwendung von NotShownIn=Unitywäre also in Ordnung, wenn Sie nur Unity installiert hätten, aber es würde trotzdem starten, wenn Sie später KDE oder Gnome installieren würden.

Wenn die Desktop-Datei in Ihrem Benutzer-Autostart-Ordner den Start einer Anwendung nicht stoppt, müssen Sie sich mit der Desktop-Datei im Verzeichnis xdg befassen. Dafür würde ich eine Sicherungskopie der Datei erstellen. Anstatt es mit einer bak-Erweiterung oder einem Standard zu kopieren, der später möglicherweise überschrieben wird, tun Sie dies für die imaginäre Anwendung, die in diesem Beispiel badapp genannt wird.

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

Sie können dann die ursprüngliche Desktop-Datei bearbeiten. Wenn etwas kaputt geht und Sie in einem Text-Boot enden, können Sie die Datei wieder in den ursprünglichen Namen umbenennen.

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

Der Standard-Autostart-Ordner für Benutzer für KDE ist, ~/.kde/Autostart/dass KDE die Dinge auf die KDE-Art und Weise ausführt.

Thomas Sisson
quelle
0

System > Preferences > Startup Applications Dies ist die Gnome-Alternative zum KDE-Start-Manager.

Marco Ceppi
quelle
Was Marco gesagt hat, ist meiner Meinung nach DM-spezifisch.
Invertzucker
Ja, aber es ist nicht nur auf GNOME beschränkt. Die dortigen Anwendungen werden auch in KDE gestartet.
Ricky
0

Die andere Möglichkeit, die Autostart-Datei zu bearbeiten, besteht in einer Zeile wie:

OnlyShowIn=GNOME;Unity;
chrisonbuntu
quelle