Distri - distribuo por testado de rapidaj pakaĵadministradteknologioj

Michael Stapelberg, verkinto de la i3wm kahela fenestromanaĝero kaj iama aktiva Debiana programisto (konservis proksimume 170 pakaĵojn), disvolvas eksperimenta distribuo distri kaj pakaĵadministranto de la sama nomo. La projekto estas poziciigita kiel esplorado de eblaj manieroj pliigi la efikecon de pakaĵadministradsistemoj kaj enkorpigas kelkajn novajn ideojn por konstrui distribuojn. La pakaĵmanaĝera kodo estas skribita en Go kaj distribuita de sub la permesilo BSD.

Ĉefa trajto de la pakformato de la distribuo estas ke la pakaĵo estas liverita en la formo de SquashFS-bildoj, anstataŭe de kunpremitaj gudro-arkivoj. Uzante SquashFS, simile al la formatoj AppImage kaj Snap, permesas vin "munti" pakaĵon sen devi malpaki ĝin, kio ŝparas diskospacon, permesas atomŝanĝojn kaj faras la enhavon de la pakaĵo tuj alirebla. Samtempe, distri-pakaĵoj, kiel en la klasika "deb"-formato, enhavas nur individuajn komponentojn ligitajn per dependecoj kun aliaj pakaĵoj (bibliotekoj ne estas duobligitaj en pakaĵoj, sed estas instalitaj kiel dependecoj). Alivorte, distri provas kombini la grajnecan pakaĵstrukturon de klasikaj distribuoj kiel ekzemple Debiano kun la metodoj de liverado de aplikoj en la formo de muntitaj ujoj.

Ĉiu pako en distri estas muntita en sian propran dosierujon en nurlegebla reĝimo (ekzemple, la pakaĵo kun zsh estas disponebla kiel "/ro/zsh-amd64-5.6.2-3"), kio havas pozitivan efikon sur sekureco kaj protektas kontraŭ hazardaj aŭ malicaj ŝanĝoj. Por formi hierarkion de servaj dosierujoj, kiel ekzemple /usr/bin, /usr/share kaj /usr/lib, speciala FUSE-modulo estas uzata, kiu kombinas la enhavon de ĉiuj instalitaj SquashFS-bildoj en unu tuton (ekzemple, la / ro/share dosierujo disponigas aliron por kunhavi subdosierujojn de ĉiuj pakaĵoj).

Pakoj en distri fundamente liverita de pritraktiloj nomitaj dum instalado (neniu hokoj aŭ ellasiloj), kaj malsamaj versioj de pakaĵo povas kunekzisti unu kun la alia, do paralela instalado de pakaĵoj iĝas ebla. La proponita strukturo limigas la agadon de la pakaĵmanaĝero nur al la rettrairo per kiu la pakaĵoj estas elŝutitaj. La reala instalado aŭ ĝisdatigo de la pakaĵo estas farita atome kaj ne postulas duobligon de enhavo.

Konfliktoj dum instalado de pakaĵoj estas eliminitaj ĉar ĉiu pakaĵo estas asociita kun sia propra dosierujo kaj la sistemo permesas la ĉeeston de malsamaj versioj de unu pakaĵo (la enhavo de la dosierujo kun pli lastatempa revizio de la pakaĵo estas inkluzivita en la sindikataj dosierujoj). Konstruado de pakaĵoj ankaŭ estas tre rapida kaj ne postulas instali pakaĵojn en aparta konstrumedio (reprezentoj de la necesaj dependecoj de la dosierujo /ro estas kreitaj en la konstrumedio).

Subtenita tipaj pakaĵadministradkomandoj, kiel ekzemple "distri install" kaj "distri ĝisdatigo", kaj anstataŭ informkomandoj, vi povas uzi la norman ilon "ls" (ekzemple, por vidi instalitajn pakaĵojn, simple montru liston de dosierujoj en la " /ro” hierarkio, kaj por ekscii en kiu pakaĵo la dosiero estas inkluzivita, vidu kien kondukas la ligilo de ĉi tiu dosiero).

La prototipa distribua kompleto proponita por eksperimentado inkluzivas ĉirkaŭ 1700 pakaĵoj kaj preta instalaj bildoj kun instalilo, taŭga kaj por instalo kiel ĉefa OS kaj por funkcii en QEMU, Docker, Google Cloud kaj VirtualBox. Ĝi subtenas lanĉadon de ĉifrita disksekcio kaj aron da normaj aplikoj por krei labortablon bazitan sur la fenestromanaĝero i3 (Google Chrome estas ofertita kiel retumilo). Provizita kompleta ilaro por kunmeti distribuon, prepari kaj generi pakaĵojn, distribui pakaĵojn per speguloj, ktp.

fonto: opennet.ru

Aldoni komenton