Laing butang: Haiku app bundle?

Laing butang: Haiku app bundle?

TL; DR: Makakuha ba ang Haiku og tukma nga suporta alang sa mga pakete sa aplikasyon, sama sa mga direktoryo sa aplikasyon (sama sa .app sa Mac) ug/o mga hulagway sa aplikasyon (Linux AppImage)? Sa akong hunahuna kini usa ka takus nga pagdugang nga labi kadali nga ipatuman sa husto kaysa sa ubang mga sistema tungod kay kadaghanan sa mga imprastraktura naa na sa lugar.

Usa ka semana ang nakalabay Akong nadiskobrehan ang Haiku, usa ka wala damha nga maayong sistema. Aw, tungod kay dugay na ako nga interesado sa mga direktoryo ug mga imahe sa aplikasyon (inspirado sa kayano sa Macintosh), dili ikatingala nga adunay usa ka ideya nga misantop sa akong hunahuna...

Para sa bug-os nga pagsabot, ako ang tiglalang ug tagsulat sa AppImage, usa ka Linux application distribution format nga nagtumong sa pagkayano sa Mac ug naghatag ug bug-os nga kontrol sa mga application authors ug end users (kung gusto nimong mahibaloan pa, tan-awa wiki ΠΈ dokumentasyon).

Unsa kaha kung maghimo kami usa ka AppImage alang sa Haiku?

Maghunahuna kita og gamay, sa teoriya lamang: unsa ang kinahanglan nga buhaton aron makuha AppImage, o susama, sa Haiku? Dili kinahanglan nga maghimo usa ka butang karon, tungod kay ang sistema nga naa na sa Haiku katingad-an nga nagtrabaho, apan ang usa ka hinanduraw nga eksperimento mahimong nindot. Gipakita usab niini ang pagkamaayo sa Haiku, kung itandi sa Linux desktop environment, diin ang ingon nga mga butang lisud kaayo (ako adunay katungod sa pagsulti sa ingon: Nakigbisog ako sa pag-debug sulod sa 10 ka tuig).

Laing butang: Haiku app bundle?
Sa Macintosh System 1, ang matag aplikasyon usa ka bulag nga file nga "gidumala" sa Finder. Gamit ang AppImage Ako naningkamot sa paghimo pag-usab sa sama nga user nga kasinatian sa Linux.

Una, unsa ang AppImage? Kini usa ka sistema alang sa pagpagawas sa mga aplikasyon sa ikatulo nga partido (pananglitan, Ultimaker nga tambal), nga gitugotan ang mga aplikasyon nga ipagawas kung kanus-a ug kung giunsa nila gusto: dili kinahanglan nga mahibal-an ang mga detalye sa lainlaing mga pag-apod-apod, magtukod mga palisiya o magtukod mga imprastraktura, wala’y kinahanglan nga suporta sa pagmentinar, ug dili nila isulti sa mga tiggamit kung unsa (dili) ang ilang ma-install. sa ilang mga kompyuter. Ang AppImage kinahanglan sabton nga susama sa usa ka pakete sa Mac sa format .app sulod sa disk image .dmg. Ang nag-unang kalainan mao nga ang mga aplikasyon dili gikopya, apan magpabilin sa sulod sa AppImage hangtod sa kahangturan, parehas sa mga pakete sa Haiku .hpkg gitaod, ug wala gayud gibutang sa naandan nga diwa.

Sulod sa kapin sa 10 ka tuig nga paglungtad, ang AppImage nakakuha ug pipila nga pag-apelar ug pagkapopular: Si Linus Torvalds mismo ang nag-endorso niini sa publiko, ug ang kasagarang mga proyekto (pananglitan, LibreOffice, Krita, Inkscape, Scribus, ImageMagick) nagsagop niini ingon ang panguna nga paagi. sa pag-apod-apod sa padayon o matag gabii nga mga pagtukod, nga dili makabalda sa na-install o na-uninstall nga mga aplikasyon sa user. Bisan pa, ang Linux desktop environment ug mga distribusyon sa kasagaran nagkupot gihapon sa tradisyonal, sentralisadong maintainer-based distribution model ug/o nagpasiugda sa ilang kaugalingong negosyo sa negosyo ug/o mga programa sa engineering base sa Ang Flatpak (RedHat, Fedora, GNOME) ug Snappy (Canonical, Ubuntu). Kini moabut kataw-anan.

