Percayai ikon desktop tanpa mengkliknya secara manual di Ubuntu 18.04 Gnome 3

Aug 29 2018

Setelah memindahkan file .desktop ke lokasi "Desktop" ~/Desktop, ikon tersebut akan ditampilkan di Desktop. Untuk menjalankan pertama Anda harus mempercayai aplikasi tersebut. Apakah ada cara untuk memercayainya secara langsung tanpa mengklik? chmod +x *.Desktopsudah selesai agar file dapat dieksekusi

Jawaban

12 Sander Aug 29 2018 at 13:40

File desktop dapat dipercaya melalui baris perintah:

gio set Your_desktop_file.desktop "metadata::trusted" yes

dan status kepercayaan dapat diperoleh dengan:

gio info Your_desktop_file.desktop | grep "metadata::trusted"

CATATAN:

  • Anda harus menjalankan perintah ini dengan pengguna yang sama sebagai pemilik file desktop
  • Ini hanya berfungsi jika Anda menjalankan perintah di gnome shell (tidak melalui SSH)
  • Untuk melakukan ini secara otomatis saat logon, Anda harus membuat skrip logon yang akan menjalankan skrip, karena ini hanya berjalan ketika Gnome dijalankan. Misalnya Anda dapat membuat file .desktop ~/.config/autostart/yang menjalankan beberapa skrip shell termasuk perintah gio
  • Pastikan nautilus-desktopbenar-benar dimulai. Anda dapat membuat loop sementara dengan operasi sleep 1till nautilus-desktop
  • Ikon tidak akan disegarkan secara otomatis. Anda dapat melakukannya dengan menekan F5 di desktop atau memulai ulang nautilus di skrip mulai otomatis Anda. killall nautilus && nautilus-desktop &(tanda & terakhir adalah untuk memastikan sisa kode Anda akan berjalan. Jika tidak, skrip akan berhenti di sana sampai Anda menutup nautilus-desktopproses lagi)
2 Janos Nov 27 2018 at 13:48

Terinspirasi oleh jawaban bagus dari @Sander, saya cukup senang dengan pendekatan ini di Ubuntu 18.04. Saya menggunakan ini dalam pengaturan pembuatan VM otomatis, di mana pertama-tama ikon desktop ditempatkan, dan kemudian skrip ini disiapkan. Mereka hanya dieksekusi di awal pertama.

Saya membuat file desktop ~/.config/autostart/desktop-truster.desktopdengan konten berikut:

[Desktop Entry]
Name=Desktop-Truster
Comment=Autostarter to trust all desktop files
Exec=~/.config/autostart/desktop-truster.sh
Type=Application

Di sebelahnya ~/.config/autostart/desktop-truster.sh, skrip , yang dipanggil oleh file desktop mulai otomatis:

#!/bin/bash
# Wait for nautilus-desktop
while ! pgrep -f 'nautilus-desktop' > /dev/null; do
  sleep 1
done
# Trust all desktop files
for i in ~/Desktop/*.desktop; do
  [ -f "${i}" ] || break
  gio set "${i}" "metadata::trusted" yes
done
# Restart nautilus, so that the changes take effect (otherwise we would have to press F5)
killall nautilus-desktop && nautilus-desktop &
# Remove X from this script, so that it won't be executed next time
chmod -x ${0}
nobodyspecial Aug 29 2018 at 11:44

Anda harus membuat file .desktop dapat dieksekusi (terpercaya), yang dapat Anda lakukan dengan masuk ke ~ / Desktop di terminal dan mengeluarkan perintah berikut

chmod u+x foo*

Gunakan wildcard yang sesuai dengan kebutuhan Anda, lalu segarkan desktop Anda. Itu akan menjadi lebih banyak usaha daripada mekanisme kepercayaan untuk satu entri, tetapi hemat waktu jika Anda mengimpor katakanlah lebih dari n entri (di mana n adalah jumlah ketidaknyamanan maksimal Anda).

Ada cara untuk memantau direktori dan secara otomatis melakukan ini dengan alat eksternal tetapi saya akan menyarankan Anda untuk secara serius mempertimbangkan implikasi keamanan dari melakukan hal seperti itu.

Tetapi tidak ada cara untuk melakukan ini di dalam DE Anda yang saya sadari.

CATATAN: Ini berfungsi pada KDE tetapi tampaknya tidak bekerja pada Gnome.