Apakah mungkin untuk menghapus item dari "Pengaturan Sistem"

17

Saya ingin menghapus atau menonaktifkan beberapa panel pengaturan yang tidak digunakan dalam pengaturan sistem / gnome-control-center untuk menjaga pengguna saya yang lebih "ambisius" untuk mengacaukannya.
Secara khusus, saya ingin menonaktifkan / menghapus yang berikut:

  • Printer (karena kami tidak memiliki yang terpasang pada mesin ini)
  • Detail (karena memungkinkan Anda mengatur tindakan pada media yang dapat dipindahkan)
  • Keyboard (karena memungkinkan Anda mengatur tombol pintas - bukan pelanggar)

Hal ini tampaknya seperti itu harus cukup sederhana (saya bisa menghapus mereka dari menu Applications dengan menetapkan Hidden=truedalam .desktopfile yang berhubungan dengan panel), tetapi mereka keras kepala tetap di System Settings ketika saya melakukan itu.

Apakah saya kehilangan sesuatu, atau apakah kita terjebak dengan panel ini di aplikasi Pengaturan selamanya?

voretaq7
sumber

Jawaban:

16

Mengingat bahwa mengubah izin menyelesaikan tujuan Anda, lihat keajaiban ini:

dpkg-statoverride --update --add root root 640 /usr/share/applications/gnome-printers-panel.desktop
dpkg-statoverride --update --add root root 640 /usr/share/applications/gnome-info-panel.desktop
dpkg-statoverride --update --add root root 640 /usr/share/applications/gnome-keyboard-panel.desktop

Anda dapat menghapus penggantian dengan:

dpkg-statoverride --remove /path/to/file

(tapi perhatikan ini tidak akan mengatur ulang izin asli)

MikeyB
sumber
1
Ini mungkin solusi tujuan umum yang paling elegan (dan tampaknya paling mungkin untuk bertahan di seluruh paket dan rilis peningkatan)
voretaq7
6

OK, saya pikir saya menemukan solusi - gnome-control-centertidak menghormati Hidden=truedalam gnome-whatever-panel.desktopberkas, tapi itu tidak cukup pintar untuk menampilkan panel jika Anda benar-benar menghapus terkait .desktopberkas.

Jadi untuk panel yang saya daftarkan Anda dapat menghapus / menonaktifkannya dengan menghapus file-file berikut:

/usr/share/applications/gnome-printers-panel.desktop
/usr/share/applications/gnome-info-panel.desktop
/usr/share/applications/gnome-keyboard-panel.desktop

Seperti yang dicatat MikeyB dalam komentarnya, membuat file-file ini tidak dapat dibaca oleh "lain" juga merupakan pilihan - Saya menguji ini ( chmod 640) pada kotak cadangan dan tampaknya berfungsi, menonaktifkan panel untuk pengguna "normal" sambil tetap membiarkannya tersedia untuk rootdan anggota dari rootgrup.


Ada dua kelemahan penting dari pendekatan ini:

  1. Ini sepenuhnya menonaktifkan panel itu untuk SEMUA pengguna.
    Anda bahkan tidak dapat memohonnya secara manual dengan menjalankan gnome-control-center infoatau serupa dengan yang disebutkan Radu Rădeanu - Mereka tidak akan diluncurkan.

  2. Pembaruan gnome-control-center& paket terkait dapat mengembalikan panel.
    Ini pada dasarnya berarti memeriksa setelah setiap pembaruan perangkat lunak untuk memastikan mereka masih hilang (atau memiliki izin yang membatasi dengan tepat), dan menghapus / chmodmemasukkan .desktopfile lagi jika perlu.

Untuk tujuan saya tidak satu pun dari mereka adalah masalah besar karena saya mengkonfigurasi mesin ini dari baris perintah pula & panel pengaturan sistem hanya bagi pengguna untuk membuat "tweak kepribadian" kecil jadi jika tidak ada solusi

voretaq7
sumber
1
Daripada menghapus, apakah masih melakukan apa yang Anda inginkan jika Anda membatasi izin baca untuk grup tertentu (yaitu semua orang kecuali root dan Anda)?
MikeyB
@ MikeyB Mungkin - mesin saya akan menguji hal-hal seperti saat ini sedang membangun rilis dengan file yang dihapus jadi saya tidak bisa mengujinya sekarang - itu akan menjadi cara yang baik untuk mengurangi # 1. (Meskipun demikian, kemungkinan masih akan terinjak oleh pembaruan, jadi Anda tetap waspada karena mereka akan kembali.)
voretaq7
Jika Anda melihat ke dalam /usr/share/applications/gnome-info-panel.desktopfile Anda akan melihat bahwa itu menggunakan gnome-control-center info. Jadi, perintah ini akan bekerja tanpa masalah jika Anda menghapus file desktop itu.
Radu Rădeanu
@ RaduRădeanu Tidak, itu tidak akan - Setidaknya tidak pada mesin saya mengujinya. (Jika Anda menjalankan gnome-control-center infosetelah menghapus file desktop panel info info pusat kontrol terbuka, tetapi itu menjatuhkan Anda pada halaman "Semua Pengaturan" - panel tidak memuat.)
voretaq7
3

Tidak, sayangnya Anda tidak dapat menghapus Printer , Detail , atau Keyboard apa pun dari Pengaturan Sistem . Ini disebut "PANEL" dan kode keras dalam gnome-control-centerpaket. Jika Anda menghapus paket ini, Anda tidak akan memiliki Pengaturan Sistem lagi.

Katakanlah Anda menghapus ikon dan nama itu dari panel utama Pengaturan Sistem . Bagaimanapun, pengguna dapat membuka salah satu dari mereka dari terminal menggunakan salah satu dari perintah berikut:

gnome-control-center info
gnome-control-center keyboard
gnome-control-center printers

Lihat man gnome-control-centeruntuk info lebih lanjut.

Radu Rădeanu
sumber
1
Kami pada dasarnya telah menolak akses pengguna kami ke terminal (atau setidaknya membuatnya sangat tidak nyaman ) sehingga meminta mereka memohon sesuatu dengan mengetikkan perintah pada umumnya bukan masalah, tetapi ini lebih atau kurang dari jawaban yang saya harapkan. (Ini kemudian menimbulkan pertanyaan mengapa saya bisa menghapus panel lain dengan cukup mudah dengan menghapus paket yang mendasarinya, tetapi yang khusus ini dilas ke dalam paket dasar sehingga semuanya atau tidak sama sekali, tapi itu kata-kata kasar yang terpisah ...)
voretaq7