Giunsa kini tanan molihok

  • Ang matag AppImage adunay 2 ka bahin: usa ka gamay nga doble nga pag-klik nga ELF (gitawag nga. runtime.c), gisundan sa usa ka imahe sa file system SquashFS.

Laing butang: Haiku app bundle?

  • Ang SquashFS file system naglangkob sa payload sa aplikasyon ug sa tanan nga gikinahanglan sa pagpadagan niini, nga sa husto nga hunahuna dili makonsiderar nga bahin sa default nga pag-instalar alang sa matag medyo bag-o nga target nga sistema (Linux distribution). Naglangkob usab kini og metadata, sama sa ngalan sa aplikasyon, mga icon, tipo sa MIME, ug uban pa, ug uban pa.

Laing butang: Haiku app bundle?

  • Kung gipadagan sa user, ang runtime naggamit sa FUSE ug squashfuse aron i-mount ang filesystem, ug dayon magdumala sa pagpadagan sa pipila ka entry point (aka AppRun) sulod sa gi-mount nga AppImage.
    Ang file system wala ma-mount human makompleto ang proseso.

Ang tanan daw simple.

Ug kini nga mga butang nagpakomplikado sa tanan:

  • Uban sa ingon nga lainlain nga mga distribusyon sa Linux, wala’y "sa husto nga hunahuna" nga matawag nga "bahin sa default nga pag-install alang sa matag bag-ong target nga sistema." Among gisagubang kini nga isyu pinaagi sa pagtukod dili iapil, nga nagtugot kanimo sa pagtino kon unsa ang iputos sa AppImage ug unsa ang kinahanglan nga dad-on sa laing dapit. Sa samang higayon, usahay mingawon kita, bisan pa sa kamatuoran nga, sa kinatibuk-an, ang tanan maayo kaayo. Tungod niini nga hinungdan, among girekomenda nga ang mga taghimo sa pakete magsulay sa AppImages sa tanan nga target nga sistema (mga pag-apod-apod).
  • Ang mga payload sa aplikasyon kinahanglan nga mabalhin sa tibuuk nga sistema sa file. Ikasubo, daghang mga aplikasyon adunay mga hard-coded nga hingpit nga mga agianan padulong, pananglitan, mga kapanguhaan sa /usr/share. Kini kinahanglan nga ayohon sa usa ka paagi. Dugang pa, kinahanglan nimo nga i-export LD_LIBRARY_PATH, o ayohon rpath aron ang loader makapangita ug may kalabutan nga mga librarya. Ang una nga pamaagi adunay mga kakulian (nga nabuntog sa komplikado nga mga paagi), ug ang ikaduha lisud kaayo.
  • Ang pinakadako nga UX pitfall alang sa mga tiggamit mao kana ibutang ang executable bit AppImage nga file pagkahuman sa pag-download. Tuohi kini o dili, kini usa ka tinuod nga babag alang sa pipila. Ang panginahanglan sa pagtakda sa executability bit lisud kaayo bisan alang sa mga eksperyensiyado nga tiggamit. Isip usa ka workaround, among gisugyot ang pag-instalar og gamay nga serbisyo nga nagmonitor sa mga file sa AppImage ug nagtakda sa ilang executability bit. Sa lunsay nga porma, dili kini ang labing kaayo nga solusyon, tungod kay dili kini molihok sa gawas sa kahon. Ang mga distribusyon sa Linux wala maghatag niini nga serbisyo, busa, ang mga tiggamit adunay dili maayo nga kasinatian sa gawas sa kahon.
  • Ang mga tiggamit sa Linux naglaum nga ang usa ka bag-ong aplikasyon adunay usa ka icon sa menu sa pagsugod. Dili nimo masulti ang sistema: "Tan-awa, adunay bag-ong aplikasyon, magtrabaho ta." Hinuon, sumala sa detalye sa XDG, kinahanglan nimo nga kopyahon ang file .desktop sa husto nga lugar sa /usr alang sa tibuok sistema nga pag-instalar, o sa $HOME alang sa indibidwal. Ang mga icon sa pipila ka mga gidak-on, sumala sa XDG detalye, kinahanglan nga ibutang sa pipila ka mga dapit sa usr o $HOME, ug dayon padagana ang mga command sa working environment aron ma-update ang icon cache, o maglaum nga ang working environment manager makahibalo niini ug awtomatik nga makamatikod sa tanan. Parehas sa mga tipo sa MIME. Ingon usa ka workaround, gisugyot nga gamiton ang parehas nga serbisyo, nga, dugang sa pagtakda sa bandila sa executability, mahimo, kung adunay mga icon, ug uban pa. sa AppImage, kopyaha kini gikan sa AppImage ngadto sa husto nga mga dapit sumala sa XDG. Kung gitangtang o gibalhin, gilauman nga malimpyohan sa serbisyo ang tanan. Siyempre, adunay mga kalainan sa kinaiya sa matag working environment, sa mga graphic file format, ang ilang mga gidak-on, mga lokasyon sa pagtipig ug mga pamaagi sa pag-update sa mga cache, nga nagmugna og problema. Sa laktud, kini nga pamaagi usa ka saklay.
  • Kung dili pa igo ang nahisgutan sa ibabaw, wala gihapoy icon nga AppImage sa file manager. Ang kalibutan sa Linux wala pa nakahukom nga ipatuman ang elficon (bisan pa panaghisgot ΠΈ pagpatuman), busa imposible nga i-embed ang icon direkta sa aplikasyon. Mao nga ang mga aplikasyon sa file manager wala’y kaugalingon nga mga icon (walay kalainan, AppImage o uban pa), naa ra sila sa start menu. Isip usa ka workaround, naggamit kami og mga thumbnail, usa ka mekanismo nga orihinal nga gidisenyo aron tugotan ang mga tigdumala sa desktop nga magpakita sa mga hulagway sa preview sa thumbnail sa mga graphic file isip ilang mga icon. Tungod niini, ang serbisyo alang sa pagtakda sa executability bit naglihok usab ingon usa ka "miniaturizer", paghimo ug pagsulat sa mga thumbnail sa icon sa angay nga mga lokasyon. /usr ΠΈ $HOME. Kini nga serbisyo naghimo usab og paglimpyo kung ang AppImage matangtang o mabalhin. Tungod sa kamatuoran nga ang matag tigdumala sa desktop adunay gamay nga kalainan, pananglitan, sa unsang mga format nga gidawat niini ang mga icon, sa unsang mga gidak-on o mga lugar, kini tanan sakit kaayo.
  • Ang aplikasyon nag-crash lang sa pagpatuman kung adunay mga sayup nga mahitabo (pananglitan, adunay usa ka librarya nga dili bahin sa base system ug wala gihatag sa AppImage), ug wala’y usa nga nagsulti sa tiggamit sa GUI kung unsa gyud ang nanghitabo. Nagsugod kami sa paglibot niini pinaagi sa paggamit mga pahibalo sa desktop, nga nagpasabut nga kinahanglan naton makuha ang mga sayup gikan sa linya sa mando, i-convert kini sa mga mensahe nga masabtan sa user, nga kinahanglan nga ipakita sa desktop. Ug siyempre, ang matag desktop environment nagdumala kanila sa usa ka gamay nga lahi.
  • Sa pagkakaron (Septiyembre 2019 - nota sa tighubad) Wala koy nakit-an nga yano nga paagi aron isulti sa sistema nga ang file 1.png kinahanglang ablihan gamit ang Krita, ug 2.png - gamit ang GIMP.

