私はGNOMEとKDE SCの両方を使用しています。 GNOMEでは、Dockyを使用しますが、KDEでは使用しません。したがって、KDEではなくGNOMEにログインしたときにのみDockyを起動したいと思います。 KDEには、KDEでのみプログラムを自動起動するオプションがあります。しかし、GNOMEにはそのようなオプションはありません。
これどうやってするの?
前もって感謝します。
~/.config/autostart
のスタートアップオブジェクトを編集し、これを最後に追加できます。
OnlyShowIn=GNOME
オプションの名前は貧弱ですが、KDEがアプリケーションを起動しない原因になります。
これを確認するためにkdeをインストールしていませんが、システム->設定->セッション->スタートアッププログラムはgnome固有です。
それが機能しない場合は、環境変数$ DESKTOP_SESSIONの値をチェックするラッパースクリプトにプログラムを常に配置できます。このようなもの:
#!/bin/bash
if [ $DESKTOP_SESSION == "GNOME" ];then
myApplication
fi
これがあなたの質問に答えることを願っています!
プログラムを起動するエントリが見つからない場合は、代わりに/etc/xdg/autostart
でも見つけることができます。 OnlyShownIn設定を使用してKDEで起動するNautilusが最終的に修正されたことを知っています。このディレクトリのファイルの変更はシステム全体で行われるため、問題のあるアプリケーションのファイルを~/.config/autostart/
にコピーすることをお勧めします。
OnlyShownInを使用する代わりに、NotShownInも使用できます。これにより、1つのデスクトップ用ではなく、他のすべてのデスクトップ用に表示することができます。この例では、次を使用して、KDEを除くすべてのデスクトップマネージャーにDockyをロードできます。
NotShownIn=KDE;
デスクトップで起動したくない場合は、OnlyShownIn=;
に変更できます。desktopファイルの行はセミコロンで終わることになっています。セミコロンは、同時に複数の値を取る設定の値を区切るためにも使用されます。
このトリックは、何かがまったく実行されないようにするために、使用するすべてのデスクトップシェルをリストする必要があることを意味します。したがって、Unityのみをインストールしている場合はNotShownIn=Unity
を使用しても問題ありませんが、後でKDEまたはGnomeをインストールした場合は引き続き起動します。
ユーザーの自動起動フォルダー内のデスクトップファイルがアプリケーションの起動を停止しない場合、xdgディレクトリ内のデスクトップファイルを処理する必要があります。このために、ファイルのバックアップコピーを作成します。 bak拡張機能や後で上書きされる可能性のある標準でコピーする代わりに、この例ではbadappと呼ばれる架空のアプリケーションに対してこれを行います。
Sudo cp /etc/xdg/autostart/badapp.desktop /etc/xdg/autostart/badapp.desktop.stop
その後、元のデスクトップファイルを編集できます。何かが壊れて、テキストブートで起動してしまう場合は、ファイルの名前を元の名前に戻すことができます。
Sudo cp /etc/xdg/autostart/badapp.desktop.stop /etc/xdg/autostart/badapp.desktop
また、KDEのデフォルトのユーザー自動起動フォルダーは~/.kde/Autostart/
です。これは、KDEがKDEの方法で処理を行うためです。
System > Preferences > Startup Applications
これは、KDE Startup ManagerのGnomeの代替です。
自動起動ファイルを編集するもう1つの方法は、次のような行を使用することです。
OnlyShowIn=GNOME;Unity;