Bagaimana saya bisa menghapus ikon panel Skype?

27

Saat saya menggunakan indikator Skype Docky, dan ikon Skype hijau tidak terlihat bagus di sebelah semua yang abu-abu - alangkah baiknya untuk menghapus ikon dari baki sistem.

Apakah ini mungkin? Bagaimana saya bisa melakukannya di Ubuntu 12.04 - atau versi sebelumnya lainnya?

harpa
sumber

Jawaban:

19

Menghapus ikon panel Skype dalam 12,04 tanpa menghapussni-qt

  • Jika Anda tidak peduli sni-qt, menghapus ikon itu sesederhana melakukannyaapt-get remove sni-qt sni-qt:i386
  • Menginstal debet yang disediakan Skype bukanlah solusi; semua versi Ubuntu yang dilakukan adalah bundel deb Skype yang sama tetapi membuat sni-qtdependensi untuk mengaktifkan ikon.

Tweak conf-file sederhana atau menginstal / menghapus paket tidak akan melakukannya, kita harus turun dan kotor di sini.

  • sni-qt disediakan oleh perpustakaan bersama ini:

    /usr/lib/i386-linux-gnu/qt4/plugins/systemtrayicon/libsni-qt.so
    /usr/lib/x86_64-linux-gnu/qt4/plugins/systemtrayicon/libsni-qt.so
    
  • Cara yang dijamin untuk menghapus ikon Skype sambil tetap sni-qttersedia untuk digunakan aplikasi lain adalah untuk mencegah Skype memuat pustaka bersama ini.

  • Itu bisa dilakukan dalam satu dari dua cara: cara beradab dan cara bash-hacker brute-force.


1. Sangat disarankan: Gunakan apparmor untuk mencegah Skype dari memuatsni-qt

  • AppArmor adalah kerangka kerja keamanan yang dibangun di dalam kernel Linux yang menetapkan izin untuk apa yang dapat dan tidak dapat diakses oleh suatu program. Ini diaktifkan secara default di Ubuntu.

  • Contoh profil untuk Skype termasuk dalam profil armor aplikasi; Saya telah memodifikasi HANYA untuk mencapai tujuan kami menonaktifkan ikon panel - fitur keamanan lainnya telah dihapus.

  • Anda dapat melihat profil yang ditempel di sini . Baris 24-25 adalah bit yang penting bagi kami.

PERINGATAN : Profil ini TIDAK menyediakan jenis keamanan lainnya - Skype akan berjalan normal. Silakan lihat di sini untuk profil Skype AppArmor yang lebih lengkap yang dapat Anda gunakan jika Anda ingin mengamankan Skype lebih lanjut.

Bagaimana cara menginstall

  • Untuk menginstal, keluar dari Skype jika sedang berjalan dan kemudian buka terminal dengan Ctrl-Alt-T, dan ketik / rekatkan di bawah ini untuk menginstal profil yang ditempel ke direktori profil apparmor Anda. (Anda juga dapat menempelkannya secara manual /etc/apparmor.d/usr.bin.skypejika diinginkan)

    sudo wget -O/etc/apparmor.d/usr.bin.skype http://pastebin.com/raw.php?i=2EYME5eF

  • Kemudian ketik sudo /etc/init.d/apparmor reloaduntuk memuat ulang semua profil, termasuk skype yang baru saja kita tambahkan. Tunggu beberapa detik ...

  • Untuk memeriksa apakah profil diaktifkan, ketikkan sudo apparmor_status | egrep "mode|skype"

    • Hasilnya harus menunjukkan sesuatu seperti di bawah ini: Skype harus setelah "menegakkan mode" tetapi sebelum salah satu dari mode lain:
      21 profil dalam mode menegakkan.
      / usr / bin / skype
      22 profil dalam mode keluhan.
      
  • Mulai Skype, dan ikon panel semoga hilang!

Bagaimana saya bisa menambahkan perilaku ini ke profil Skype AppArmor saya sendiri?

  • Cukup tambahkan baris ini di dekat awal profil, tepat setelah termasuk (mereka hanya mencegah Skype dari membaca / memuat pustaka sni-qt)

    tolak /usr/lib/i386-linux-gnu/qt4/plugins/systemtrayicon/libsni-qt.so r,
    tolak / usr/lib/x86_64-linux-gnu/qt4/plugins/systemtrayicon/libsni-qt.so r,
    

2. Tidak direkomendasikan: hack bash yang jelek

  • Saya hanya akan memberikan pseudocode untuk mencegah yang baru jatuh ke dalam jebakan, tetapi skrip bash sederhana yang melakukan hal berikut cukup untuk menonaktifkan ikon panel juga:
    1. Hapus izin baca dari libsni-qt.so yang sesuai agar skype uid (pengguna) berjalan.
    2. Mulai Skype, tunggu sebentar jadi sudah dimuat.
    3. (Ikon hilang karena Skype tidak dapat memuat sni-qt.)
    4. Kembalikan izin ke libsni-qt.so.
