Издавање система самодовољних пакета Флатпак 1.14.0

Објављена је нова стабилна грана Флатпак 1.14 алата, која обезбеђује систем за прављење самосталних пакета који нису везани за специфичне Линук дистрибуције и покрећу се у посебном контејнеру који изолује апликацију од остатка система. Подршка за покретање Флатпак пакета је обезбеђена за Арцх Линук, ЦентОС, Дебиан, Федора, Гентоо, Магеиа, Линук Минт, Алт Линук и Убунту. Флатпак пакети су укључени у Федора спремиште и подржани су од стране изворног менаџера ГНОМЕ апликација.

Кључне иновације у грани Флатпак 1.14:

  • Могуће је креирати директоријум за датотеке у стању (.лоцал/стате) и поставити променљиву окружења КСДГ_СТАТЕ_ХОМЕ која указује на овај директоријум.
  • Додате су условне провере облика „имам-кернел-модуле-наме“ да би се утврдило присуство модула кернела (универзални аналог претходно предложене провере хаве-интел-гпу, уместо које је израз „хаве-кернел-модуле-и915 ” сада се може користити).
  • Имплементирана је команда „флатпак доцумент-унекпорт —доц-ид=…“.
  • Обезбеђен је извоз Аппстреам метаподатака за коришћење у главном окружењу.
  • Додата правила за завршетак команде флатпак за љуску Фисх
  • Мрежни приступ услугама Кс11 и ПулсеАудио је дозвољен (ако се додају одговарајућа подешавања).
  • Главна грана у Гит репозиторијуму је преименована из „мастер“ у „маин“, пошто се реч „мастер“ недавно сматрала политички некоректном.
  • Скрипте за покретање се сада поново пишу ако се апликација преименује.
  • Додате су опције „--инцлуде-сдк“ и „--инцлуде-дебуг“ у команду за инсталацију за инсталирање датотека СДК и дебугинфо.
  • Додата подршка за параметар „ДеплоиСиделоадЦоллецтионИД“ датотекама флатпакреф и флатпакрепо. Када је подешен, ИД колекције ће бити постављен приликом додавања удаљеног спремишта, а не након учитавања метаподатака.
  • Дозвољено је креирање угнежђених окружења заштићеног окружења за руковаоце у сесијама са засебним називима МПРИС (Спецификација за даљинско повезивање медија плејера).
  • Услужни програми командне линије сада пружају информације о коришћењу застарелих екстензија за време извршавања.
  • Команда за деинсталацију имплементира захтев за потврду пре уклањања екстензија за време извршавања или рунтиме који су још увек у употреби.
  • Команде попут "флатпак рун" сада подржавају опцију "--соцкет=гпг-агент".
  • Рањивост је исправљена у либострее-у која би потенцијално могла да омогући кориснику да избрише произвољне датотеке на систему кроз манипулацију руковаоцем флатпак-систем-хелпер (слање захтева за брисање са посебно форматираним именом гране). Проблем се појављује само у старијим верзијама Флатпак-а и либострее-а објављеним пре 2018. (< 0.10.2) и не утиче на тренутна издања.

Подсетимо вас да Флатпак омогућава програмерима апликација да поједноставе дистрибуцију својих програма који нису укључени у стандардна дистрибутивна спремишта тако што ће припремити један универзални контејнер без креирања засебних склопова за сваку дистрибуцију. За кориснике који брину о безбедности, Флатпак вам омогућава да покренете упитну апликацију у контејнеру, дајући приступ само мрежним функцијама и корисничким датотекама повезаним са апликацијом. За кориснике заинтересоване за нове производе, Флатпак вам омогућава да инсталирате најновија тестна и стабилна издања апликација без потребе за изменама у систему. На пример, Флатпак пакети су направљени за ЛибреОффице, Мидори, ГИМП, Инксцапе, Кденливе, Стеам, 0 АД, Висуал Студио Цоде, ВЛЦ, Слацк, Скипе, Телеграм Десктоп, Андроид Студио итд.

