আমি অনুমান করছি যে আমার কাছে বিদ্যমান স্কিমাগুলির মধ্যে একটি সম্পাদনা করতে হবে gsettings
তবে আমি জানি না কোনটি। এবং আমি যখন সমস্ত স্কিমা তালিকাভুক্ত করেছি তখন সেগুলির মধ্যে অনেকগুলি রয়েছে।
আমি অনুমান করছি যে আমার কাছে বিদ্যমান স্কিমাগুলির মধ্যে একটি সম্পাদনা করতে হবে gsettings
তবে আমি জানি না কোনটি। এবং আমি যখন সমস্ত স্কিমা তালিকাভুক্ত করেছি তখন সেগুলির মধ্যে অনেকগুলি রয়েছে।
উত্তর:
আপনি যে চাবিটি চান তা হ'ল favorite-apps
স্কিমা আইডি org.gnome.shell
। আপনার পছন্দের অ্যাপ্লিকেশনগুলির তালিকা তৈরি করতে এখন আপনি চালাতে পারবেন
gsettings get org.gnome.shell favorite-apps
অথবা
dconf read /org/gnome/shell/favorite-apps
এটি স্ট্রিংগুলির উদাহরণস্বরূপ একটি অ্যারে প্রদান করবে
['firefox.desktop', 'org.gnome.Terminal.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.gedit.desktop', 'gnome-calculator.desktop']
এখন, এই অ্যারে থেকে কোনও মান মুছে ফেলতে আপনি পাঠ্য প্রক্রিয়াজাতকরণ সরঞ্জামগুলি ব্যবহার করতে পারেন sed
/ awk
যেমন তালিকায় কোনও আইটেম রয়েছে কিনা তা পরীক্ষা করতে এবং একই ফর্ম্যাটটি রেখে (অপ্রত্যাশিত যদিও এটি তাত্পর্যপূর্ণ না হলেও) অপসারণ করতে পারেন এবং একবার আপনি এটি পেয়ে গেলে ঠিক লিখুন ডাটাবেসে নতুন সেটিংস যেমন ধরে নেওয়া যে আপনি সরিয়ে ফেলতে চেয়েছিলেন আপনি চলবেন org.gnome.Nautilus.desktop
(ডাবল উদ্ধৃতিটি নোট করুন):
gsettings set org.gnome.shell favorite-apps "['firefox.desktop', 'org.gnome.Terminal.desktop', 'org.gnome.gedit.desktop', 'gnome-calculator.desktop']"
অথবা
dconf write /org/gnome/shell/favorite-apps "['firefox.desktop', 'org.gnome.Terminal.desktop', 'org.gnome.gedit.desktop', 'gnome-calculator.desktop']"
তবুও, আপনার নিজস্ব ইউটিলিটি ( এপিআই ব্যবহার করেgsettings
) লিখতে সহজ যা এক বা একাধিক ডেস্কটপ ফাইলের নামকে অবস্থানগত পরামিতি হিসাবে গ্রহণ করবে এবং পছন্দগুলি থেকে তাদের সরিয়ে দেবে; আপনাকে শুরু করার জন্য, এখানে একটি অতি প্রাথমিক উদাহরণ python
যা একটি পরমকে গ্রহণ করে (হিসাবে চালিত হয় script.py firefox.desktop
):
#!/usr/bin/env python
from sys import argv
from gi.repository import Gio,GLib
item=argv[1]
gschema = Gio.Settings('org.gnome.shell')
gvalues=gschema.get_value('favorite-apps').unpack()
if item in gvalues: gvalues.remove(item)
gschema.set_value('favorite-apps', GLib.Variant('as', gvalues))