Laing butang: Haiku app bundle?
Ang lokasyon sa pagtipig alang sa mga detalye sa cross-desktop nga gigamit sa GNOME, KDE ΠΈ Xfce mao ang freedesktop.org

Ang pagkab-ot sa lebel sa sophistication nga lawom nga hinabol sa Haiku work environment lisud, kung dili imposible, tungod sa mga detalye XDG gikan sa freedesktop.org alang sa cross-desktop, ingon man mga pagpatuman sa mga tigdumala sa desktop base sa kini nga mga detalye. Isip usa ka pananglitan, mahimo natong hisgotan ang usa ka icon sa Firefox sa tibuok sistema: dayag, ang mga tagsulat sa XDG wala gani maghunahuna nga ang usa ka user mahimong adunay daghang mga bersyon sa samang aplikasyon nga na-install.

Laing butang: Haiku app bundle?
Mga icon alang sa lainlaing mga bersyon sa Firefox

Naghunahuna ko kung unsa ang mahibal-an sa kalibutan sa Linux gikan sa Mac OS X aron malikayan ang pag-screw sa paghiusa sa sistema. Kung adunay ka oras ug naa ka niini, siguruha nga basahon kung unsa ang giingon ni Arnaud Gurdol, usa sa una nga mga inhenyero sa Mac OS X:

Gusto namong himoong sayon ​​ang pag-instalar sa aplikasyon sama sa pag-drag sa icon sa aplikasyon gikan sa usa ka dapit (server, external drive) ngadto sa imong computer drive. Aron mahimo kini, ang pakete sa aplikasyon nagtipig sa tanan nga kasayuran, lakip ang mga icon, bersyon, tipo sa file nga giproseso, tipo sa mga laraw sa URL nga kinahanglan mahibal-an sa sistema aron maproseso ang aplikasyon. Naglakip usab kini sa impormasyon alang sa 'sentral nga pagtipig' sa Icon Services ug Launch Services database. Aron suportahan ang pasundayag, ang mga aplikasyon 'nadiskubre' sa daghang 'ilado' nga mga lugar: ang sistema ug ang mga direktoryo sa Aplikasyon sa gumagamit, ug ang uban pa awtomatiko kung ang tiggamit mag-navigate sa Finder sa direktoryo nga adunay sulud nga aplikasyon. Sa praktis kini nagtrabaho pag-ayo.

https://youtu.be/qQsnqWJ8D2c
Apple WWDC 2000 session 144 - Mac OS X: mga aplikasyon sa pagputos ug mga dokumento sa pag-imprenta.

Wala’y sama niini nga imprastraktura sa mga desktop sa Linux, mao nga nangita kami mga solusyon sa palibot sa mga limitasyon sa istruktura sa proyekto sa AppImage.

Laing butang: Haiku app bundle?
Motabang ba si Haiku?

Ug usa pa ka butang: Ang mga plataporma sa Linux isip sukaranan sa mga palibot sa desktop lagmit nga wala kaayo mahibal-an nga daghang mga butang nga yano ra sa usa ka makanunayon nga full-stack nga sistema nga makapahigawad nga nabahin ug komplikado sa Linux. Gigugol nako ang tibuok nga taho sa mga isyu nga may kalabutan sa plataporma sa Linux alang sa mga desktop environment (gipamatud-an sa mga batid nga developer nga ang tanan magpabilin niining paagiha sa dugay nga panahon).

Ang akong report sa mga problema sa Linux desktop environment sa 2018

Bisan si Linus Torvalds miangkon nga ang pagkabahin mao ang hinungdan nga napakyas ang ideya sa workspace.

Nindot tan-awon si Haiku!

Ang Haiku naghimo sa tanan nga talagsaon nga yano

Samtang ang walay pulos nga pamaagi sa "pag-port" sa AppImage sa Haiku mao ang pagsulay lang sa pagtukod (kasagaran runtime.c ug serbisyo) sa mga sangkap niini (nga mahimo pa gani!), Dili kini makahatag ug daghang kaayohan sa Haiku. Tungod kay sa tinuud, kadaghanan sa kini nga mga problema nasulbad sa Haiku ug maayo ang konsepto. Ang Haiku naghatag eksakto sa mga bloke sa pagtukod sa imprastraktura sa sistema nga dugay na nakong gipangita sa mga Linux desktop environment ug dili ako makatuo nga wala didto. Nga mao:

Laing butang: Haiku app bundle?
Tuohi kini o dili, kini usa ka butang nga dili mabuntog sa daghang mga tiggamit sa Linux. Sa Haiku ang tanan awtomatiko nga nahimo!

  • Ang mga ELF nga mga file nga walay executability bit makakuha usa nga awtomatiko kung doble nga pag-klik sa file manager.
  • Ang mga aplikasyon mahimong adunay built-in nga mga kapanguhaan, sama sa mga icon, nga gipakita sa file manager. Dili kinahanglan nga kopyahon ang usa ka hugpong sa mga imahe sa mga espesyal nga direktoryo nga adunay mga icon, ug busa dili kinahanglan nga limpyohan kini pagkahuman sa pagtangtang o pagbalhin sa aplikasyon.
  • Adunay usa ka database alang sa pag-link sa mga aplikasyon sa mga dokumento, dili kinahanglan nga kopyahon ang bisan unsang mga file alang niini.
  • Sa lib/ direktoryo sunod sa executable nga file, ang mga librarya gipangita pinaagi sa default.
  • Wala’y daghang mga pag-apod-apod ug mga palibot sa desktop; bisan unsa nga molihok, molihok bisan diin.
  • Walay bulag nga module nga ipadagan nga lahi sa direktoryo sa Applications.
  • Ang mga aplikasyon walay mga built-in nga hingpit nga mga agianan sa ilang mga kahinguhaan; sila adunay espesyal nga mga gimbuhaton alang sa pagtino sa lokasyon sa runtime.
  • Ang ideya sa mga compressed file system nga mga imahe gipaila: kini bisan unsang hpkg package. Ang tanan niini gi-mount sa kernel.
  • Ang matag file giablihan sa aplikasyon nga nagmugna niini, gawas kung klaro nga imong isulti kung dili. Pagkanindot niini!

