Flatpak 1.8.0 ինքնաբավ փաթեթների համակարգի թողարկում

Հրատարակվել է գործիքակազմի նոր կայուն ճյուղ Ֆլատպակ 1.8, որը տրամադրում է ինքնուրույն փաթեթներ կառուցելու համակարգ, որոնք կապված չեն Linux-ի որոշակի բաշխումների հետ և աշխատում են հատուկ կոնտեյների մեջ, որը մեկուսացնում է ծրագիրը համակարգի մնացած մասից։ Flatpak փաթեթների գործարկման աջակցությունը տրամադրվում է Arch Linux-ի համար, CentOS, Debian, Fedora, Gentoo, Mageia, Linux Mint և Ubuntu: Flatpak փաթեթները ներառված են Fedora-ի պահոցում և աջակցվում են GNOME հավելվածի հայրենի կառավարչի կողմից:

Բանալի նորամուծություններ Flatpak 1.8 մասնաճյուղում.

  • P2P ռեժիմով տեղադրման պարզեցված իրականացում (թույլ է տալիս կազմակերպել ծրագրերի և գործարկման ժամանակի հավաքածուների բեռնումը միջանկյալ հանգույցների կամ պահեստային սարքերի միջոցով՝ առանց ցանցային կապի համակարգերի համար): Տեղական ցանցում միջանկյալ հոսթերի միջոցով տեղադրման աջակցությունը դադարեցվել է։ Տեղական USB կրիչների վրա գտնվող պահոցների ավտոմատ բեռնումը (կողային բեռնում) լռելյայնորեն անջատված է: Միջանկյալ տեղական պահոցները միացնելու համար դուք պետք է կարգավորեք պահոցը՝ ստեղծելով սիմվոլիկ հղում /var/lib/flatpak/sideload-repos-ից կամ
    /run/flatpak/sideload-պահոցներ։ Փոփոխությունը հնարավորություն տվեց պարզեցնել P2P ռեժիմի ներքին ներդրումը և բարձրացնել դրա արդյունավետությունը։
  • Ավելացվել է լրացուցիչ systemd միավոր՝ միացված արտաքին USB կրիչների վրա լրացուցիչ պահոցներ ավտոմատ կերպով հայտնաբերելու համար։
  • Ֆայլային համակարգին մուտք ունեցող ծրագրերի համար հոսթ միջավայրի /lib գրացուցակը վերահասցեագրվում է /run/host/lib։
  • Ավելացվել են ֆայլային համակարգին մուտք գործելու նոր թույլտվություններ՝ «host-etc» և «host-os», որոնք թույլ են տալիս մուտք գործել /etc և /usr համակարգի գրացուցակներ։
  • Ավելի արդյունավետ ֆայլերի վերլուծության կոդ ստեղծելու համար օգտագործվում է ostreee-ի GVariant-ը։ տարբերակ-սխեմա-կոմպիլյատոր.
  • Կարգավորման կառուցման սկրիպտը հնարավորություն է տալիս կառուցել առանց
    libsystemd;
  • Համոզված է, որ Journal socket-ները կարող են տեղադրվել միայն ընթերցման ռեժիմում։
  • Ավելացվել է աջակցություն փաստաթղթերի արտահանմանը գրացուցակներ արտահանելու համար։
  • Թույլատրվել է ALSA ձայնային սարքերին անմիջական մուտք այն հավելվածների համար, որոնք մուտք ունեն Pulseaudio-ին։
  • API-ում FlatpakTransaction Ավելացվել է «install-authenticator» ազդանշան, որը կարող են օգտագործել հաճախորդները՝ գործարքն ավարտելու համար անհրաժեշտ նույնականացուցիչները տեղադրելու համար։
  • Հնարավորություն է տրվել օգտագործել ժամային գոտու տվյալները՝ հիմնվելով հյուրընկալող համակարգի /etc/localtime-ի վրա, ինչը լուծել է ժամային գոտու հետ կապված խնդիրները որոշ ծրագրերում։
  • env.d ֆայլի տեղադրումը gdm-ից դադարեցվեց, քանի որ systemd գեներատորներն այս աշխատանքն ավելի լավ են կատարում։
  • Create-usb օգտակար ծրագիրը լռելյայնորեն միացրել է մասնակի կատարման արտահանումը։
  • Տրամադրվել է sysusers.d ֆայլը՝ systemd-ի միջոցով անհրաժեշտ օգտատերեր ստեղծելու համար։
  • «flatpak remote-add» և «flatpak modify» հրամաններին ավելացվել է «--[no-]follow-redirect» տարբերակը՝ այլ պահոց վերահասցեավորումը միացնելու/անջատելու համար։
  • Համակարգի մեջ
    պորտալներ Ավելացվել է Spawn API՝ աշխատող ծրագրի իրական գործընթացի նույնականացուցիչը (PID) ստանալու համար։
  • Բոլոր OCI (Բաց կոնտեյներների նախաձեռնություն) պահոցները տեղափոխվել են flatpak-oci-authenticator նույնականացուցիչն օգտագործելու համար։
  • «--commit=» տարբերակը ավելացվել է «flatpak remote-info» և «flatpak update» հրամաններին՝ OCI պահոցների որոշակի տարբերակը նշելու համար։
  • Ավելացվել է OCI պահոցների դելտա թարմացումների սկզբնական աջակցությունը։
  • Ավելացվել է «flatpak upgrade» հրամանը, որը «flatpak update» հրամանի կեղծանունն է։
  • Ներդրվել են մուտքագրման լրացման սկրիպտներ ձկան կճեպի համար։