ish
sumber
1
+50 Karena ini juga berfungsi untuk perangkat lunak lain.
MarkovCh1
Luar biasa! Ini adalah tambahan sempurna Skype-Wrappertanpa harus menghapus sni-qtpaket. +1000 untuk Anda teman saya. Tepuk tangan!
Gabriel
2
Masalahnya adalah bahwa "Gunakan apparmor untuk mencegah Skype dari memuat sni-qt" tidak berfungsi dengan Skype yang diinstal dari repositori default Ubuntu. Ketika mencoba menjalankan 'skype' saya hanya mendapatkan informasi bahwa izin / usr / bin / skype ditolak. Hal lain adalah tidak ada ikon untuk aplikasi ini. Menggunakan Ubuntu 13.04. Bisakah saya mendapatkan bantuan?
kcpr
2
Setelah memperbarui aplikasi Skype tidak memulai karena izin lagi: /usr/bin/skype: 8: exec: /usr/lib/skype/skype: Permission denied. Dan masalah ikon ini tampaknya hanya bug sementara, tidak apa-apa sekarang, maaf. Bantuan masih dibutuhkan. Terima kasih.
kcpr
Yang membantu saya adalah menghapus sni-qt: i386 dari sistem 64-bit saya. Ini diperlukan oleh Skype, tetapi tidak dengan - misalnya - Spotify. Pokoknya itu pilihan lain untuk menangani masalah ini, tetapi berbeda maka ini disarankan oleh izx, yang tampaknya menjadi yang terbaik.
kcpr
11

Untuk Ubuntu 11,04 Natty saja:

  1. Melalui command-line-interface (fast) - komunitas OMGubuntu datang dengan jawaban ini :

    di terminal, ketik

    gsettings get com.canonical.Unity.Panel systray-whitelist
    

    Ini akan menghasilkan sesuatu yang mirip dengan:

    ['JavaEmbeddedFrame', 'Mumble', 'Wine', 'Skype', 'hp-systray', 'scp-dbus-service']
    

    Kami ingin menghapus Skype dari daftar putih ini, jadi salin / tempel output ini dalam perintah baru dan hapus entri 'Skype', seperti:

    gsettings set com.canonical.Unity.Panel systray-whitelist "['JavaEmbeddedFrame', 'Mumble', 'Wine', 'hp-systray', 'scp-dbus-service']"
    
  2. Melalui antarmuka pengguna grafis (lebih mudah diakses), seperti yang diusulkan oleh con-f-use dalam menjawab pertanyaan ini . Lakukan saja kebalikan dari apa yang ia usulkan.

Sekarang setelah login berikutnya ikon Skype akan hilang.


Perhatikan bahwa menginstal paket skrip pidgin Instal pidgin-skype akan memungkinkan Anda untuk menambahkan akun Skype ke empati - memungkinkan Anda untuk mengontrol status Skype Anda dengan menu me elegan.

Olivier
sumber
7
Perhatikan bahwa sementara ini berfungsi untuk 11,04 BUKAN 10,10 atau 10,04
Uri Herrera
Jika Anda menginginkan alat grafis, Anda dapat menginstal gconf sudo apt-get install gconf-toolsdan kemudian menjalankan gconf-editorkebalikan dari apa yang dijelaskan di sini: askubuntu.com/questions/43280/…
con-f-use
Terima kasih con-f-use. Apakah maksud Anda dconf, bukan gconf? gconf-editor diinstal secara default tetapi tidak menampilkan entri konfigurasi persatuan untuk saya.
Olivier
d-conf menunjukkan daftar putih panel persatuan
robin0800
3
Tidak berfungsi untuk Unity 2D. Skype tidak ada dalam daftar putih saya: ['JavaEmbeddedFrame', 'Mumble', 'Wine', 'hp-systray'] tetapi masih akan muncul di panel.
Mood
2

Tidak ada ikon di /usr/share/icon/skype.pngdalam sistem saya. Ikon baki bukan untuk memulai, tetapi untuk melaporkan status. Ini menunjukkan status online Anda (online, jauh, dnd, ...) dan juga melaporkan jika pesan baru masuk. Dengan demikian, ini dinamis.

Tampaknya tertanam di Skype binary tanpa ada cara untuk mengubahnya. Saya ingin sekali diperbaiki, karena saya membenci gumpalan hijau itu juga.

MPi
sumber
2

Hapus sni-qtpaket dari sistem Anda, dan itu harus pergi, saya pikir.

dobey
sumber
5
Saya juga berpikir bahwa paket ini sangat penting untuk program lain yang ingin menggunakan panel atas (seperti Dropbox dan WeatherIndicator). Saya tidak ingin pergi mencabut tanah untuk seluruh kebun ketika saya seharusnya bisa mencabut rumput liar saja.
superjudge3
Tidak, Dropbox memiliki integrasi yang tepat dengan API indikator, seperti halnya indikator cuaca. Paket sni-qt hanya digunakan oleh aplikasi Qt yang menggunakan ikon ikon Qt tray, daripada menggunakan Unity Indicator APIs.
dobey
Anda membutuhkan keduanya apt-get remove sni-qt:i386danapt-get remove sni-qt
antitoksik
Ini memperkenalkan beberapa crash bagi saya. Ide buruk.
MarkovCh1
@Syzygy bagaimana? Ada atau tidak ada hubungannya dengan apakah aplikasi akan crash. Jika Anda menghapusnya dan mendapat crash, maka kemungkinan besar itu hanya masalah dalam program itu sendiri.
Dobby
-1

Seperti yang saya tahu, Anda tidak dapat menghapus Skype dari systray tetapi yang dapat Anda lakukan adalah menghapus systray jika Anda tidak memiliki perangkat lunak yang menggunakannya atau mengganti ikon Skype yang ada di sini: /usr/share/icon/skype.pngdengan apa yang Anda inginkan .

Nyamiou The Galeanthrope
sumber
baik, bukan jawaban yang saya harapkan, tapi terima kasih, lebih baik daripada tidak;)
harppu