Laing butang: Haiku app bundle?
Duha ka png file. Timan-i ang lain-laing mga icon nga nagpakita nga kini ablihan sa lain-laing mga aplikasyon sa diha nga doble-klik. Timan-i usab ang "Open with:" drop-down menu diin ang user makapili ug indibidwal nga aplikasyon. Unsa ka yano!

Morag daghan sa mga saklay ug mga workaround nga gikinahanglan sa AppImage sa Linux nahimong wala na kinahanglana sa Haiku, nga adunay kayano ug sophistication sa kinauyokan niini nga naghimo niini sa pagdumala sa kadaghanan sa atong mga panginahanglan.

Nagkinahanglan ba ang Haiku og mga pakete sa app pagkahuman sa tanan?

Kini modala ngadto sa usa ka dako nga pangutana. Kung kini usa ka han-ay sa kadako nga labi ka dali nga maghimo usa ka sistema sama sa AppImage sa Haiku kaysa sa Linux, angay ba kini buhaton? O ang Haiku, uban sa iyang hpkg package system, epektibo nga nagwagtang sa panginahanglan sa pagpalambo sa maong ideya? Aw, aron matubag kinahanglan naton tan-awon ang panukmod sa luyo sa paglungtad sa AppImages.

Ang panglantaw sa tiggamit

Atong tan-awon ang atong end user:

  • Gusto kong mag-install ug aplikasyon nga dili mangayo ug administrator (root) password. Wala’y konsepto sa usa ka administrador sa Haiku, ang tiggamit adunay bug-os nga kontrol tungod kay kini usa ka personal nga sistema! (Sa prinsipyo, mahanduraw nimo kini sa multiplayer mode, nanghinaut ko nga ang mga developers magpabilin nga yano)
  • Gusto nako nga makuha ang pinakabag-o ug labing kadaghan nga mga bersyon sa mga aplikasyon, nga wala maghulat nga kini makita sa akong pag-apod-apod (kasagaran kini nagpasabut nga "dili gyud", labing menos gawas kung gi-update nako ang tibuuk nga operating system). Sa Haiku kini "nasulbad" sa mga naglutaw nga pagpagawas. Kini nagpasabut nga posible nga makuha ang labing bag-o ug labing kadaghan nga mga bersyon sa mga aplikasyon, apan aron mahimo kini kinahanglan nimo nga kanunay nga i-update ang nahabilin nga sistema, nga epektibo nga himuon kini nga "target nga naglihok".
  • Gusto nako ang daghang mga bersyon sa parehas nga aplikasyon nga magkauban, tungod kay wala’y paagi nga mahibal-an kung unsa ang nabuak sa labing bag-ong bersyon, o, ingon, ako, ingon usa ka web developer, kinahanglan nga sulayan ang akong trabaho sa ilawom sa lainlaing mga bersyon sa browser. Gisulbad ni Haiku ang una nga problema, apan dili ang ikaduha. Ang mga pag-update gibalikbalik, apan alang lamang sa tibuuk nga sistema; imposible (sa akong nahibal-an) nga modagan, pananglitan, daghang mga bersyon sa WebPositive o LibreOffice sa parehas nga oras.

Usa sa mga developer nagsulat:

Sa esensya ang katarungan mao kini: ang kaso sa paggamit talagsaon kaayo nga ang pag-optimize alang niini dili makatarunganon; ang pagtratar niini isip usa ka espesyal nga kaso sa HaikuPorts daw labaw pa sa madawat.

  • Kinahanglan nakong tipigan ang mga app kung asa ko sila ganahan, dili sa akong startup drive. Kanunay kong mahurot ang disk space, mao nga kinahanglan kong magkonektar sa usa ka eksternal nga drive o direktoryo sa network aron tipigan ang mga aplikasyon (tanan nga bersyon nga akong na-download). Kung gikonektar nako ang ingon nga drive, kinahanglan nako ang mga aplikasyon nga ilunsad pinaagi sa pag-double click. Gitipigan sa Haiku ang mga daan nga bersyon sa mga pakete, apan wala ako kahibalo kung giunsa kini pagbalhin sa usa ka eksternal nga drive, o kung giunsa ang paglansad sa mga aplikasyon gikan didto sa ulahi.

Komento sa developer:

Sa teknikal, posible na kini sa mount command. Siyempre, maghimo kami usa ka GUI alang niini sa diha nga kami adunay igo nga mga interesado nga tiggamit.

  • Dili nako kinahanglan ang milyon-milyon nga mga file nga nagkatag sa file system nga dili nako madumala sa akong kaugalingon. Gusto ko usa ka file matag aplikasyon nga dali nako ma-download, mapalihok, mapapas. Sa Haiku kini nga problema nasulbad gamit ang mga pakete .hpkg, nga nagbalhin, pananglitan, python, gikan sa liboan ka mga file ngadto sa usa. Apan kung adunay, pananglitan, Scribus gamit ang python, nan kinahanglan nako nga atubangon ang labing menos duha ka mga file. Ug kinahanglan kong mag-amping aron mapadayon ang mga bersyon niini nga molihok sa usag usa.

Laing butang: Haiku app bundle?
Daghang mga bersyon sa AppImages nga nagdagan sa parehas nga Linux

Ang panglantaw sa developer sa aplikasyon

Atong tan-awon gikan sa punto sa panglantaw sa developer sa aplikasyon:

  • Gusto nako nga kontrolon ang tibuuk nga kasinatian sa tiggamit. Dili ko gusto nga magsalig sa usa ka operating system aron isulti kanako kung kanus-a ug kung giunsa nako ipagawas ang mga aplikasyon. Gitugotan sa Haiku ang mga developer nga magtrabaho sa ilang kaugalingon nga mga repositoryo sa hpkg, apan kini nagpasabut nga ang mga tiggamit kinahanglan nga i-set up kini nga mano-mano, nga naghimo sa ideya nga "dili kaayo madanihon."
  • Naa koy pahina sa pag-download sa akong website diin ako nag-apod-apod .exe alang sa Windows, .dmg para sa Mac ug .AppImage alang sa Linux. O tingali gusto nako nga monetize ang pag-access sa kini nga panid, bisan unsa nga posible? Unsay akong ibutang didto para sa Haiku? Ang file igo na .hpkg nga adunay mga dependency lamang gikan sa HaikuPorts
  • Ang akong software nanginahanglan ug piho nga mga bersyon sa ubang software. Pananglitan, nahibal-an nga ang Krita nanginahanglan usa ka patched nga bersyon sa Qt, o Qt nga gipahiangay sa usa ka piho nga bersyon sa Krita, labing menos hangtod nga ang mga patch ibalik sa Qt. Mahimo nimong iputos ang imong kaugalingon nga Qt para sa imong aplikasyon sa usa ka pakete .hpkg, apan lagmit dili kini madawat.

Laing butang: Haiku app bundle?
Regular nga panid sa pag-download sa aplikasyon. Unsay akong i-post diri para sa Haiku?

Ang mga bundle (naglungtad isip mga direktoryo sa aplikasyon sama sa AppDir o .app sa Apple style) ug/o mga hulagway (sa porma sa kaayo giusab nga AppImages o .dmg gikan sa Apple) mga aplikasyon nga usa ka mapuslanon nga pagdugang sa Haiku desktop environment? O kini ba makapatunaw sa tibuok nga hulagway ug mosangpot sa pagkabahinbahin, ug busa makadugang sa pagkakomplikado? Gikuniskunis ako: sa usa ka bahin, ang katahum ug pagkamaayo sa Haiku gibase sa kamatuoran nga kasagaran adunay usa ka paagi sa pagbuhat sa usa ka butang, kaysa daghan. Sa laing bahin, kadaghanan sa mga imprastraktura para sa mga katalogo ug/o mga suite sa aplikasyon anaa na, mao nga ang sistema nagsinggit alang sa nahabilin nga pipila ka porsyento nga mahulog sa lugar.

