फ़्लैटपैक 1.6.0 स्व-निहित पैकेज प्रणाली का विमोचन

प्रकाशित नई स्थिर टूलकिट शाखा फ्लैटपैक 1.6, जो स्व-निहित पैकेजों के निर्माण के लिए एक प्रणाली प्रदान करता है जो विशिष्ट लिनक्स वितरण से बंधे नहीं होते हैं और एक विशेष कंटेनर में चलते हैं जो एप्लिकेशन को बाकी सिस्टम से अलग करता है। आर्क लिनक्स के लिए फ़्लैटपैक पैकेज चलाने के लिए समर्थन प्रदान किया गया है, CentOS, डेबियन, फेडोरा, जेंटू, मैजिया, लिनक्स मिंट और उबंटू। फ़्लैटपैक पैकेज फेडोरा रिपॉजिटरी में शामिल हैं और मूल GNOME एप्लिकेशन मैनेजर में बनाए रखे गए हैं।

चाभी नवाचारों फ़्लैटपैक 1.6 शाखा में:

  • В एपीआई पोर्टल добавлен метод CreateUpdateMonitor, позволяющий приложениям отслеживать появление обновлений и запрашивать установку появившегося обновления.
    Для запрета полномочий самостоятельной установки обновлений приложением можно использовать команду «flatpak permission-set flatpak updates $APPID no» (если указать «ask» вместо «no», то каждый раз будет выводиться диалог для подтверждения обновления);


  • Для упрощения создания обработчиков предложена библиотека
    libportal, которая даёт возможность обработки событий без прямого использования API Portal и разбора сигналов, приходящих через D-Bus.
    Libportal предоставляет простые асинхронно работающие прослойки для большинства «पोर्टल";

  • Добавлено новое полномочие «—socket=cups» для предоставления прямого доступа к серверу печати CUPS;
  • Изменены протокол и API для обработки аутентификации. Добавлен аутентификатор для OCI (Open Container Initiative). Реализована поддержка автоматической установки аутентификаторов из внешнего репозитория flatpak. В FlatpakTransaction добавлен callback-обработчик для использования аутентификации по логину и паролю по аналогии с методом аутентификации HTTP basic;
  • Добавлена поддержка защищённых приложений и систем, требующих аутентификации при загрузке;
  • Используемая для изоляции прослойка bubblewrap обновлена до выпуска 0.4.0;
  • Добавлена опциональная поддержка родительского контроля через применение библиотеки libmalcontent, позволяющей ограничить доступ к определённым видам контента;
  • Расширения теперь устанавливаются до приложения, что позволяет получить рабочее приложение сразу после завершения его установки;
  • Переработаны манипуляции с временными файлами, что позволило улучшить работу в условиях недостатка свободного дискового пространства;
  • Для выполнения команды «flatpak enter» больше не требуется использование sudo;
  • В порталы добавлена возможность запуска вложенных изолированных окружений (sub-sandbox) для дочерних процессов;
  • Добавлены новые команды «flatpak permission-set» и «permission-remove» для управления установкой полномочий;
  • Добавлена опция «flatpak install —or-update», выполняющая обновление, если приложение уже установлено;
  • Добавлена команда «flatpak mask» для закрепления версии и запрета установки обновлений;
  • Для образов в формате OCI (Open Container Initiative) добавлена поддержка привязки меток, генерации истории изменений в образе и включения mime-типов docker, помимо mime-типов OCI;
  • В настройки добавлен ключ default-languages для определения списка используемых языков, в дополнение к системному списку.

याद रखें कि फ़्लैटपैक एप्लिकेशन डेवलपर्स के लिए अपने प्रोग्रामों के वितरण को सरल बनाना संभव बनाता है जो नियमित वितरण रिपॉजिटरी में शामिल नहीं हैं, क्योंकि प्रशिक्षण प्रत्येक वितरण के लिए अलग-अलग असेंबली बनाए बिना एक सार्वभौमिक कंटेनर। सुरक्षा के प्रति जागरूक उपयोगकर्ताओं के लिए, फ़्लैटपैक आपको एक कंटेनर में एक संदिग्ध एप्लिकेशन चलाने की अनुमति देता है, जो केवल नेटवर्क फ़ंक्शंस और एप्लिकेशन से जुड़े उपयोगकर्ता फ़ाइलों तक पहुंच प्रदान करता है। नए उत्पादों में रुचि रखने वाले उपयोगकर्ताओं के लिए, फ़्लैटपैक आपको सिस्टम में बदलाव करने की आवश्यकता के बिना नवीनतम परीक्षण और अनुप्रयोगों के स्थिर रिलीज़ स्थापित करने की अनुमति देता है। उदाहरण के लिए, वर्तमान में फ़्लैटपैक पैकेज पहले से ही हैं करने जा रहे हैं लिबरऑफिस, फायरफॉक्स, जीआईएमपी, इंकस्केप, केडेनलाइव, स्टीम, 0 एडी, विजुअल स्टूडियो कोड, वीएलसी, स्लैक, स्काइप, टेलीग्राम डेस्कटॉप, एंड्रॉइड स्टूडियो आदि के लिए।

