22/12/2025
ATEITYJE GALIMAI PASIRODYS DAR VIENAS NAUJAS PROGRAMŲ DIEGIMO BŪDAS LINUXE - PKGFORGE
Linux siūlo daugybę būdų įdiegti programinę įrangą: vietinius distribucijos paketus, Flatpak, Snap, AppImage, šaltinio kompiliacijas, netgi curl-piped diegimo programas. Problema ta, kad kiekvienas iš jų sprendžia skirtingą problemą, tačiau nė vienas iš jų visiškai neišsprendžia visose distribucijose pasitaikančios „čia veikia, ten neveikia“ realybės.
Package Forge (PkgForge) yra naujas projektas, kurio misija yra siauresnė: pateikti tikrai nuo distribucijos nepriklausomas perkeliamas programas, kurios veikia vienodai visose sistemose. Kitaip tariant: „Noriu, kad ta pati programa būtų įdiegta ir veiktų skirtingose distribucijose, nesusiduriant su priklausomybės ir paketų skirtumais.“
Sužinosime, ką tiksliai daro „Package Forge“, bet ir panagrinėsime neišvengiamą palyginimą: kuo tai skiriasi nuo „Flatpak“, „Snap“ ar įprastų „AppImages“?
PkgForge pagrindinis dėmesys skiriamas perkeliamai ir (arba) statiškai sukurtai programinei įrangai, kuri sumažina priklausomybę nuo distribucijos teikiamų priklausomybių. Sakau „sumažina“ (o ne „pašalina“), nes kai kurių reikalavimų praktikoje sunku išvengti, ypač susijusių su perkeliamais vaizdo formatais, kur gali būti naudojamos tokios funkcijos kaip FUSE arba neprivilegijuoti vartotojo vardų erdvės.
Iš tiesų „priklausomybių neturintis“ paketo formatas yra sunkiai pasiekiamas absoliučia prasme, tačiau PkgForge siekia priartėti prie jo kiek įmanoma realistiškiau.
Universalus programų paketas Linux sistemai atrodo išspręstas, tačiau realybė yra šiek tiek sudėtingesnė, nei galėtų būti. Pavyzdžiui, tiek Flatpaks, tiek Snaps reikalauja, kad jūsų sistemoje būtų įdiegti pagalbiniai komponentai. Be šio palaikymo, .snap failas yra toks pat naudingas, kaip .exe failo atsisiuntimas be Wine.
„Flatpak“ yra šiek tiek kitoks: jis nesiremia tokiu pačiu nuolat veikiančiu procesu kaip „Snap“, tačiau vis tiek reikalauja, kad „Flatpak“ palaikymas būtų įjungtas serveryje. Be to, „Flatpak“ programos priklauso nuo galimų vykdymo aplinkų (žinoma, „Flatpak“ gali jas įdiegti už jus). Bet kuriuo atveju, jūs neturite reikalų su vienu savarankišku vykdomuoju failu, kurį galite paleisti bet kurioje „Linux“ sistemoje bet kur.
Tam galite naudoti AppImages, žinoma. Iš tiesų, būtent šiai problemai spręsti ir buvo sukurta AppImage. Daugeliu atvejų tai tikrai yra artimiausias Linux modelis, atitinkantis principą „atsisiųsk vieną kartą, naudok bet kur“. Tačiau „nešiojamas“ ne visada reiškia „nešiojamas visur“. AppImages vis dar gali daryti prielaidas apie pagrindinę sistemą, o tos prielaidos nėra garantuotos visose distribucijose, saugumo kontekstuose, konteineriuose ar senesnėse aplinkose. Net moderniuose staliniuose kompiuteriuose konfigūracijos pakeitimas gali būti pakankamas, kad „man tai veikia“ virstų „kodėl man tai neveikia?“
PkgForge sprendžia beveik visas problemas, kurias matemė, susijusias su universaliu, perkeliamu paketu Linux sistemai. Tai nėra naujas paketo formatas, taip pat jis nesiekia pakeisti AppImages. Tai ekosistema, kuri skelbia perkeliamus paketus ir statinius dvejetainius failus kuruojamuose saugyklose, kartu su paketų tvarkyklė, skirta juos įdiegti ir valdyti.
Vienas iš būdų, kuriuo PkgForge išsiskiria iš kitų perkeliamų programų Linux sistemoje, yra jo dėmesys prieinamai dokumentacijai ir saugumui orientuotam platinimo modeliui. Projektas pirmiausia teikia iš anksto paruoštus binarinius paketus, saugo skaidrius kūrimo žurnalus ir remiasi kontrolinių sumų patikrinimu.
Tai padeda sumažinti ad-hoc diegimo scenarijų plitimą ir vietinio kompiliavimo poreikį, kuris ilgą laiką buvo įprastas modelis tiesiogiai atsisiunčiant Linux programinę įrangą (ir vis dar yra daugelio projektų atveju). Siekiant palengvinti galutinio vartotojo gyvenimą, projektas turi savo sąsają, vadinamą Soar.
Soar yra PkgForge paketų tvarkyklė, sukurta tam, kad būtų galima nuosekliai įdiegti ir perkelti programinę įrangą į įvairias distribucijas. Ji veikia kaip jūsų distribucijos paketų tvarkyklės papildinys, o ne siekia ją pakeisti..
Soar taip pat prideda įdiegtas programas prie jūsų sistemos PATH, leidžiant jas paleisti iš CLI ar kitų programų, nurodant tik binarinio failo pavadinimą. Jo tikslas – užtikrinti perkėlimą, kad jūsų nustatymus būtų galima lengviau perkelti iš vienos sistemos į kitą. Jis taip pat užtikrina tvarką, naudodamas nuoseklias diegimo vietas, todėl jūsų atsisiuntimų aplankas nebus užpildytas atsitiktiniais vykdomaisiais failais, kurių negalėsite atsekti.
Už Soar stovi keletas kitų komponentų, kurie užtikrina PkgForge ekosistemos funkcionalumą.
Jei norite naudoti programinę įrangą iš „PkgForge“ ekosistemos, yra du paprasti būdai. Rekomenduojamas sprendimas yra „Soar“, kurį galite naudoti kaip papildomą paketų tvarkyklę ir leisti jam tvarkyti diegimą, atnaujinimus ir sistemos integraciją. Jis taip pat leidžia ieškoti programų ir įrankių be būtinybės naršyti internete esančias saugyklas.
Arba galite rankiniu būdu ieškoti PkgForge saugyklose, atsisiųsti ir valdyti atskirus nešiojamus paketus savarankiškai. Tai yra geriausias variantas, jei kuriate nešiojamą įrankių rinkinį USB atmintinėje.
Nešiojamosios programos visada vaidino svarbų vaidmenį kompiuterinių darbalaukio sistemose, o Linux sistemoje jos ilgą laiką buvo problematiškas klausimas. Su PkgForge galiausiai galime priartėti prie šio problemos sprendimo. Net jei tai nepakeis Flatpak, Snap ar AppImage, tai padeda apibrėžti, kaip galėtų atrodyti lankstesnė, tikrai nuo distribucijos nepriklausoma ateitis nešiojamoms Linux programoms.
Info: https://github.com/pkgforge?fbclid=IwdGRjcAO2NHljbGNrA7Y0cWV4dG4DYWVtAjExAHNydGMGYXBwX2lkDDM1MDY4NTUzMTcyOAABHmSbCeZIEWAf2fxXYFW0A8t4f3GlEIEXf48qYEjq118N2aAbukOa2qvUarFJ_aem_4T_QZSo7inLOpDQieDPkpQ
Improving Package Management & Security for Linux systems. (Dev: -dev | Communtity: -community | Security Research: -security) - Package Forge