Sumala sa developer si mr. waddlesplash

Sa Linux sila (mga katalogo ug mga kit sa aplikasyon, - gibanabana. tighubad) lagmit usa ka teknikal nga solusyon sa mga sistematikong problema. Sa Haiku mas gusto namo nga sulbaron lang ang mga problema sa sistema.

Unsa sa imong hunahuna?

Sa dili pa nimo tubagon...

Paghulat, maghimo kita usa ka dali nga pagsusi sa realidad: sa tinuud mga direktoryo sa aplikasyon - bahin na sa Haiku:

Laing butang: Haiku app bundle?
Ang mga direktoryo sa aplikasyon anaa na sa Haiku, apan wala pa gisuportahan sa file manager

Dili lang sila suportado sama sa, ingon, ang Macintosh Finder. Unsa ka bugnaw kung ang direktoryo sa QtCreator adunay "QtCreator" nga ngalan ug icon sa taas nga wala nga suok, nga maglansad sa aplikasyon kung doble ang pag-klik?

Medyo sayo pa ko nangutana:

Sigurado ka ba nga mahimo nimong mapadagan ang imong mga dekada nga daan nga apps karon kung ang tanan nga mga tindahan sa app ug mga repositoryo sa pag-apod-apod nakalimot bahin kanila ug sa ilang mga dependency? Masaligon ka ba nga ma-access pa nimo ang imong trabaho karon sa umaabot?

Aduna na bay tubag gikan sa Haiku, o makatabang ba dinhi ang mga katalogo ug mga bundle sa aplikasyon? Sa akong hunahuna mahimo nila.

Matud ni mr. waddlesplash:

Oo, naa namo ang tubag sa pangutana: suportahan lang namo kini nga mga aplikasyon kutob sa gikinahanglan hangtod nga adunay makabasa sa ilang mga format sa file sa hustong paagi o makahatag og usa-sa-usa nga gamit. Ang among pasalig sa pagsuporta sa BeOS R5 apps sa Haiku maoy pamatuod niini...

Mao na gyud!

Unsang paagiha ang angay buhaton ni Haiku?

Mahunahuna nako ang malinawon nga pag-uban sa hpkg, mga direktoryo ug mga imahe sa aplikasyon:

  • Paggamit sa software sa sistema .hpkg
  • Alang sa labing kanunay nga gigamit nga software (ilabi na kadtong kinahanglan nga mag-iskedyul sa mga rolling release), gamita .hpkg (gibana-bana nga 80% sa tanan nga mga kaso)
  • Ang uban gi-install pinaagi sa .hpkg, ang mga aplikasyon makabenepisyo gikan sa pagbalhin ngadto sa imprastraktura sa direktoryo sa aplikasyon (eg QtCreator): iatag kini .hpkg, sama kaniadto.

si mr. waddlesplash misulat:

Kung ang tanan nga imong gikinahanglan mao ang pagtan-aw sa mga aplikasyon sa /system/apps, hinoon kinahanglan natong himoon ang mga direktoryo sa Deskbar nga mas madumala alang sa mga tiggamit, tungod kay /system/apps wala gituyo nga kanunay nga ablihan ug tan-awon sa mga tiggamit (dili sama sa MacOS). Alang sa ingon nga mga sitwasyon, ang Haiku adunay lahi nga paradigm, apan kini nga kapilian, sa teorya, madawat.

  • Nakadawat ang Haiku sa imprastraktura alang sa pagpadagan sa mga imahe sa aplikasyon, matag gabii, padayon ug pagsulay nga pagtukod sa software, ingon man alang sa mga kaso kung gusto sa tiggamit nga "i-freeze kini sa oras", alang sa pribado ug internal nga software, ug uban pang mga espesyal nga kaso sa paggamit (mga 20% sa tanan). Kini nga mga hulagway naglangkob sa mga file nga gikinahanglan sa pagpadagan sa aplikasyon .hpkg, gi-mount sa sistema, ug pagkahuman nakompleto ang aplikasyon - wala ma-mount. (Tingali ang usa ka file manager mahimong magbutang og mga file .hpkg ngadto sa mga hulagway sa aplikasyon, awtomatiko o sa hangyo sa user - maayo, sama sa dihang imong gi-drag ang usa ka aplikasyon ngadto sa direktoryo sa network o external drive. Kanta ra ni! O hinoon, balak - haiku.) Sa laing bahin, ang user mahimong gusto nga i-install ang mga sulod sa imahe sa porma sa mga file.hpkg, pagkahuman sila ma-update ug maproseso sa parehas nga paagi nga kung sila gi-install pinaagi sa HaikuDepot... Kinahanglan naton mag-brainstorm).