Да би се смањила величина пакета, он укључује само зависности специфичне за апликацију, а основне системске и графичке библиотеке (ГТК, Кт, ГНОМЕ и КДЕ библиотеке, итд.) су дизајниране као плуг-ин стандардна окружења за извршавање. Кључна разлика између Флатпака и Снап-а је у томе што Снап користи компоненте главног системског окружења и изолацију засновану на филтрирању системских позива, док Флатпак креира контејнер одвојен од система и ради са великим сетовима времена извршавања, пружајући не пакете као зависности, већ стандардне она системска окружења (на пример, све библиотеке неопходне за рад ГНОМЕ или КДЕ програма).

Поред стандардног системског окружења (рунтиме), инсталираног преко посебног спремишта, испоручују се и додатне зависности (бундле) потребне за рад апликације. Укупно време извођења и пакет чине пуњење контејнера, упркос чињеници да је рунтиме инсталирано одвојено и везано за неколико контејнера одједном, што вам омогућава да избегнете дуплирање системских датотека заједничких за контејнере. Један систем може имати инсталирано неколико различитих времена извршавања (ГНОМЕ, КДЕ) или неколико верзија истог времена извршавања (ГНОМЕ 3.40, ГНОМЕ 3.42). Контејнер са апликацијом као зависношћу користи везивање само за одређено време извршавања, не узимајући у обзир појединачне пакете који чине време извршавања. Сви недостајући елементи се пакују директно са апликацијом. Када се формира контејнер, садржај времена извођења се монтира као /уср партиција, а скуп се монтира у /апп директоријум.

Контејнери за време извођења и апликације су направљени коришћењем ОСТрее технологије, у којој се слика атомски ажурира из Гит-складишта, што омогућава да се методе контроле верзија примењују на компоненте дистрибуције (на пример, можете брзо да вратите систем на претходно стање). РПМ пакети се преводе у ОСТрее репозиториј помоћу посебног слоја рпм-острее. Није подржана одвојена инсталација и ажурирање пакета у оквиру радног окружења, систем се ажурира не на нивоу појединачних компоненти, већ у целини, атомски мењајући своје стање. Пружа алате за постепену примену ажурирања, елиминишући потребу за потпуном заменом слике са сваким ажурирањем.

Генерисано изоловано окружење је потпуно независно од коришћене дистрибуције и, уз исправна подешавања пакета, нема приступ датотекама и процесима корисника или главног система, не може директно приступити опреми, са изузетком излаза преко ДРИ, и позиве у мрежни подсистем. Организација графичког излаза и уноса се имплементира коришћењем Ваиланд протокола или путем прослеђивања Кс11 соцкета. Интеракција са спољним окружењем је заснована на ДБус систему за размену порука и посебном Порталс АПИ-ју.

За изолацију се користе слој Бубблеврап и традиционалне технологије виртуелизације Линук контејнера, засноване на коришћењу цгроупс, именских простора, Сеццомп и СЕЛинук. ПулсеАудио се користи за излаз звука. У овом случају, изолација се може онемогућити, што користе програмери многих популарних пакета да би добили пун приступ систему датотека и свим уређајима у систему. На пример, ГИМП, ВСЦодиум, ПиЦхарм, Оцтаве, Инксцапе, Аудацити и ВЛЦ долазе са ограниченим режимом изолације који оставља потпун приступ кућном директоријуму. Ако су пакети са приступом матичном директоријуму компромитовани, упркос присуству ознаке „сандбокед“ у опису пакета, нападач треба само да промени ~/.басхрц датотеку да би извршио свој код. Посебно питање је контрола измена пакета и поверење у градитеље пакета, који често нису повезани са главним пројектом или дистрибуцијама.

Извор: опеннет.ру

Додај коментар