توسعه دهندگان پروژه openSUSE نسخه جدیدی از نصب کننده Agama (D-Installer سابق) را منتشر کرده اند که برای جایگزینی رابط نصب کلاسیک SUSE و openSUSE توسعه یافته است و به دلیل جداسازی رابط کاربری از اجزای داخلی YaST قابل توجه است. Agama امکان استفاده از فرانتاندهای مختلف را فراهم میکند، به عنوان مثال، یک فرانتاند برای مدیریت نصب از طریق یک رابط وب. برای نصب بستهها، بررسی تجهیزات، دیسکهای پارتیشن و سایر عملکردهای لازم برای نصب، از کتابخانههای YaST همچنان استفاده میشود که در بالای آنها سرویسهای لایهای پیادهسازی میشوند که دسترسی انتزاعی به کتابخانهها از طریق یک رابط D-Bus یکپارچه را دارند.
برای آزمایش، ساختهای زنده با یک نصبکننده جدید (x86_64، ARM64) ایجاد شدهاند که از نصب یک بیلد بهروزرسانی پیوسته openSUSE Tumbleweed و همچنین نسخههای openSUSE Leap Micro، SUSE ALP و openSUSE Leap 16 که بر روی کانتینرهای ایزوله ساخته شدهاند، پشتیبانی میکنند. .
رابط اصلی برای مدیریت نصب با استفاده از فناوری های وب ساخته شده است و شامل یک کنترل کننده است که دسترسی به تماس های D-Bus از طریق HTTP و خود رابط وب را فراهم می کند. رابط وب در جاوا اسکریپت با استفاده از چارچوب React و اجزای PatternFly نوشته شده است. سرویس اتصال رابط به D-Bus و همچنین سرور http داخلی به زبان روبی نوشته شده و با استفاده از ماژول های آماده توسعه یافته توسط پروژه Cockpit ساخته شده است که در پیکربندی کننده های وب Red Hat نیز استفاده می شود. نصبکننده از معماری چند فرآیندی استفاده میکند که به لطف آن، رابط کاربری مسدود نمیشود در حالی که کارهای دیگر در حال انجام است.
در مرحله فعلی توسعه، نصب کننده خدماتی را ارائه می دهد که مسئولیت مدیریت فرآیند نصب، تنظیم محتوای محصول و لیست برنامه های نصب شده، تنظیم زبان، صفحه کلید و تنظیمات محلی سازی، آماده سازی دستگاه ذخیره سازی و پارتیشن بندی، نمایش نکات و موارد کمکی را بر عهده دارند. اطلاعات، افزودن کاربران به سیستم، تنظیمات اتصالات شبکه.
اهداف توسعه Agama عبارتند از حذف محدودیتهای رابط کاربری گرافیکی موجود، گسترش توانایی استفاده از قابلیت YaST در برنامههای کاربردی دیگر، دور شدن از گره خوردن به یک زبان برنامهنویسی (API D-Bus به شما امکان ایجاد افزونهها در زبانهای مختلف را میدهد) و تشویق ایجاد تنظیمات جایگزین توسط اعضای جامعه
تصمیم گرفته شد تا رابط کاربری Agama تا حد امکان برای کاربر ساده شود؛ از جمله، قابلیت نصب انتخابی بسته ها حذف شد. در حال حاضر، توسعه دهندگان در حال بحث در مورد گزینه های ممکن برای پیاده سازی یک رابط ساده تر برای انتخاب برنامه های نصب شده هستند (گزینه اصلی یک نمونه اولیه برای جداسازی دسته ها بر اساس الگوهای استفاده معمولی است، به عنوان مثال، محیط های گرافیکی، ابزارهای کانتینرها، ابزارهایی برای توسعه دهندگان و غیره).
منبع: opennet.ru