Quote gikan ni mr. waddlesplash:

Ang pagpadagan sa mga aplikasyon gikan sa mga external drive o mga direktoryo sa network mahimong mapuslanon. Ug ang pagdugang sa abilidad sa pag-configure sa daghang mga "zone" alang sa pkgman siguradong usa ka nindot nga bahin.

Ang ingon nga sistema magpahimulos sa hpkg, mga direktoryo, ug mga imahe sa aplikasyon. Maayo sila sa tagsa-tagsa, apan sa tingub sila mahimong dili mabuntog.

konklusyon

Ang Haiku adunay usa ka balangkas nga naghatag usa ka yano ug sopistikado nga kasinatian sa tiggamit alang sa PC, ug labaw pa sa kasagaran nga gihatag alang sa Linux PC. Sistema sa pakete .hpkg mao ang usa sa ingon nga pananglitan, apan ang nahabilin nga sistema napuno usab sa pagkamaayo. Bisan pa, ang Haiku makabenepisyo gikan sa husto nga direktoryo ug suporta sa imahe sa aplikasyon. Unsa ka maayo nga buhaton kini angay nga hisgutan sa mga tawo nga nakaila sa Haiku, ang pilosopiya ug arkitektura niini nga labi ka maayo kaysa kanako. Tuod man, kapin sa usa ka semana akong naggamit ug Haiku. Bisan pa niana, nagtuo ko nga ang mga tigdesinyo, developer, ug arkitekto ni Haiku makabenepisyo niining bag-ong panglantaw. Sa labing gamay, malipay ko nga mahimong ilang "sparring partner." Naa koy kapin sa 10 ka tuig nga hands-on nga kasinatian sa mga katalogo sa aplikasyon sa Linux ug mga bundle, ug gusto nako nga makapangita usa ka gamit alang niini sa Haiku, diin sa akong hunahuna kini hingpit nga angay. Ang mga potensyal nga solusyon nga akong gisugyot dili lamang ang husto alang sa mga problema nga akong gihulagway, ug kung ang Haiku team mohukom sa pagpangita og lain, mas elegante, ako ang tanan alang niini. Sa panguna, naghunahuna na ako bahin sa ideya kung giunsa paghimo ang usa ka sistema hpkg labi pa nga kahibulongan nga wala usba ang paagi sa pagtrabaho niini. Kini turns nga ang Haiku team naghunahuna mahitungod sa aplikasyon bundle sa dugay nga panahon sa diha nga ang pagpatuman sa usa ka package management system, apan sa kasubo (sa akong hunahuna) ang ideya nahimong "karaan na". Tingali panahon na aron buhion kini?

Sulayi kini sa imong kaugalingon! Pagkahuman, ang proyekto sa Haiku naghatag mga imahe alang sa pag-boot gikan sa DVD o USB, nga nahimo Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ.
Aduna ka bay pangutana? Gidapit ka namo sa pinulongang Ruso channel sa telegram.

Overview sa sayop: Giunsa pagpusil ang imong kaugalingon sa tiil sa C ug C ++. Koleksyon sa resipe sa Haiku OS

gikan sa tagsulat hubad: kini ang ikawalo ug katapusang artikulo sa serye bahin sa Haiku.

Listahan sa mga artikulo: Ang una Ang ikaduha Ang ikatulo Ika-upat Ang ikalima Ikaunom Ikapito

Ang mga rehistradong tiggamit lamang ang makaapil sa survey. Sign in, walay sapayan.

Makatarunganon ba nga i-port ang hpkg system sa Linux?

  • Oo

  • Dili

  • Gipatuman na, isulat ko sa mga komento

20 ka tiggamit ang nagboto. 5 ka tiggamit ang nag-abstain.

Source: www.habr.com

Idugang sa usa ka comment