بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته
تغير إعدادات xfce من سطر الأوامر .
كما تستخدم جنوم قاعدة بيانات dconf و تستخدم أدوات مثل gsettings و dconf لتغير إعداداتها .
https://arfedora.blogspot.com/2017/10/dconf.htmlوكما تستخدم kde5 ملفات xml وأدوات مثل kwriteconfig5 لتعديل إعداداتها .
https://arfedora.blogspot.com/2018/05/kde5.html
سأتكلم هذه المرة قليلا عن xfce التي تستخدم ملفات xml لحفظ الإعدادات وهو قريب جدا من المفهوم المعتمد من قبل kde5.
الفكرة هي إستخدام اداة إسمها xfconf-query التي ممكن إستخدامها للإستعلام عن الإعدادات وأيضا لتغيرها .
ملفات الإعدادات الخاص ب xfce تحفظ بملفات xml وموجودة بعدة اماكن منها في مجلد المنزل الخاص بالمستخدم بالتحديد config/xfce4. أظن هناك اماكن أخرى لاكن لا بأس ليس موضوعنا ساتكلم فقط بعض المعلومات عن اداة xfconf-query .
لنبدأ لاكن أريد أن أطلب منك أن تقوم بإنشاء مستخدم أخر وتدخل عليه للتجارب هكذا أفضل لك .
1-إذا شغلت xfconf-query من دون أي إضافات سيعرض لي كل ال channels المتوفرة .
3,2-قرأت
أحد ملفات الإعدادات نلاحظ ما هو ال channel بالتحديد وهو بشكل بسيط قسم
موجود في ملفات الإعدادات يحتوي مفاتيح وقيم الإعدادات سستتوضح الأمور في
الصور القادمة.
3,2,1- أعدت قراءة ذات الملف لاكن من دون فلترة
نلاحظ إسم ال channel هو keyboards و فيه property إسمها Numlock تاتي إذا
صح التعبير ضمن Default ,قيمة Numlock الأن هي true أي مفعلة والنوع هو
bool وهو ممكن أن يكون true أو false .
4-ممكن من خلال تحديد ال channel (ملاحظة c- إختصار ل channel-- ) عرض كل ال property المتوفرة من خلال خيار l- أي list-- .
5-تغير قيمة Numlock من خلال تحديد ال channel ثم تحديد ال property ثم تحديد ال type أي نوع القيمة ثم خيار s- أي set-- ثم القيمة .
6-ممكن أيضا الإستعلام من خلال تحديد ال channel و ال property .
7-أخيرا أعدت قراءة الملف ووجدت التغير مع الملاحظة إن لم تجدو إختلاف قد يكون هناك مكان أخر للإعدادات له اولوية على هذا المسار أي على config/xfce4. وتتغير الإعدادات هناك.
ملف إعدادات أخر يحتوي مثلا إسم الثيم المستخدم.
بذات الطريقة قمت بتغير الثيم إلى ثيم موجود عندي إسمه Numix مع الملاحظة في حالة كان النوع type نص string ليس بالضرورة أن أحدد النوع لاكن الأفضل ان أضع القيمة بين علامتي تنصيص " " لاكني نسيت ان أفعل هذا في الصورة أما إذا كانت القيمة رقم int ممكن أيضا أن لا احدد النوع وأضع الرقم مباشرتا من دون علامتي تنصيص .
بذات الطريقة قمت بتغير بعض الأشياء في إعدادات مدير نوافذ xfce ونلاحظ حددت أني أريد عند جر الفانذة أن تصبح شفافة وحددت النسبة رقم 50 وهو من النوع int أظن هناك أنواع أخرى مثل unit وغيره ربما تحتاج أن تحدد النوع.
أخيرا لمزيد من المعلومات نكتب man xfconf-query حيث هناك بعض الأشياء ساذكرها بشكل سريع جدا في الأسفل .
1-إذا كنا نريد إضافة شيء غير موجود نحدد ال channel و إسم ومكان ال property و النوع والقيمة ونضيف خيار n- أي create-- إذا كان موجود يتم تغيره إذا لم يكن موجود يتم إنشائه .
2-وهناك خيار r- إختصار ل reset و ممكن أن تستخدم معه أيضا خيار R- إختصار ل recursive لعمل reset لإعدادات property أو أكثر مثال عمل reset لكل الإعدادات في channel إسمه xfwm4 وكل ال property التي تنضوي أسفل property إسمها general.
xfconf-query -c xfwm4 -r -R -p /general
3-إذا إحتجنا تحديد مصفوفة array ممكن بهذه الطريقة مثال عمل ثلاث workspace ثم تحديد أسمائهم .
xfconf-query -c xfwm4 -p /general/workspace_count -s 3
xfconf-query -c xfwm4 -p /general/workspace_names -t string -s "work 1" -t string -s "work 2" -t string -s "work 3"
نحدد النوع ثم نضع القيمة .
أخر ملاحظة أداة xfconf-query تعدل على ملفات xml ولا تلتفت إذا ما كنت تدخل قيمة بالنوع الصحيح الذي يجب أن يكون لهذا يجب الإنتباه .