Հիշեցնենք, որ Flatpak-ը ծրագրային ապահովման մշակողներին հնարավորություն է տալիս պարզեցնել իրենց այն ծրագրերի բաշխումը, որոնք չեն ներառվում ստանդարտ բաշխման պահոցներում՝ պայմանավորված... պատրաստում մեկ ունիվերսալ կոնտեյներ՝ առանց յուրաքանչյուր բաշխման համար առանձին հավաքներ ստեղծելու: Անվտանգության գիտակցությամբ զբաղվող օգտատերերի համար Flatpak-ը թույլ է տալիս կասկածելի հավելված գործարկել կոնտեյներով՝ ապահովելով միայն հավելվածի հետ կապված ցանցային գործառույթների և օգտագործողի ֆայլերի մուտքը: Նոր ապրանքներով հետաքրքրված օգտատերերի համար Flatpak-ը թույլ է տալիս տեղադրել հավելվածների վերջին թեստային և կայուն թողարկումները՝ առանց համակարգում փոփոխություններ կատարելու անհրաժեշտության: Օրինակ, ներկայումս Flatpak փաթեթներն արդեն կան գնում են LibreOffice, Midori, GIMP, Inkscape, Kdenlive, Steam, 0 AD, Visual Studio Code, VLC, Slack, Skype, Telegram Desktop, Android Studio և այլնի համար։

Փաթեթի չափը նվազեցնելու համար այն ներառում է միայն ծրագրային կախվածություններ, իսկ հիմնական համակարգային և գրաֆիկական գրադարանները (Gtk+, Qt, GNOME և KDE գրադարաններ և այլն) նախագծված են որպես միացվող ստանդարտ աշխատանքային միջավայրեր։ Flatpak-ի և Snap-ի միջև հիմնական տարբերությունն այն է, որ Snap-ը օգտագործում է հյուրընկալող համակարգի միջավայրի բաղադրիչները և մեկուսացումը՝ հիմնվելով համակարգային զանգերի ֆիլտրման վրա, մինչդեռ Flatpak-ը ստեղծում է համակարգից առանձին կոնտեյներ և գործում է մեծ աշխատանքային ժամանակի հավաքածուների վրա՝ տրամադրելով տիպիկ համակարգային միջավայրեր որպես կախվածություններ (օրինակ՝ GNOME կամ KDE ծրագրերը գործարկելու համար անհրաժեշտ բոլոր գրադարանները), այլ ոչ թե փաթեթներ։

