Sinkronkan ikon antara .desktop dan dock
Saya membuat entri .desktop khusus di direktori beranda saya, ~/.local/share/applications/startMyApp.desktopsaya membuatnya sehingga akan menggunakan xterm alih-alih gnome-terminal. Saya ingin itu memiliki tampilan yang berbeda di dermaga dari gnome-terminal saya yang saya gunakan secara interaktif.
The startMyApp.desktopterlihat seperti:
[Desktop Entry]
Type=Application
Name=MyScript
Terminal=false
Exec=xterm -e myScript.sh
Icon=myIcon.png
Saya telah membuat file ikon di ~/.icons/myIcon.png
Ikon muncul dengan benar di browser file default. Ketika dibuka dari peramban berkas, itu mengeksekusi skrip dalam xterm seperti yang diharapkan, namun, ikon di dok muncul sebagai ikon xterm umum lainnya. Dari mana asalnya ikon itu? Apakah itu tertanam dalam biner?
Bagaimana saya bisa mengubahnya? Saya ingin ikon di dok muncul sama seperti yang ditentukan di .desktopfile. Aplikasi yang dibundel dengan Ubuntu memiliki ikon yang sama di dok saat diluncurkan (selain dari titik merah yang menunjukkan berapa banyak jendela yang terbuka).
Jawaban
Anda perlu menambahkan StartupWMClassentri yang tepat ke .desktopfile Anda . Untuk melakukan ini ikuti langkah-langkah di bawah ini.
- Luncurkan aplikasi yang dimaksud.
- Luncurkan jendela Terminal terpisah dan jalankan
xprop WM_CLASS. - Tempatkan kursor di atas jendela aplikasi yang sedang dibuka. Kursor harus berubah menjadi bidik sekarang. Klik. Anda harus mendapatkan
WM_CLASSstring untuk aplikasi di jendela Terminal. Dalam
.desktopfile tersebut tambahkan baris berikutStartupWMClass=OBTAINED-VALUESebagai gantinya,
OBTAINED-VALUEberikan nilai yang Anda dapatkan dari langkah 3 tanpa tanda kutip.
Perbarui dari OP:
juga sepertinya saya perlu memberikan nama untuk contoh xterm. Baris eksekutif sekarang terlihat seperti
xterm -name myApp -e myScript.sh