पैकेज के आकार को कम करने के लिए, इसमें केवल एप्लिकेशन-विशिष्ट निर्भरताएं शामिल हैं, और बुनियादी सिस्टम और ग्राफिक लाइब्रेरी (जीटीके +, क्यूटी, गनोम और केडीई लाइब्रेरी आदि) को प्लग करने योग्य विशिष्ट रनटाइम वातावरण के रूप में डिज़ाइन किया गया है। फ़्लैटपैक और स्नैप के बीच मुख्य अंतर यह है कि स्नैप मुख्य सिस्टम वातावरण के घटकों और सिस्टम कॉल फ़िल्टरिंग के आधार पर अलगाव का उपयोग करता है, जबकि फ़्लैटपैक सिस्टम से अलग एक कंटेनर बनाता है और बड़े रनटाइम सेट के साथ काम करता है, निर्भरता के रूप में पैकेज के बजाय विशिष्ट पैकेज प्रदान करता है। सिस्टम वातावरण (उदाहरण के लिए, गनोम या केडीई प्रोग्राम चलाने के लिए आवश्यक सभी लाइब्रेरी)।

विशिष्ट सिस्टम वातावरण (रनटाइम) के अलावा, एक विशेष के माध्यम से स्थापित किया गया कोष, एप्लिकेशन को काम करने के लिए आवश्यक अतिरिक्त निर्भरता (बंडल) की आपूर्ति की जाती है। संक्षेप में, रनटाइम और बंडल कंटेनर की स्टफिंग बनाते हैं, जबकि रनटाइम को अलग से स्थापित किया जाता है और एक साथ कई कंटेनरों से बांधा जाता है, जिससे कंटेनरों के लिए सामान्य सिस्टम फ़ाइलों को डुप्लिकेट करने से बचना संभव हो जाता है। एक सिस्टम में कई अलग-अलग रनटाइम स्थापित हो सकते हैं (GNOME, KDE) या एक ही रनटाइम के कई संस्करण (GNOME 3.26, GNOME 3.28)। निर्भरता के रूप में एप्लिकेशन वाला एक कंटेनर केवल एक विशिष्ट रनटाइम के लिए बाइंडिंग का उपयोग करता है, रनटाइम बनाने वाले व्यक्तिगत पैकेजों को ध्यान में रखे बिना। सभी गायब आइटम सीधे एप्लिकेशन के साथ पैक किए जाते हैं। जब कंटेनर बनता है, तो रनटाइम की सामग्री को /usr विभाजन के रूप में माउंट किया जाता है, और बंडल को /app निर्देशिका में माउंट किया जाता है।

रनटाइम और एप्लिकेशन कंटेनरों को भरना प्रौद्योगिकी का उपयोग करके बनाया जाता है OSTree, при которой образ атомарно обновляется из Git-подобного хранилища, позволяющего применять методы версионного контроля к компонентам дистрибутива (например можно быстро откатить систему к прошлому состоянию). RPM-пакеты транслируются в репозиторий OSTree при помощи специальной прослойки आरपीएम-ओस्ट्री. कामकाजी माहौल के अंदर पैकेजों की अलग-अलग स्थापना और अद्यतनीकरण समर्थित नहीं है, सिस्टम को व्यक्तिगत घटकों के स्तर पर अद्यतन नहीं किया जाता है, बल्कि समग्र रूप से, परमाणु रूप से इसकी स्थिति को बदलते हुए अद्यतन किया जाता है। अद्यतनों को क्रमिक रूप से लागू करने के लिए उपकरण प्रदान किए जाते हैं, जिससे प्रत्येक अद्यतन के साथ छवि को पूरी तरह से बदलने की आवश्यकता समाप्त हो जाती है।

Формируемое изолированное окружение полностью независимо от используемого дистрибутива, и при надлежащих настройках пакета, не имеет доступа к файлам и процессам пользователя или основной системы, не может напрямую обращаться к оборудованию, за исключением вывода через DRI, и сетевой подсистеме. Вывод графики и организация ввода कार्यान्वित वेलैंड प्रोटोकॉल का उपयोग करके या X11 सॉकेट फ़ॉरवर्डिंग के माध्यम से। बाहरी वातावरण के साथ इंटरेक्शन DBus मैसेजिंग सिस्टम और विशेष पोर्टल एपीआई के आधार पर बनाया गया है। इन्सुलेशन के लिए प्रयुक्त इंटरलेयर बबल रैप और पारंपरिक लिनक्स कंटेनर वर्चुअलाइजेशन प्रौद्योगिकियां सीग्रुप्स, नेमस्पेस (नेमस्पेस), सेककॉम्प और SELinux के उपयोग पर आधारित हैं। पल्सऑडियो का उपयोग ध्वनि आउटपुट के लिए किया जाता है।

स्रोत: opennet.ru

एक टिप्पणी जोड़ें