Ի լրումն ստանդարտ համակարգի միջավայրի (աշխատանքի), տեղադրված է հատուկ պահոց, տրամադրվում են հավելվածի աշխատանքի համար անհրաժեշտ լրացուցիչ կախվածություններ (փաթեթ): Ընդհանուր առմամբ, գործարկման ժամանակը և փաթեթը կազմում են կոնտեյների լցոնումը, չնայած այն հանգամանքին, որ գործարկման ժամանակը տեղադրված է առանձին և կապված է միանգամից մի քանի կոնտեյների հետ, ինչը թույլ է տալիս խուսափել բեռնարկղերի համար սովորական համակարգի ֆայլերի կրկնօրինակումից: Մեկ համակարգում կարող են տեղադրվել մի քանի տարբեր գործարկման ժամանակներ (GNOME, KDE) կամ նույն գործարկման ժամանակի մի քանի տարբերակներ (GNOME 3.26, GNOME 3.28): Հավելվածը որպես կախվածություն ունեցող կոնտեյները օգտագործում է կապակցում միայն կոնկրետ գործարկման ժամանակի համար՝ առանց հաշվի առնելու աշխատաժամանակը կազմող առանձին փաթեթները։ Բոլոր բացակայող տարրերը փաթեթավորված են անմիջապես հավելվածի հետ: Երբ ձևավորվում է կոնտեյներ, գործարկման ժամանակի բովանդակությունը տեղադրվում է որպես /usr միջնորմ, իսկ փաթեթը տեղադրվում է /app գրացուցակում:

Գործարկման և կիրառական բեռնարկղերի լցոնումը ձևավորվում է տեխնոլոգիայի միջոցով OSTree, որտեղ պատկերը ատոմային կերպով թարմացվում է Git-ի նման պահոցից՝ թույլ տալով տարբերակի վերահսկման մեթոդներ կիրառել բաշխման բաղադրիչների վրա (օրինակ՝ դուք կարող եք արագ վերադարձնել համակարգը նախկին վիճակին)։ RPM փաթեթները թարգմանվում են OSTree պահոց՝ օգտագործելով հատուկ շերտ rpm-ostree. Աշխատանքային միջավայրում փաթեթների առանձին տեղադրումը և թարմացումը չի ապահովվում, համակարգը թարմացվում է ոչ թե առանձին բաղադրիչների մակարդակով, այլ որպես ամբողջություն՝ ատոմային կերպով փոխելով իր վիճակը: Ապահովում է գործիքներ՝ թարմացումները աստիճանաբար կիրառելու համար՝ վերացնելով յուրաքանչյուր թարմացումով պատկերն ամբողջությամբ փոխարինելու անհրաժեշտությունը:

Արդյունքում ստացված մեկուսացված միջավայրը լիովին անկախ է օգտագործվող բաշխումից և, պատշաճ փաթեթի կարգավորումներով, չունի մուտք օգտատիրոջ կամ հիմնական համակարգի ֆայլերին և գործընթացներին, չի կարող ուղղակիորեն մուտք գործել սարքավորումներ, բացառությամբ DRI-ի միջոցով ելքային տվյալների և ցանցային ենթահամակարգի։ Գրաֆիկական ելքային և մուտքային տվյալների կազմակերպում իրականացվել է օգտագործելով Wayland արձանագրությունը կամ X11 վարդակից փոխանցման միջոցով: Արտաքին միջավայրի հետ փոխգործակցությունը հիմնված է DBus հաղորդագրությունների համակարգի և հատուկ Portal API-ի վրա: Մեկուսացման համար օգտագործվում է միջաշերտ Պղպջակների փաթաթան և ավանդական Linux կոնտեյներների վիրտուալացման տեխնոլոգիաներ, որոնք հիմնված են cgroups-ի, namespace-ների, Seccomp-ի և SELinux-ի օգտագործման վրա: PulseAudio-ն օգտագործվում է ձայն արտաբերելու համար:

Source: opennet.ru

Добавить комментарий