GNOME کو systemd کے ذریعے منظم کرنے کے لیے ڈھال لیا گیا ہے۔

بنجمن برگ (بنیامین برگ)، GNOME کی ترقی میں شامل Red Hat انجینئرز میں سے ایک، عمومی GNOME کو سیشن مینجمنٹ میں منتقل کرنے کے کام کے نتائج خصوصی طور پر systemd کا استعمال کرتے ہوئے، gnome-session کے عمل کو استعمال کیے بغیر۔

یہ GNOME میں لاگ ان کو کنٹرول کرنے کے لیے کافی عرصے سے استعمال ہوتا رہا ہے۔ systemd-logind, جو صارف کے مخصوص سیشن کی حالتوں کو ٹریک کرتا ہے، سیشن شناخت کنندگان کا انتظام کرتا ہے، فعال سیشنز کے درمیان سوئچ کرنے کے لیے ذمہ دار ہے، کثیر نشستوں کے ماحول کو مربوط کرتا ہے، ڈیوائس تک رسائی کی پالیسیاں ترتیب دیتا ہے، بند کرنے اور سونے کے لیے ٹولز فراہم کرتا ہے، وغیرہ۔

ایک ہی وقت میں، سیشن سے متعلق فعالیت کا کچھ حصہ gnome-sesion کے عمل کے کندھوں پر رہا، جو D-Bus کے ذریعے انتظام کرنے، ڈسپلے مینیجر اور GNOME اجزاء کو شروع کرنے، اور صارف کی مخصوص ایپلی کیشنز کے آٹورن کو منظم کرنے کے لیے ذمہ دار تھا۔ . GNOME 3.34 کی ترقی کے دوران، gnome-session-specific خصوصیات کو systemd کے لیے یونٹ فائلوں کے طور پر پیک کیا جاتا ہے، "systemd —user" موڈ میں عمل میں لایا جاتا ہے، یعنی ایک مخصوص صارف کے ماحول کے سلسلے میں، نہ کہ پورے نظام کے حوالے سے۔ تبدیلیاں فیڈورا 31 ڈسٹری بیوشن میں پہلے ہی لاگو کر دی گئی ہیں، جو اکتوبر کے آخر میں جاری ہونے کی امید ہے۔

systemd کے استعمال سے ہینڈلرز کی طلب کے مطابق یا کچھ واقعات رونما ہونے پر منظم کرنا ممکن ہوا، نیز ناکامیوں کی وجہ سے عمل کے قبل از وقت ختم ہونے پر زیادہ نفاست سے جواب دینا اور GNOME اجزاء کو شروع کرتے وقت بڑے پیمانے پر انحصار کو سنبھالنا ممکن ہوا۔ نتیجے کے طور پر، آپ مسلسل چلنے والے عمل کی تعداد کو کم کر سکتے ہیں اور میموری کی کھپت کو کم کر سکتے ہیں۔ مثال کے طور پر، XWayland کو اب صرف اس وقت لانچ کیا جا سکتا ہے جب X11 پروٹوکول کی بنیاد پر کوئی ایپلیکیشن چلانے کی کوشش کی جائے، اور ہارڈ ویئر کے مخصوص اجزاء صرف اس صورت میں لانچ کیے جا سکتے ہیں جب اس طرح کا ہارڈویئر موجود ہو (مثال کے طور پر، سمارٹ کارڈز کے ہینڈلرز اس وقت شروع ہوں گے جب کارڈ داخل کیا جائے گا۔ اور جب اسے ہٹا دیا جائے تو اسے ختم کر دیں)۔

خدمات کے آغاز کو منظم کرنے کے لیے مزید لچکدار ٹولز صارف کے لیے ظاہر ہوئے ہیں؛ مثال کے طور پر، ملٹی میڈیا کلیدی ہینڈلر کو غیر فعال کرنے کے لیے، یہ "systemctl -user stop gsd-media-keys.target" کو انجام دینے کے لیے کافی ہوگا۔ مسائل کی صورت میں، ہر ہینڈلر کے ساتھ منسلک لاگز کو journalctl کمانڈ کے ساتھ دیکھا جا سکتا ہے (مثال کے طور پر، "journalctl –user -u gsd-media-keys.service")، سروس میں پہلے ڈیبگ لاگنگ کو فعال کرنے کے بعد ("ماحول = G_MESSAGES_DEBUG=تمام")۔ تمام GNOME اجزاء کو الگ تھلگ سینڈ باکس ماحول میں چلانا بھی ممکن ہے، جو سیکورٹی کی بڑھتی ہوئی ضروریات کے تابع ہیں۔

منتقلی کو ہموار کرنے کے لیے، عمل کو چلانے کے پرانے طریقے کی حمایت کریں۔ منصوبہ بند ہے ایک سے زیادہ GNOME ڈیولپمنٹ سائیکل پر برقرار رہیں۔ اس کے بعد، ڈویلپر gnome-session کی حالت کا جائزہ لیں گے اور غالباً ("ممکنہ" کے طور پر نشان زد) عمل شروع کرنے اور اس سے D-Bus API کو برقرار رکھنے کے لیے ٹولز کو ہٹا دیں گے۔ پھر "systemd -user" کے استعمال کو لازمی افعال کے زمرے میں شامل کر دیا جائے گا، جو سسٹمڈ کے بغیر سسٹمز کے لیے مشکلات پیدا کر سکتا ہے اور اس کے لیے متبادل حل کی تیاری کی ضرورت ہو گی، جیسا کہ کبھی ہوا تھا۔ systemd-logind. تاہم، GUADEC 2019 میں اپنی تقریر میں، بینجمن برگ نے سسٹمڈ کے بغیر سسٹمز کے لیے پرانے آغاز کے طریقہ کار کی حمایت کو برقرار رکھنے کے ارادے کا ذکر کیا، لیکن یہ معلومات ان کے منصوبوں سے متصادم ہے۔ منصوبے کا صفحہ.

ماخذ: opennet.ru

نیا تبصرہ شامل کریں