գործիքակազմի նոր կայուն ճյուղ , որը տրամադրում է ինքնուրույն փաթեթներ կառուցելու համակարգ, որոնք կապված չեն որոշակի բաշխումների հետ։ Linux և կատարվում է հատուկ կոնտեյների մեջ, որը մեկուսացնում է ծրագիրը համակարգի մնացած մասից: Arch-ի համար տրամադրվում է Flatpak փաթեթների գործարկման աջակցություն: Linux, , Debian, Ֆեդորա, Ջենտու, Մագեյա, Linux Անանուխ և UbuntuFlatpak փաթեթները ներառված են Fedora պահոցում և աջակցվում են GNOME-ի ստանդարտ ծրագրերի կառավարիչում։
Բանալի Flatpak 1.6 մասնաճյուղում.
- В ավելացվել է CreateUpdateMonitor մեթոդը, որը թույլ է տալիս հավելվածներին վերահսկել թարմացումների տեսքը և պահանջել թարմացված թարմացման տեղադրում:
Հավելվածին ինքնուրույն թարմացումներ տեղադրելու թույլտվությունը մերժելու համար կարող եք օգտագործել «flatpak permission-set flatpak updates $APPID no» հրամանը (եթե «ոչ»-ի փոխարեն նշեք «հարցրեք», ամեն անգամ կցուցադրվի երկխոսություն՝ հաստատելու համար։ թարմացում); - Գործող սարքերի ստեղծումը պարզեցնելու համար առաջարկվում է գրադարան
libportal-ը, որը հնարավորություն է տալիս մշակել իրադարձությունները՝ առանց ուղղակիորեն օգտագործելու Portal API-ն և D-Bus-ով եկող ազդանշանների վերլուծություն:
Libportal-ը մեծամասնության համար ապահովում է պարզ ասինխրոն շերտեր"; - Ավելացվեց նոր թույլտվություն «--socket=cups»՝ CUPS տպագիր սերվերին ուղղակի մուտք ապահովելու համար;
- Փոխել է նույնականացումը կարգավորելու արձանագրությունը և API-ն: Ավելացվեց նույնականացուցիչ OCI-ի համար (Open Container Initiative): Իրականացված աջակցություն արտաքին flatpak պահոցից իսկորոշիչների ավտոմատ տեղադրման համար: FlatpakTransaction-ին ավելացվել է հետադարձ զանգի կարգավորիչ՝ մուտքի և գաղտնաբառի նույնականացումն օգտագործելու համար, որը նման է HTTP նույնականացման հիմնական մեթոդին.
- Ավելացվել է պաշտպանված հավելվածների և համակարգերի աջակցություն, որոնք պահանջում են նույնականացում բեռնման ժամանակ;
- Մեկուսացման համար օգտագործվող փուչիկապատ շերտը թարմացվել է ազատվելու համար ;
- Ավելացվեց կամընտիր աջակցություն ծնողական հսկողության համար գրադարանային հավելվածի միջոցով , որը թույլ է տալիս սահմանափակել մուտքը որոշակի տեսակի բովանդակություն;
- Ընդլայնումները այժմ տեղադրվում են հավելվածից առաջ, ինչը թույլ է տալիս ստանալ աշխատանքային հավելված դրա տեղադրման ավարտից անմիջապես հետո.
- Ժամանակավոր ֆայլերով մանիպուլյացիաները վերամշակվել են, ինչը բարելավել է կատարողականությունը սկավառակի ազատ տարածության բացակայության դեպքում.
- հրամանը կատարելու համար ««Այլևս չի պահանջվում օգտագործել sudo;
- Պորտալներում ավելացվել է երեխայի պրոցեսների համար ներկառուցված մեկուսացված միջավայրեր գործարկելու հնարավորությունը.
- Թույլտվության կարգավորումները վերահսկելու համար ավելացվել են «flatpak permission-set» և «permission-remove» նոր հրամաններ.
- Ավելացվեց «flatpak install --or-update» տարբերակը, որն իրականացնում է թարմացում, եթե հավելվածն արդեն տեղադրված է.
- Ավելացրել է «flatpak mask» հրամանը՝ տարբերակը շտկելու և թարմացումների տեղադրումն արգելելու համար.
- OCI (Open Container Initiative) ձևաչափով պատկերների համար աջակցություն է ավելացվել պարտադիր պիտակների համար, ստեղծելով պատկերի փոփոխությունների պատմություն և միացնելով դոկեր մնջախաղի տեսակները, բացի OCI մնջախաղի տեսակներից.
- Լռելյայն լեզուների ստեղնը ավելացվել է կարգավորումներին՝ բացի համակարգի ցուցակից, օգտագործվող լեզուների ցանկը սահմանելու համար:
Հիշեցնենք, որ Flatpak-ը հնարավորություն է տալիս հավելվածների մշակողներին պարզեցնել իրենց ծրագրերի բաշխումը, որոնք ներառված չեն ստանդարտ բաշխման պահոցներում՝ մեկ ունիվերսալ կոնտեյներ՝ առանց յուրաքանչյուր բաշխման համար առանձին հավաքներ ստեղծելու: Անվտանգության գիտակցությամբ զբաղվող օգտատերերի համար Flatpak-ը թույլ է տալիս կասկածելի հավելված գործարկել կոնտեյներով՝ ապահովելով միայն հավելվածի հետ կապված ցանցային գործառույթների և օգտագործողի ֆայլերի մուտքը: Նոր ապրանքներով հետաքրքրված օգտատերերի համար Flatpak-ը թույլ է տալիս տեղադրել հավելվածների վերջին թեստային և կայուն թողարկումները՝ առանց համակարգում փոփոխություններ կատարելու անհրաժեշտության: Օրինակ, ներկայումս Flatpak փաթեթներն արդեն կան LibreOffice-ի, Firefox-ի, GIMP-ի, Inkscape-ի, Kdenlive-ի, Steam-ի, 0 AD-ի, Visual Studio Code-ի, VLC-ի, Slack-ի, Skype-ի, Telegram Desktop-ի համար։ Android Ստուդիա և այլն
Փաթեթի չափը նվազեցնելու համար այն ներառում է միայն հավելվածներին հատուկ կախվածություններ, իսկ հիմնական համակարգի և գրաֆիկական գրադարանները (Gtk+, Qt, GNOME և KDE գրադարաններ և այլն) նախագծված են որպես plug-in ստանդարտ գործարկման միջավայրեր: Flatpak-ի և Snap-ի հիմնական տարբերությունն այն է, որ Snap-ը օգտագործում է հիմնական համակարգի միջավայրի բաղադրիչները և մեկուսացումը, որը հիմնված է զտման համակարգի զանգերի վրա, մինչդեռ Flatpak-ը ստեղծում է համակարգից առանձին կոնտեյներ և գործում է մեծ գործարկման հավաքածուներով՝ տրամադրելով ոչ թե փաթեթներ որպես կախվածություն, այլ ստանդարտ: մեկ համակարգային միջավայրեր (օրինակ՝ բոլոր գրադարանները, որոնք անհրաժեշտ են GNOME կամ KDE ծրագրերի գործարկման համար):
Ի լրումն ստանդարտ համակարգի միջավայրի (աշխատանքի), տեղադրված է հատուկ , տրամադրվում են հավելվածի աշխատանքի համար անհրաժեշտ լրացուցիչ կախվածություններ (փաթեթ): Ընդհանուր առմամբ, գործարկման ժամանակը և փաթեթը կազմում են կոնտեյների լցոնումը, չնայած այն հանգամանքին, որ գործարկման ժամանակը տեղադրված է առանձին և կապված է միանգամից մի քանի կոնտեյների հետ, ինչը թույլ է տալիս խուսափել բեռնարկղերի համար սովորական համակարգի ֆայլերի կրկնօրինակումից: Մեկ համակարգում կարող են տեղադրվել մի քանի տարբեր գործարկման ժամանակներ (GNOME, KDE) կամ նույն գործարկման ժամանակի մի քանի տարբերակներ (GNOME 3.26, GNOME 3.28): Հավելվածը որպես կախվածություն ունեցող կոնտեյները օգտագործում է կապակցում միայն կոնկրետ գործարկման ժամանակի համար՝ առանց հաշվի առնելու աշխատաժամանակը կազմող առանձին փաթեթները։ Բոլոր բացակայող տարրերը փաթեթավորված են անմիջապես հավելվածի հետ: Երբ ձևավորվում է կոնտեյներ, գործարկման ժամանակի բովանդակությունը տեղադրվում է որպես /usr միջնորմ, իսկ փաթեթը տեղադրվում է /app գրացուցակում:
Գործարկման և կիրառական բեռնարկղերի լցոնումը ձևավորվում է տեխնոլոգիայի միջոցով , որում պատկերը ատոմային կերպով թարմացվում է Git-ի նման պահոցից, որը թույլ է տալիս կիրառել տարբերակի վերահսկման մեթոդներ բաշխման բաղադրիչների վրա (օրինակ՝ կարող եք արագ վերադարձնել համակարգը նախկին վիճակին)։ RPM փաթեթները թարգմանվում են OSTree պահոց՝ օգտագործելով հատուկ շերտ . Աշխատանքային միջավայրում փաթեթների առանձին տեղադրումը և թարմացումը չի ապահովվում, համակարգը թարմացվում է ոչ թե առանձին բաղադրիչների մակարդակով, այլ որպես ամբողջություն՝ ատոմային կերպով փոխելով իր վիճակը: Ապահովում է գործիքներ՝ թարմացումները աստիճանաբար կիրառելու համար՝ վերացնելով յուրաքանչյուր թարմացումով պատկերն ամբողջությամբ փոխարինելու անհրաժեշտությունը:
Ստեղծված մեկուսացված միջավայրը լիովին անկախ է օգտագործվող բաշխումից և համապատասխան փաթեթի կարգավորումներով, չունի մուտք գործածողի կամ հիմնական համակարգի ֆայլերն ու գործընթացները, չի կարող ուղղակիորեն մուտք գործել սարքավորում, բացառությամբ DRI-ի միջոցով ելքի, և ցանցային ենթահամակարգ: Գրաֆիկական արտադրանքի և մուտքագրման կազմակերպում օգտագործելով Wayland արձանագրությունը կամ X11 վարդակից փոխանցման միջոցով: Արտաքին միջավայրի հետ փոխգործակցությունը հիմնված է DBus հաղորդագրությունների համակարգի և հատուկ Portal API-ի վրա: Մեկուսացման համար միջաշերտ և ավանդական համար Linux կոնտեյներների վիրտուալիզացիայի տեխնոլոգիաներ, որոնք հիմնված են cgroups-ի, անվանատարածքների, Seccomp-ի և SE-ի օգտագործման վրաLinuxPulseAudio-ն օգտագործվում է աուդիո ելքի համար։
Source: opennet.ru
