ログイン画面の上部パネルにアイコンを追加することは可能ですか?


10

ログイン画面の上部パネルにアイコン(デフォルト以外)を追加することは可能ですか?

ここに画像の説明を入力してください

はいの場合、デフォルト(オンボード、サウンド、ネットワークマネージャーなど)以外のどのアプリケーションアイコンがログイン画面のトップパネルに追加されますか?それをどのように追加しますか?

Ubuntu 13.10を実行しています


そのlightdmログインマネージャなので、ファイルを/usr/share直接編集する必要があります。私は...これを許さlightdmカスタマイザーがあったと思うし、背景を変更するが、それはまだ、それ以上動作するか、私にはありません
Wilf

1
この壁紙を入手できますか?

@Utkarsh私は、Google画像検索から上記の画像をダウンロードしました。
Avinash Raj 2014

回答:


14

12.04を使用していますが、13.10でも機能します。

はい、ユニティグリーターのインジケーターを変更することは可能です。GSettingsを使用して設定を変更することもできますが、unity-greeterはlightdmユーザーによってのみ実行されるため、設定は他のユーザーに影響を与えないため、.overrideファイルを作成するのが最も簡単です。

1. デフォルトのインジケーターを確認する

ファイルdconf-editorまたはint /usr/share/glib-2.0/schemas/com.canonical.unity-greeter.gschema.xmlファイルでデフォルトのインジケーターを確認できます。後者のファイルには、次のようなキーがあります。

 <key name="indicators" type="as">
  <default>['ug-keyboard', 'ug-accessibility', 'session', 'datetime', 'power', 'soundmenu', 'application']</default>
  <summary>Which indicators to load</summary>
</key>

、それらは私にとってデフォルトです。最初のものを確認してください。

13.10では、このキーは次のようになります。

<key name="indicators" type="as">
  <default>['ug-accessibility', 'com.canonical.indicator.keyboard', 'com.canonical.indicator.session', 'com.canonical.indicator.datetime', 'com.canonical.indicator.power', 'com.canonical.indicator.sound', 'application']</default>
  <summary>Which indicators to load</summary>
</key>

2。利用可能なインジケーターを確認する

/usr/lib/indicators3/7/ディレクトリまたはディレクトリで使用可能なインジケーターを確認できます/usr/share/unity/indicators/

3. オーバーライドファイルを書き込む

同様の内容のファイルを作成して保存します /usr/share/glib-2.0/schemas/myoverride.gschema.override

12.04の場合

[com.canonical.unity-greeter]
indicators=['ug-keyboard', 'ug-accessibility', 'session', 'datetime', 'power', 'soundmenu', 'application', 'messaging']

13.10の場合

[com.canonical.unity-greeter]
indicators=['ug-accessibility', 'com.canonical.indicator.keyboard', 'com.canonical.indicator.session', 'com.canonical.indicator.datetime', 'com.canonical.indicator.power', 'com.canonical.indicator.sound', 'application', 'messages']

12.04バージョンでは、メッセージインジケーターをデフォルトリストの12.04 に追加しました。13.10バージョンでは、メッセージインジケーターを13.10のデフォルトリストに追加しました。STEP 1に示したデフォルトのリストにそれらを追加しただけですが、それを行うこともできます。または、ログイン画面に表示させたくない場合は、デフォルトのインジケーターからいくつか削除することができます。(ウォッチアポストロフィ用アウト。)重要:あなたは維持する必要が12.04で「UG-キーボード」「セッション」リスト内のインジケータを、そうしないでくださいあなたはデフォルトの線でそれらを持っている場合は、それらを削除するか、またはlightdmがスタックします無限ループで。(ここのよう

:オーバーライド・ファイルに命名規則内のファイルの場合は/usr/lib/indicators3/7/『libmessaging』や、ファイル名の前の「libに」ディレクトリので、私たちは『libmessaging.so』を使用することができますlibmessaging.soという名前のファイルを、重要でない「の.so」エンディング「メッセージング」。/usr/share/unity/indicators/ディレクトリ内のファイルの場合、ファイル名の前にある「com.canonical.indicator」。重要ではないので、「com.canonical.indicator.bluetooth」ファイルの場合、「com.canonical.indicator.bluetooth」または単に「bluetooth」を使用できます。

4.バックアップ(念のため)

/usr/share/glib-2.0/schemas/gschemas.compiledファイルのバックアップを作成します。

5.コンパイル

結局この実行

sudo glib-compile-schemas /usr/share/glib-2.0/schemas

6.結果を確認する

この後、ログアウトして、機能するかどうかを確認してください。または、ターミナルから試行する場合は、ログアウトせずにログイン画面のテストを行うこともできます。

lightdm --test-mode

または

unity-greeter --test-mode 

12.04では、メッセージインジケーターは機能しましたが、プリンターメニューインジケーターは機能しません。13.10でメッセージインジケーターを使用してテストしましたが、表示されませんでしたが、どちらもエラーを生成しませんでした。そのため、グリーター画面に表示されないように設計されていると思います。私はチェックして/usr/share/unity/indicators/com.canonical.indicator.messages、ファイルを、それはそれは、セッションインジケータが持っているなどのような[desktop_greeter]セクションを持っていないことを確認しました。したがって、メッセージインジケーター(または[desktop_greeter]セクションのない別のインジケーター)をログイン画面に表示したくない場合(ほとんど役に立たない場合でも)、/usr/share/unity/indicators/ディレクトリ内のファイルも編集する必要があります。そのファイルに[desktop]セクションのコピーを作成し、そのコピーの名前を[desktop_greeter]セクションに変更します。例えば、私がこのファイルで終わったメッセージインジケータの場合/usr/share/unity/indicators/com.canonical.indicator.messages

[Indicator Service]
Name=indicator-messages
ObjectPath=/com/canonical/indicator/messages
Position=50

[desktop]
ObjectPath=/com/canonical/indicator/messages/desktop

[phone]
ObjectPath=/com/canonical/indicator/messages/phone

[desktop_greeter]
ObjectPath=/com/canonical/indicator/messages/desktop

ファイルでこの変更を行った後、メッセージインジケータは13.10のログイン画面にも表示されました。

何かがうまくいかず、ログイン画面が表示されない場合は、仮想コンソールに切り替えてCTRL+ ALT+ F1バックアップgschemas.compiledファイルを復元してください。または、myoverride.gschema.overrideファイルを削除してsudo glib-compile-schemas /usr/share/glib-2.0/schemas再度実行してください。lighdtmが無限ループに陥り、仮想コンソールに切り替えられない場合は、ALT+ PrtSc+ Eマジックキーのコンボを押すだけでlightdmが強制終了され、その後、仮想コンソールに切り替えて修復を行うことができます。

どの指標を使用できますか?わかりません。デフォルトしかありませんが、上記のディレクトリにインストールされるものならどれでも試すことができます。(または、いつものように独自のインジケーター書くこともできます。)

これらすべてのソースですか?私はコードを調べました:リンクリンク


libmessaging.soファイルを見つけてコピーし、それを/usr/lib/indicators3/7ディレクトリに貼り付けますか?
Avinash Raj

@AvinashRajいいえ、Unity-greeterがインジケーターを探すディレクトリがバージョンによって異なる可能性があることを意味しました。私が得ることができたソースコードから、ユニティグリーターがインジケーターを検索する2つのディレクトリがあることがわかります。/usr/share/unity/indicatorsバージョンごとに同じに見えますが、/usr/lib/indicators3/7ディレクターは、バージョンによって異なる場合があります。したがって、インストールされているデフォルトのインジケーターを検索し、それらが格納されている場所を確認し、そのディレクトリを調べて使用可能なインジケーターを確認するだけで、リストでそれらのインジケーターの名前を使用できます。
鷹匠


@AvinashRajこれら2つのディレクトリからすべてのインジケーターを試すことができます。usr/lib/...ディレクトリからのものを使用する場合は、上記で記述した命名規則が適用されるのでsyncindicator十分ですが、使用することlibsyncindicator.soもできます。他のディレクトリについては、ファイルの名前全体を使用することも、com.canonical.indicator.セクションを省略することもできます。:だからあなたの場合にはオーバーライド・ファイルに有効な行はこのようなものになるだろうindicators=['libsyncindicator.so', 'printersmenu', 'libapplication', 'com.canonical.indicator.sound', 'messages']
鷹匠

私は重大な状況に陥りたくないので、ubuntu 13.10で試してみて、動作するかどうか通知してください。
Avinash Raj
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.