Mana sestÄ diena ar Haiku: zem resursu, ikonu un paciÅu pÄrsega
TL; DR: Haiku ir operÄtÄjsistÄma, kas Ä«paÅ”i izstrÄdÄta personÄlajiem datoriem, tÄpÄc tai ir vairÄki triki, kas padara tÄs darbvirsmas vidi daudz labÄku par citÄm. Bet kÄ tas darbojas?
Nesen Es atklÄju Haiku, negaidÄ«ti labu sistÄmu. Es joprojÄm esmu pÄrsteigts par to, cik gludi tas darbojas, it Ä«paÅ”i salÄ«dzinÄjumÄ ar Linux darbvirsmas vidÄm. Å odien es paskatÄ«Å”os zem pÄrsega. Ja nepiecieÅ”ams padziļinÄtai izpratnei, es salÄ«dzinÄÅ”u ar oriÄ£inÄlajÄm Macintosh, Mac OS X un Linux darbvirsmas vidÄm (XDG standarts no freedesktop.org).
Resursi ELF failos
Vakar uzzinÄju, ka IconOMatic var saglabÄt ikonas rdef resursos ELF izpildÄmajos failos. Å odien es gribu redzÄt, kÄ tas Ä«sti darbojas.
Resursi? CitÄts no BrÅ«ss Horns, sÄkotnÄjais Macintosh Finder autors un Macintosh resursu pÄrvaldnieka "tÄvs":
Esmu noraizÄjies par tradicionÄlÄs kodÄÅ”anas stingrÄ«bu. Man paÅ”ai ideja par lietojumprogrammu, kas ir iesaldÄta kodÄ, bez iespÄjas kaut ko dinamiski mainÄ«t, ir mežonÄ«gÄkÄ mežonÄ«ba. JÄbÅ«t iespÄjai pÄc iespÄjas vairÄk mainÄ«t izpildes laikÄ. Protams, paÅ”u lietojumprogrammas kodu nevar mainÄ«t, bet vai tieÅ”Äm kaut ko var mainÄ«t, nepÄrkompilÄjot kodu?
SÄkotnÄjÄ operÄtÄjsistÄmÄ Macintosh Å”iem failiem bija ādatu sadaļaā un āresursu sadaļaā, kas padarÄ«ja neticami vienkÄrÅ”u tÄdu lietu kÄ ikonu, tulkojumu un tamlÄ«dzÄ«gu saglabÄÅ”anu. izpildÄmajos failos.
OperÄtÄjsistÄmÄ Mac tas tiek izmantots ResEdit, grafiska programma, lai pÄkÅ”Åi rediÄ£Ätu resursus.
ResEdit oriÄ£inÄlajÄ Macintosh datorÄ
TÄ rezultÄtÄ kļuva iespÄjams rediÄ£Ät ikonas, izvÄlnes vienumus, tulkojumus utt. pietiekami viegli, taÄu tie joprojÄm āceļoā ar lietojumprogrammÄm.
JebkurÄ gadÄ«jumÄ Å”ai pieejai bija liels trÅ«kums: tÄ darbojÄs tikai Apple failu sistÄmÄs, kas bija viens no iemesliem, kÄpÄc Apple, pÄrejot uz Mac OS X, atteicÄs no āresursu sadaļasā.
OperÄtÄjsistÄmÄ Mac OS X Apple vÄlÄjÄs no failu sistÄmas neatkarÄ«gu risinÄjumu, tÄpÄc viÅi pieÅÄma pakotÅu koncepciju (no NeXT) ā direktorijus, kurus failu pÄrvaldnieks uzskata par "necaurspÄ«dÄ«giem objektiem", piemÄram, failus, nevis direktorijus. Jebkura pakotne ar lietojumprogrammu formÄtÄ .app cita starpÄ ir fails Info.plist (kÄda veida Apple ekvivalentÄ JSON vai YAML), kas satur lietojumprogrammas metadatus.
TaustiÅi Info.plist failam no Mac OS X lietojumprogrammas pakotnes.
Resursi, piemÄram, ikonas, lietotÄja saskarnes faili un citi, tiek glabÄti pakotnÄ kÄ faili. Koncepcija faktiski atgriezÄs savÄs saknÄs NeXT.
Mathematica.app uz NeXTSTEP 1.0 1989. gadÄ: terminÄlÄ« parÄdÄs kÄ failu direktorijs, bet grafiskajÄ failu pÄrvaldniekÄ kÄ viens objekts.
AtgriezÄ«simies pie BeOS, koncepcijÄm, uz kurÄm balstÄs Haiku. TÄs izstrÄdÄtÄji, pÄrejot no PEF (PowerPC) uz ELF (x86) (to paÅ”u, ko izmanto operÄtÄjsistÄmÄ Linux), nolÄma ELF failu beigÄs pievienot resursu sadaļu. TÄ neizmantoja savu Ä«sto ELF sadaļu, tÄ tika vienkÄrÅ”i pievienota ELF faila beigÄm. Programmas rezultÄtÄ strip un citi no binutils, to neapzinoties, vienkÄrÅ”i nogriež. TÄpÄc, pievienojot resursus ELF failam BeOS, labÄk to nemanipulÄt ar Linux rÄ«kiem.
Kas tagad notiek ar Haiku? BÅ«tÄ«bÄ vairÄk vai mazÄk tas pats.
Izmantojot ELF, sadaļai bÅ«tu lielÄka jÄga... vienÄ«gais iemesls, kÄpÄc mÄs to nedarÄm, ir tas, ka mÄs to darÄ«jÄm BeOS.
Un tagad nav jÄgas to mainÄ«t.
Resursu vadība
Resursi ir rakstÄ«ti strukturÄtÄ āresursuā formÄtÄ: bÅ«tÄ«bÄ resursu saraksts ar izmÄriem un pÄc tam to saturu. AtcerÄjos ar formÄtÄ.
KÄ pÄrbaudÄ«t resursus Haiku? Vai ir kaut kas lÄ«dzÄ«gs ResEdit?
SaskaÅÄ ar dokumentÄcija:
Lai skatÄ«tu lietojumprogrammas pakotnÄ sniegtos resursus, izpildÄmo failu var vilkt uz tÄdas programmas kÄ Resursu sniedzÄjs. Varat arÄ« doties uz terminÄli un palaist komandu listres ŠøŠ¼Ń_ŃŠ°Š¹Š»Š°.
Resourcer ir pieejams HaikuDepot, bet man tas vienkÄrÅ”i avarÄ.
KÄ pÄrvaldÄ«t resursus ELF failos? Izmantojot rsrc Šø rdef. rdef faili tiek savÄkti rsrc. Fails rdef tiek saglabÄts vienkÄrÅ”a teksta formÄtÄ, tÄpÄc ar to ir daudz vieglÄk strÄdÄt. Faila formÄts rsrc pievienots ELF faila beigÄs. MÄÄ£inÄsim spÄlÄt:
~> rc -h
Haiku Resource Compiler 1.1To compile an rdef script into a resource file:
rc [options] [-o <file>] <file>...To convert a resource file back into an rdef script:
rc [options] [-o <file>] -d <file>...Options:
-d --decompile create an rdef script from a resource file
--auto-names construct resource names from ID symbols
-h --help show this message
-I --include <dir> add <dir> to the list of include paths
-m --merge do not erase existing contents of output file
-o --output specify output file name, default is out.xxx
-q --quiet do not display any error messages
-V --version show software version and license
JÅ«s varat izmantot programmu xres pÄrbaudei un kontrolei:
/> xres
Usage: xres ( -h | --help )
xres -l <file> ...
xres <command> ...The first form prints this help text and exits.The second form lists the resources of all given files.The third form manipulates the resources of one or more files according to
the given commands.
(...)
VairÄk par resursiem un formÄtu rdef tu vari lasÄ«t Å”eit.
Standarta resursu veidi
Lai gan resursos varat ievietot jebko, ir daži noteikti standarta veidi:
app_signature: MIME lietojumprogrammas veids, faila atvÄrÅ”anas kartÄÅ”anai, palaiÅ”anai, IPC utt.
app_name_catalog_entry: TÄ kÄ lietojumprogrammas nosaukums parasti ir angļu valodÄ, varat norÄdÄ«t vietas, kur atrodas tulkotie nosaukumi, lai lietotÄji dažÄdÄs valodÄs pÄc vajadzÄ«bas redzÄtu tulkoto lietojumprogrammas nosaukumu.
app_version: tieÅ”i to, ko tu domÄji
app_flags: norÄda registrar kÄ apstrÄdÄt pieteikumu. Es domÄju, ka tajÄ ir vairÄk nekÄ Å”Ä·iet. PiemÄram, ir B_SINGLE_LAUNCH, kas liek sistÄmai palaist jaunu lietojumprogrammu procesu katru reizi, kad lietotÄjs to pieprasa (tas pats princips tiek izmantots lielÄkajai daļai lietojumprogrammu operÄtÄjsistÄmÄ Linux). Äst B_MULTIPLE_LAUNCH, izraisot procesa palaiÅ”anu katrs fails. Beidzot ir B_EXCLUSIVE_LAUNCH, kas liek sistÄmai vienlaikus palaist tikai vienu procesu neatkarÄ«gi no tÄ, cik bieži lietotÄji to palaiž (piemÄram, Å”Ädi Firefox darbojas operÄtÄjsistÄmÄ Linux; tÄdu paÅ”u rezultÄtu var sasniegt Qt lietojumprogrammÄs, izmantojot funkciju QtSingleApplication). Pieteikumi ar B_EXCLUSIVE_LAUNCH tiek paziÅots, kad lietotÄjs mÄÄ£ina tos palaist vÄlreiz: piemÄram, viÅi saÅem faila ceļu, kuru lietotÄjs vÄlas atvÄrt ar viÅu palÄ«dzÄ«bu.
vector_icon: vektora lietojumprogrammas ikona (BeOS nebija vektoru ikonu, tÄ vietÄ lielÄkajai daļai lietojumprogrammu izpildÄmajos failos bija divas rastra ikonas).
Protams, jÅ«s varat pievienot resursus ar jebkÄdiem vÄlamajiem ID un veidiem un pÄc tam lasÄ«t tos paÅ”Ä lietojumprogrammÄ vai citÄs lietojumprogrammÄs, izmantojot klasi BResources. Bet vispirms apskatÄ«sim aizraujoÅ”o ikonu tÄmu.
Vektoru ikonas haiku stilÄ
Protams, ne tikai Haiku izvÄlÄjÄs labÄko ikonu formÄtu; Å”ajÄ daÄ¼Ä situÄcija ar Linux darbvirsmas vidÄm ir tÄlu no ideÄla:
Skatoties uz Ŕo jau var just, kas tas par gabalu.
Protams, ir mÄrogojams, kas satur, kÄ jÅ«s saprotat, vektoru ikonas. KÄpÄc tad ir vÄl kaut kas? TÄ kÄ vektorgrafikas zÄ«mÄÅ”anas rezultÄts mazos izmÄros var nebÅ«t ideÄls. Es vÄlÄtos saÅemt dažÄdas iespÄjas, kas optimizÄtas dažÄdiem izmÄriem. Linux darbvirsmas vidÄs tas tiek panÄkts, izkliedÄjot dažÄda izmÄra ikonas visÄ failu sistÄmÄ.
LÅ«dzu, Åemiet vÄrÄ: nav koncepcijas par dažÄdÄm Firefox versijÄm. TÄdÄjÄdi nav iespÄjams graciozi risinÄt situÄciju, kad sistÄmÄ ir vairÄkas lietojumprogrammas versijas.
DažÄdas Firefox ikonas dažÄdÄs versijÄs. PaÅ”laik ar to Linux bez dažÄdiem kruÄ·iem nav iespÄjams tikt galÄ.
OperÄtÄjsistÄmÄ Mac OS X tas tiek apstrÄdÄts nedaudz smalkÄk:
Var redzÄt, ka ir viens fails firefox.icns iepakojumÄ Firefox.app, kurÄ ir visi izmÄri, lai vienas un tÄs paÅ”as lietojumprogrammas dažÄdÄm versijÄm bÅ«tu dažÄdas ikonas.
Daudz labÄk! Ikonas ceļo kopÄ ar lietojumprogrammu, visi resursi ir vienÄ failÄ.
AtgriezÄ«simies pie Haiku. PÄrsteidzoÅ”s risinÄjums, bez izÅÄmumiem. SaskaÅÄ ar dokumentÄcija:
Tika izstrÄdÄts Ä«paÅ”s HVIF formÄts, kas ir ļoti optimizÄts maziem izmÄriem un Ätrai renderÄÅ”anai. TÄpÄc mÅ«su ikonas lielÄkoties ir daudz mazÄkas nekÄ rastra vai plaÅ”i izmantotajÄ SVG formÄtÄ.
Un tie joprojÄm ir optimizÄti:
Ikonu izmÄri HVIF, salÄ«dzinot ar citiem formÄtiem.
AtŔķirība ir par lielumu!
TaÄu maÄ£ija ar to nebeidzas. Viens un tas pats HVIF var parÄdÄ«t dažÄdus detalizÄcijas lÄ«meÅus atkarÄ«bÄ no parÄdÄ«tÄ izmÄra, lai gan tas ir vektora formÄts.
DažÄdi detalizÄcijas lÄ«meÅi (LOD) atkarÄ«bÄ no renderÄÅ”anas izmÄra
Tagad par trÅ«kumiem: jÅ«s nevarat paÅemt SVG, iemest to ImageMagick un saukt par dienu; jums ir jÄiziet vairÄki cikli, lai izveidotu ikonu HVIF formÄtÄ. Å eit paskaidrojumus. TomÄr IconOMatic var importÄt SVG diezgan nepilnÄ«gi; aptuveni 90% SVG detaļu tiek importÄti ar zinÄmu varbÅ«tÄ«bu, atlikuÅ”ie 10% bÅ«s jÄkonfigurÄ un jÄmaina manuÄli. Lasiet vairÄk par to, kÄ HVIF veic savu burvÄ«bu viens var emuÄrÄ Lea Gansone
Ikonas pievienoŔana lietojumprogrammai
Tagad izveidotajai pakotnei varu pievienot ikonu pÄdÄjo reizi, Åemot vÄrÄ visu saÅemto informÄciju.
TÄ kÄ es Å”obrÄ«d Ä«paÅ”i nevÄlos uzzÄ«mÄt savu ikonu savai QtQuickApp āSveika, pasauleā, es to izÅemu no Qt Creator.
/Haiku/home> xres /Haiku/system/apps/QtCreator/bin/Qt Creator -o /Haiku/home/QtQuickApp/QtQuickApp -a VICN:101:BEOS:ICON /Haiku/system/apps/QtCreator/bin/Qt Creator
PÄrbaudÄ«sim, vai ikona ir nokopÄta:
/Haiku/home> xres -l /Haiku/home/QtQuickApp/QtQuickApp/Haiku/home/QtQuickApp/QtQuickApp
resources:type ID size name
------ ----------- ----------- --------------------
'VICN' 101 152238 BEOS:ICON
IzskatÄs labi, bet kÄpÄc, nokopÄjot jauno ikonu, tÄ neparÄdÄs?
KopÄtÄ VICN:101:BEOS:ICONs vÄl netiek izmantota kÄ lietojumprogrammas ikona failu pÄrvaldniekÄ.
Ko es palaidu garÄm?
IzstrÄdÄtÄja komentÄrs:
Mums ir jÄizveido fails rdef ar visiem resursiem, pÄc tam izpildiet komandu rc ŠøŠ¼Ń.rdef, tiks izveidots fails .rsrc. PÄc tam jums ir jÄpalaiž komanda resattr -o ŠøŠ¼Ń_Š±ŠøŠ½Š°ŃŠ½ŠøŠŗŠ° ŠøŠ¼Ń.rsrc. Es vismaz izmantoju Å”Ädas komandas, lai pievienotu ikonas saviem skriptiem.
Nu, es gribÄju izveidot resursu, nevis atribÅ«tu. Es tieÅ”Äm esmu apjukusi.
ViedÄ keÅ”atmiÅa, izmantojot failu sistÄmu
ELF atribÅ«tu atvÄrÅ”ana un lasÄ«Å”ana notiek lÄni. KÄ jau rakstÄ«ju iepriekÅ”, ikona ir ierakstÄ«ta kÄ resurss paÅ”Ä failÄ. Å Ä« metode ir uzticamÄka un ļauj izturÄt kopÄÅ”anu uz citu failu sistÄmu. TomÄr, piemÄram, tas tiek kopÄts arÄ« uz failu sistÄmas atribÅ«tu BEOS:ICON. Tas darbojas tikai noteiktÄs failu sistÄmÄs, piemÄram, BFS. SistÄmas parÄdÄ«tÄs ikonas (tracker un darbjoslÄ) tiek nolasÄ«tas no Ŕī paplaÅ”inÄtÄ atribÅ«ta, jo Å”is risinÄjums darbojas Ätri. DažÄs vietÄs (kur Ätrums nav svarÄ«gs, piemÄram, tipisks āParā logs) sistÄma saÅem ikonu tieÅ”i no failÄ esoÅ”Ä resursa. Bet tas nav beigas. Atcerieties, ka operÄtÄjsistÄmÄ Mac lietotÄji var aizstÄt lietojumprogrammu, direktoriju, dokumentu ikonas ar savÄm, jo āāoperÄtÄjsistÄmÄ Mac ir iespÄjams veikt Ŕīs āsvarÄ«gÄsā darbÄ«bas, piemÄram, jaunas Slack ikonas aizstÄÅ”ana ar iepriekÅ”Äjo. Haiku resurss (failÄ) ir jÄuztver kÄ oriÄ£inÄlÄ ikona, kas nÄk kopÄ ar lietojumprogrammu, un atribÅ«ts (BFS failu sistÄmÄ) ir kaut kas, kas ļauj lietotÄjam veikt izmaiÅas pÄc vÄlÄÅ”anÄs (lai gan, mÄjiens, GUI pielÄgotas ikonas ievietoÅ”anai ikonas augÅ”pusÄ nav obligÄta).
Failu sistÄmas atribÅ«tu pÄrbaude
Ar resaddr Ir iespÄjams pÄrbaudÄ«t un iestatÄ«t failu sistÄmas atribÅ«tus.
/> resattr
Usage: resattr [ <options> ] -o <outFile> [ <inFile> ... ]
Reads resources from zero or more input files and adds them as attributes
to the specified output file, or (in reverse mode) reads attributes from
zero or more input files and adds them as resources to the specified output
file. If not existent the output file is created as an empty file.
(...)
BÅ«tÄ«bÄ tÄ ir "lÄ«me", kas veic pÄrveidoÅ”anu starp (uzticamiem) resursiem un (Ätriem) failu sistÄmas atribÅ«tiem. Un tÄ kÄ sistÄma sagaida resursu saÅemÅ”anu un kopÄÅ”anu veic automÄtiski, es par to vairs neuztraucos.
hpkg pakeŔu burvība
PaÅ”laik (visbiežÄk) pakotnes tiek izmantotas, lai iegÅ«tu programmas uz Haiku .hpkg. Neļaujiet sevi apmÄnÄ«t ar vienkÄrÅ”u nosaukumu: .hpkg formÄts darbojas pilnÄ«gi savÄdÄk nekÄ citi formÄti ar lÄ«dzÄ«giem nosaukumiem, ar kuriem esat sastapies, tam ir patiesas lielvaras.
Izmantojot tradicionÄlos pakotÅu formÄtus, es ilgu laiku biju sajukums Ŕī fakta dÄļ: jÅ«s lejupielÄdÄjat vienu lietu (pakotni), bet sistÄmÄ tiek instalÄta cita lieta (faili pakotnes iekÅ”pusÄ). InstalÄjot pakotni tradicionÄlÄ veidÄ, ir diezgan grÅ«ti pÄrvaldÄ«t failus (piemÄram, tos dzÄst). Un viss, jo iepakojuma saturs izkaisÄ«ti visÄ failu sistÄmÄ, tostarp vietÄs, kur vidusmÄra lietotÄjam var nebÅ«t rakstÄ«Å”anas piekļuves. Tas rada veselu programmu klasi - pakeÅ”u pÄrvaldnieki. TaÄu jau instalÄtÄs programmatÅ«ras pÄrsÅ«tÄ«Å”ana, piemÄram, uz citu maŔīnu, noÅemamo disku vai failu serveri, kļūst vÄl grÅ«tÄka, ja ne pilnÄ«gi neiespÄjama. TipiskÄ sistÄmÄ, kuras pamatÄ ir Linux, var viegli bÅ«t no vairÄkiem simtiem tÅ«kstoÅ”u lÄ«dz miljoniem atseviŔķu failu. Lieki piebilst, ka tas ir gan trausls, gan lÄns, piemÄram, sÄkotnÄji uzstÄdot sistÄmu, instalÄjot, atjauninot un atinstalÄjot parastÄs pakotnes, kÄ arÄ« kopÄjot sÄknÄÅ”anas apjomu (saknes nodalÄ«jumu) uz citu datu nesÄju.
Es strÄdÄju pie projekta AppImage, kas ir daļÄjs kruÄ·is galalietotÄju lietojumprogrammÄm. Å is ir programmatÅ«ras izplatÄ«Å”anas formÄts, kas apkopo lietojumprogrammu un visas tÄs atkarÄ«bas vienÄ failu sistÄmas attÄlÄ, kas tiek uzstÄdÄ«ts, startÄjot lietojumprogrammu. IevÄrojami vienkÄrÅ”o lietas, jo tas pats ImageMagick pÄkÅ”Åi pÄrvÄrÅ”as par vienu failu, ko failu pÄrvaldniekÄ pÄrvalda vienkÄrÅ”i mirstÄ«gie. PiedÄvÄtÄ metode darbojas tikai programmatÅ«rai, kÄ norÄdÄ«ts projekta nosaukumÄ, un tai ir arÄ« savs problÄmu kopums, jo cilvÄki, kas ir iesaistÄ«ti programmatÅ«ras piegÄdÄ Linux, vienmÄr norÄda uz mani ar bultiÅu.
AtgriezÄ«simies pie Haiku. Vai ir izdevies atrast optimÄlo lÄ«dzsvaru starp tradicionÄlajÄm pakotÅu sistÄmÄm un uz attÄliem balstÄ«tas programmatÅ«ras piegÄdi? ViÅas pakas .hpkg faktiski saspiesti failu sistÄmas attÄli. Kad sistÄma sÄknÄjas, kodols pievieno visas instalÄtÄs un aktÄ«vÄs pakotnes ar aptuveni Å”Ädiem kodola ziÅojumiem:
KERN: package_daemon [16042853: 924] active package: "gawk-4.2.1-1-x86_64.hpkg"
KERN: package_daemon [16043023: 924] active package: "ca_root_certificates_java-2019_01_23-1-any.hpkg"
KERN: package_daemon [16043232: 924] active package: "python-2.7.16-3-x86_64.hpkg"
KERN: package_daemon [16043405: 924] active package: "openjdk12_default-12.0.1.12-1-x86_64.hpkg"
KERN: package_daemon [16043611: 924] active package: "llvm_libs-5.0.0-3-x86_64.hpkg"
ForÅ”i, jÄ? Pagaidiet, bÅ«s vÄl forÅ”Äk!
Ir ļoti īpaŔs iepakojums:
KERN: package_daemon [16040020: 924] active package: "haiku-r1~beta1_hrev53242-1-x86_64.hpkg"
TajÄ ir ļoti minimÄlistiska operÄtÄjsistÄma, ieskaitot kodolu. Ticiet vai nÄ, pat pats kodols netiek izÅemts no sÄknÄÅ”anas sÄjuma (saknes nodalÄ«juma), bet tiek rÅ«pÄ«gi ielÄdÄts savÄ vietÄ no iepakojuma .hpkg. Oho! Es jau minÄju, ka, manuprÄt, daļa no Haiku vispÄrÄjÄs izsmalcinÄtÄ«bas un konsekvences izriet no tÄ, ka visa sistÄma, sÄkot no kodola un lietotÄja galvenÄs telpas lÄ«dz pakotÅu pÄrvaldÄ«bai un izpildlaika infrastruktÅ«rai, tiek izstrÄdÄta, sadarbojoties vienai komandai. IedomÄjieties, cik daudz dažÄdu grupu un komandu bÅ«tu nepiecieÅ”ams, lai palaistu kaut ko lÄ«dzÄ«gu Å”im Linux [Es iedomÄjos PuppyLinux projektu - apm. tulkotÄjs]. PÄc tam iedomÄjieties, cik ilgs laiks bÅ«s nepiecieÅ”ams, lai Ŕī pieeja tiktu pieÅemta sadalÄs. ViÅi saka: paÅemiet vienkÄrÅ”u problÄmu, sadaliet to starp dažÄdiem izpildÄ«tÄjiem, un tÄ kļūs tik sarežģīta, ka to vairs nebÅ«s iespÄjams atrisinÄt. Haiku Å”ajÄ gadÄ«jumÄ man atvÄra acis. Es domÄju, ka tas ir tieÅ”i tas, kas tagad notiek operÄtÄjsistÄmÄ Linux (Linux Å”ajÄ gadÄ«jumÄ ir kopÄ«gs termins Linux/GNU/dpkg/apt/systemd/Xorg/dbus/Gtk/GNOME/XDG/Ubuntu stekam).
SistÄmas atgrieÅ”ana, izmantojot hpkg
Cik bieži notiek Å”Äda situÄcija: atjauninÄÅ”ana bija veiksmÄ«ga, un tad izrÄdÄs, ka kaut kas nedarbojas tÄ, kÄ vajadzÄtu? Ja izmantojat parastos pakotÅu pÄrvaldniekus, ir grÅ«ti atgriezt sistÄmas stÄvokli brÄ«dÄ«, kad tika instalÄtas jaunas pakotnes (piemÄram, ja kaut kas nogÄja greizi). Dažas sistÄmas piedÄvÄ risinÄjumus failu sistÄmas momentuzÅÄmumu veidÄ, taÄu tie ir diezgan apgrÅ«tinoÅ”i un netiek izmantoti visÄs sistÄmÄs. Haiku to atrisina, izmantojot paketes .hpkg. Ikreiz, kad sistÄmÄ mainÄs pakotnes, vecÄs pakotnes netiek dzÄstas, bet tiek saglabÄtas sistÄmÄ apakÅ”direktorijÄs, piemÄram, /Haiku/system/packages/administrative/state-<...>/ pastÄvÄ«gi. NepabeigtÄs darbÄ«bas saglabÄ savus datus apakÅ”direktorijÄs /Haiku/system/packages/administrative/transaction-<...>/.
Saturs /Haiku/system/packages/administrative. Katalogos āstate...ā ir teksta faili ar aktÄ«vo pakotÅu nosaukumiem, savukÄrt direktorijos ātransaction...ā ir paÅ”as pakotnes.
"Vecais aktÄ«vais stÄvoklis", t.i. sarakstu .hpkg pakotnes, kas ir aktÄ«vas pirms izmaiÅas, tiek ierakstÄ«tas pÄc katras darbÄ«bas failu pÄrvaldniekÄ teksta failÄ /Haiku/system/packages/administrative/state-<...>/activated-packages. LÄ«dzÄ«gÄ veidÄ teksta failÄ tiek ierakstÄ«ts jauns āaktÄ«vais stÄvoklisā. /Haiku/system/packages/administrative/activated-packages.
Katalogs /Haiku/system/packages/administrative/state-<...>/ satur tikai teksta failu ar Ŕī stÄvokļa aktÄ«vo pakotÅu sarakstu (ja pakotnes tiek instalÄtas bez noÅemÅ”anas), un, ja pakotnes tika noÅemtas vai atjauninÄtas, stÄvokļa direktorijÄ ir vecas pakotÅu versijas.
Kad sistÄma sÄk darboties, pamatojoties uz pakotÅu sarakstu, tiek pieÅemts lÄmums aktivizÄt (montÄt) pakotnes. Tas ir tik vienkÄrÅ”i! Ja lejupielÄdes laikÄ kaut kas noiet greizi, varat likt lejupielÄdes pÄrvaldniekam izmantot citu, vecÄku sarakstu. ProblÄma atrisinÄta!
Haiku lejupielÄdÄtÄjs. Katrs ieejas punkts parÄda atbilstoÅ”u "aktÄ«vo stÄvokli"
Man patÄ«k pieeja, ka "aktÄ«vÄ stÄvokļa" sarakstÄ ir vienkÄrÅ”i teksta faili ar viegli saprotamiem nosaukumiem .hpkg. Tas ir krasÄ pretstatÄ tam, ka tas ir paredzÄts maŔīnÄm, nevis cilvÄkiem. Ä·ekarÄ no OSTree vai Flatpak failu sistÄmÄ (tÄdÄ paÅ”Ä lÄ«menÄ« kÄ Microsoft GUID).
Katram laika punktam aktÄ«vo pakotÅu saraksts
KonfigurÄcijas dati
AcÄ«mredzot katalogÄ /Haiku/system/packages/administrative/writable-files satur pakotÅu konfigurÄcijas failus, taÄu tie ir ierakstÄmi. Galu galÄ, kÄ jÅ«s atceraties, .hpkg uzstÄdÄ«ts tikai lasÄms. TÄtad Å”ie faili pirms rakstÄ«Å”anas ir jÄnokopÄ no pakotnÄm. Ir nozÄ«me.
GUI integrÄcija .hpkg sistÄmai
Let's tagad redzÄt, kÄ Å”Ä«s spÄ«dÄ«gÄs somas .hpkg tikt galÄ ar integrÄciju lietotÄja darba vidÄ (UX). Galu galÄ Haiku ir paredzÄtas personÄ«gai lietoÅ”anai. PersonÄ«gi es uzstÄdÄ«ju latiÅu augstu, salÄ«dzinot lietotÄju pieredzi ar pakotnÄm .app operÄtÄjsistÄmÄ Macintosh ar tÄdu paÅ”u pieredzi .hpkg. Es pat nesalÄ«dzinÄÅ”u situÄciju ar darba vidÄm uz Linux, jo tÄ ir absolÅ«ti briesmÄ«ga salÄ«dzinÄjumÄ ar citÄm.
NÄk prÄtÄ Å”Ädi scenÄriji:
Es vÄlos apskatÄ«t iepakojuma saturu .hpkg
Es vÄlos instalÄt pakotni
Es vÄlos izÅemt iepakojumu
Es vÄlos noÅemt kaut ko, kas sistÄmÄ ienÄca kÄ daļa no pakotnes
Es vÄlos kopÄt kaut ko, kas sistÄmÄ ienÄca kÄ pakotnes daļa
Es vÄlos lejupielÄdÄt visas pakotnes atkarÄ«bas, kas var nebÅ«t daļa no katras Haiku instalÄcijas (piemÄram, man ir fiziski izolÄta iekÄrta bez interneta piekļuves).
Es vÄlos pÄrvietot savas pakotnes (vai daļu no tÄm) atseviŔķi uz citu vietu, atseviŔķi no sÄknÄÅ”anas sÄjuma (saknes nodalÄ«juma) (jo, piemÄram, man tajÄ nav pietiekami daudz vietas).
Tam vajadzÄtu aptvert lielÄko daļu lielÄko mana ikdienas darba gadÄ«jumu. Nu, sÄksim.
PÄrbauda iepakojuma saturu
OperÄtÄjsistÄmÄ Mac Es vienkÄrÅ”i ar peles labo pogu noklikŔķiniet uz pakotnes, lai to atvÄrtu un skatÄ«tu saturu Finder. Galu galÄ patiesÄ«bÄ tas ir tikai slÄpts direktorijs! (Es zinu, ka ir iepakojumi .pkg sistÄmas daļai, kas nav lietojumprogrammas, bet parastie lietotÄji ar tÄm visbiežÄk nesadarbojas).
Uz Haiku Es ar peles labo pogu noklikŔķiniet uz iepakojuma, pÄc tam noklikŔķiniet uz "Saturs", lai redzÄtu, kas ir iekÅ”Ä. Bet Å”eit ir tikai failu saraksts bez iespÄjas tos atvÄrt, veicot dubultklikŔķi.
BÅ«tu daudz labÄk, ja bÅ«tu veids, kÄ (Ä«slaicÄ«gi) uzstÄdÄ«t iepakojumu .hpkg skatÄ«t, izmantojot failu pÄrvaldnieku, un lietotÄjam nav jÄuztraucas par ievieÅ”anas detaļÄm. (Starp citu, jÅ«s varat atvÄrt .hpkg iepakot Expander, kas to var izpakot tÄpat kÄ jebkuru citu arhÄ«vu).
HaikuDepot interfeiss ļauj skatÄ«t pakotÅu failu sarakstu, taÄu nav iespÄjas skatÄ«t saturu, piemÄram, veicot dubultklikŔķi uz README.md.
OperÄtÄjsistÄmÄ Mac, lielÄkÄ daļa diska attÄlu .dmg satur iepakojumus .app. Veiciet dubultklikŔķi uz diska attÄla un pÄc tam kopÄjiet pakotni, piemÄram, ievelkot to /Applications programmÄ Finder. Man tas ir paÅ”saprotami, taÄu esmu dzirdÄjis, ka daži iesÄcÄji ar to var netikt galÄ. PÄc noklusÄjuma Apple "iesaka" visas sistÄmas direktoriju /Applications (NeXT tas bija gan tÄ«klÄ, gan individuÄli), taÄu jÅ«s varat viegli ievietot savas lietojumprogrammas failu serverÄ« vai apakÅ”direktorijÄ $HOME/Applications, ja jums tas tÄ patÄ«k.
Uz Haiku, veiciet dubultklikŔķi uz pakotnes, pÄc tam noklikŔķiniet uz āInstalÄtā, tas nevar bÅ«t vienkÄrÅ”Äk. Es domÄju, kas notiek, ja pakotnei ir atkarÄ«bas, kas ir pieejamas HaikuPorts, bet vÄl nav instalÄtas. OperÄtÄjsistÄmÄ Linux viÅi patieÅ”Äm nezina, ko darÄ«t Å”ajÄ situÄcijÄ, taÄu risinÄjums ir acÄ«mredzams - jautÄjiet lietotÄjam, vai viÅam ir nepiecieÅ”ams lejupielÄdÄt un instalÄt atkarÄ«bas. TieÅ”i to, ko dara Haiku.
Es manuÄli lejupielÄdÄju 'sanity' pakotni un noklikŔķinÄju uz tÄs, pakotÅu pÄrvaldnieks zina, no kurienes iegÅ«t tÄs atkarÄ«bas (pieÅemot, ka krÄtuves jau ir reÄ£istrÄtas sistÄmÄ). Ne katrs Linux izplatÄ«jums to var izdarÄ«t.
VÄl viens veids ir izmantot failu pÄrvaldnieku, vienkÄrÅ”i velciet un nometiet .hpkg iepakojumÄ vai iekÅ”Ä /Haiku/system/packages (pÄc noklusÄjuma visas sistÄmas instalÄÅ”anai) vai iekÅ”Ä /Haiku/home/config/packages (individuÄlai instalÄÅ”anai; dubultklikŔķi nav pieejams - mani joprojÄm kaitina vÄrds "config" Å”ajÄ vietÄ, kas man Å”ajÄ gadÄ«jumÄ ir sinonÄ«ms vÄrdam "iestatÄ«jumi"). Un vairÄku lietotÄju jÄdziens pat Haiku vÄl nav pieejams (droÅ”vien tÄpÄc tas ir tik vienkÄrÅ”i - nezinu, varbÅ«t vairÄku lietotÄju iespÄjas nevajadzÄ«gi sarežģīs lietas darbvirsmas darbvirsmas videi).
Haiku Å”ajÄ kategorijÄ uzvar, jo tÄ var strÄdÄt ne tikai ar lietojumprogrammÄm, bet arÄ« ar sistÄmas programmÄm.
Pakotnes noÅemÅ”ana no GUI
OperÄtÄjsistÄmÄ Mac, jums ir jÄvelk lietojumprogrammas ikona uz atkritni, un tas arÄ« viss. Viegli!
Uz Haiku, pirmkÄrt, jÄatrod, kur sistÄmÄ atrodas pakotne, jo to reti instalÄjat Ä«stajÄ vietÄ (sistÄma dara visu). Parasti vajag ieskatÄ«ties /Haiku/system/packages (ar visas sistÄmas noklusÄjuma instalÄciju) vai iekÅ”Ä /Haiku/home/config/packages (Vai es minÄju, ka āconfigā ir nepareizs nosaukums?). PÄc tam lietojumprogramma tiek vienkÄrÅ”i aizvilkta uz miskasti, un viss.
Viegli! TomÄr es tÄ neteiktu. LÅ«k, kas patiesÄ«bÄ notiek:
Tas notiek, ja velciet lietojumprogrammu uz atkritni no /Haiku/system/packages
Tikko mÄÄ£inÄju pÄrvietot savu vakardienas programmu "Hello World" QtQuickApp uz miskasti. Es nemÄÄ£inÄju pÄrvietot sistÄmas direktoriju, un tÄ kÄ visas pakotnes ir instalÄtas sistÄmas direktorijÄ, pakotni nav iespÄjams noÅemt .hpkg bez izmaiÅÄm "tÄ saturs". Parasts lietotÄjs nobÄ«sies un nospiedÄ«s pÄc noklusÄjuma pieŔķirto pogu āAtceltā.
Å Ä« ziÅa ir vairÄk nekÄ 10 gadus veca. VisticamÄk, mums tas ir jÄkonfigurÄ tÄ, lai brÄ«dinÄjums parÄdÄ«tos tikai tad, kad pati pakotne tiek pÄrvietota. RegulÄrajiem lietotÄjiem tas jebkurÄ gadÄ«jumÄ nav jÄdara.
Labi, varbÅ«t man tas jÄdara, izmantojot HaikuDepot? Es veicu dubultklikŔķi uz iepakojuma /Haiku/system/packages, gaidot, lÄ«dz parÄdÄ«sies poga āAtinstalÄtā. NÄ, ir (tikai) āInstalÄtā. "AtinstalÄt", kur tu esi?
Prieka pÄc es mÄÄ£inÄju redzÄt, kas notiktu, ja es noklikŔķinÄtu uz āInstalÄtā uz jau instalÄtas pakotnes. Tas izrÄdÄs Å”Ädi:
Tas notiek, ja mÄÄ£inÄt instalÄt jau instalÄtu pakotni.
ParÄdÄs nÄkamais:
Ja iepriekÅ”ÄjÄ logÄ noklikŔķinÄsit uz āLietot izmaiÅasā, tas izskatÄ«sies Å”Ädi
Es pieÅemu, ka tÄ ir programmatÅ«ras kļūda; saite uz lietojumprogrammu jau ir tur. [autors nesniedza saiti - apm. tulkotÄjs]
Ätrs risinÄjums: pievienojiet pogu AtinstalÄt, ja pakotne jau ir ievietota /Haiku/system/packages, vai iekÅ”Ä /Haiku/home/config/packages.
Apskatot HaikuDepot instalÄto pakotÅu sarakstu, es redzu savu pakotni sarakstÄ un varu to noÅemt.
Mac uzvar Å”ajÄ kategorijÄ. Bet es varu iedomÄties, ka ar pareizu iestatÄ«Å”anu Haiku lietotÄja pieredze bÅ«s labÄka nekÄ Mac. (Viens no izstrÄdÄtÄjiem to novÄrtÄja Å”Ädi: "MazÄk nekÄ stunda, lai pievienotu norÄdÄ«to funkcionalitÄti HaikuDepot, ja jÅ«s zinÄt nedaudz C++, kÄds brÄ«vprÄtÄ«gais?)
Kaut ko izÅemt no iepakojuma
MÄÄ£inÄsim noÅemt paÅ”u lietojumprogrammu, nevis pakotni .hpkg, no kÄ tas nÄca (Å”aubos, ka āvienkÄrÅ”ajiem mirstÄ«gajiemā ir kÄda atŔķirÄ«ba).
OperÄtÄjsistÄmÄ Mac, lietotÄjs faktiski parasti strÄdÄ ar failu .dmgno kurienes nÄk lietojumprogrammu pakotne .app. Parasti attÄli .dmg tiek uzkrÄti lejupielÄžu direktorijÄ, un lietotÄjs kopÄ pakotnes uz /Applications. DomÄjams, ka daudzi lietotÄji paÅ”i nezina, ko dara, Å”o hipotÄzi apstiprina kÄds bijuÅ”ais Apple darbinieks. (Viena no lietÄm, kas man nepatÄ«k operÄtÄjsistÄmÄ Mac. Un, piemÄram, ar AppImage nav nekÄdas atŔķirÄ«bas starp lietojumprogrammu un pakotni, kurÄ tÄ bija. Velciet ikonu uz miskasti = tas ir viss. VienkÄrÅ”i!)
Uz Haiku, pastÄv arÄ« dalÄ«jums starp apps/ Šø packages/, tÄpÄc es Å”aubos, vai tas lietotÄjiem padarÄ«ja to skaidrÄku. Bet kas notiek, ja velkat programmu no apps/ Pievienot grozam:
Tas notiek, mÄÄ£inot noÅemt lietojumprogrammu, kas Åemta no faila .hpkg
Tehniski tas ir pareizi (galu galÄ lietojumprogramma vispirms tiek mitinÄta tikai lasÄmÄ failu sistÄmÄ), taÄu tÄ nav Ä«paÅ”i noderÄ«ga lietotÄjam.
Ätrs risinÄjums: tÄ vietÄ iesakiet izmantot GUI, lai dzÄstu .hpkg
Prieka pÄc mÄÄ£inÄju dublÄt lietojumprogrammu, nospiežot Alt+D. Es saÅÄmu ziÅojumu "Nevar pÄrvietot vai kopÄt objektus tikai lasÄmÄ sÄjumÄ." Un viss tÄpÄc /system (TurklÄt /system/packages Šø /system/settings) ir packagefs pievienoÅ”anas punkts (atcerieties, kÄ tas parÄdÄs izvadÄ df?). DiemžÄl komandas izvade mount nenoskaidro situÄciju (kÄ teikts vienÄ no iepriekÅ”Äjiem rakstiem), mountvolume nerÄda to, ko meklÄjat (acÄ«mredzot, paketes, kas uzstÄdÄ«tas caur cilpu .hpkg netiek uzskatÄ«ti par "sÄjumiem"), un es arÄ« aizmirsu alternatÄ«vÄs komandas.
Å ajÄ kategorijÄ neviens neuzvarÄja, izÅemot AppImage (bet, ja godÄ«gi, tas ir neobjektÄ«vs viedoklis). TomÄr var iedomÄties, ka pÄc pielÄgoÅ”anas Haiku lietotÄja pieredze bÅ«s labÄka nekÄ Mac.
PiezÄ«me: jums ir jÄnoskaidro, kas ir āsÄjumsā saistÄ«bÄ ar āsadaļuā. Tas, iespÄjams, ir lÄ«dzÄ«gs "mapes" un "direktorija" attiecÄ«bÄm: lielÄkÄ daļa direktoriju failu pÄrvaldniekÄ parÄdÄs kÄ mapes, bet ne visi no tiem (piemÄram, pakotnes, kas tiek uzskatÄ«tas par failiem). Vai Å”Äda veida displejs padara mani par oficiÄlu nerdi?
Pakotnes satura kopÄÅ”ana uz citu sistÄmu
OperÄtÄjsistÄmÄ Mac, es stulbi velku paku .app, un tÄ kÄ atkarÄ«bas atrodas iepakojumÄ, tÄs pÄrvietojas kopÄ.
Uz Haiku, velku aplikÄciju, bet atkarÄ«bas vispÄr netiek apstrÄdÄtas.
Ätrs risinÄjums: tÄ vietÄ ieteiksim vilkt visu `.hpkg pakotni kopÄ ar jebkÄdÄm atkarÄ«bÄm, ja tÄdas ir.
Å ajÄ kategorijÄ nepÄrprotami uzvar Mac. Vismaz man, viÅu paradigmas cienÄ«tÄjam. Man vajadzÄtu to pÄrkopÄt uz Haiku .hpkg aplikÄcijas vietÄ, bet sistÄma man Å”o nepiedÄvÄ...
LejupielÄdÄjiet pakotni ar visÄm tÄs atkarÄ«bÄm
Ne visas maŔīnas ir visu laiku savienotas ar tÄ«klu. Gluži pretÄji, dažas maŔīnas (jÄ, es skatos uz jums, mÅ«sdienu Windows, Mac un Linux) par to aizmirst. Man ir svarÄ«gi, lai es varÄtu aiziet, piemÄram, uz interneta kafejnÄ«cu, lejupielÄdÄt programmatÅ«ru noÅemamajÄ diskÄ, ievietot Å”o disku savÄ mÄjas datorÄ un bÅ«t pÄrliecinÄts, ka viss darbosies [riskants puisis, dara to operÄtÄjsistÄmÄ Windows... - apm. tulkotÄjs].
RezultÄtÄ man ir tendence saskarties ar neapmierinÄtÄm atkarÄ«bÄm no Windows un Linux nedaudz biežÄk nekÄ parasti.
OperÄtÄjsistÄmÄ Mac tas parasti ir viens fails, viss, kas jums jÄdara, ir lejupielÄdÄt .dmg. VisbiežÄk tam nav citu atkarÄ«bu, izÅemot tÄs, kuras pÄc noklusÄjuma nodroÅ”ina pati MacOS. IzÅÄmums ir sarežģītas lietojumprogrammas, kurÄm nepiecieÅ”ama atbilstoÅ”a izpildes vide, piemÄram, java.
Uz Haiku lejupielÄdes pakotni .hpkg PiemÄram, vienai un tai paÅ”ai lietojumprogrammai java var nepietikt, jo java mÄrÄ·a datorÄ var bÅ«t vai nebÅ«t. Vai ir kÄds veids, kÄ lejupielÄdÄt visas noteiktÄs pakotnes atkarÄ«bas .hpkg, izÅemot tos, kas pÄc noklusÄjuma ir instalÄti programmÄ Haiku un tÄpÄc tiem jÄbÅ«t katrÄ Haiku sistÄmÄ?
Mac uzvar Å”ajÄ kategorijÄ ar nelielu pÄrsvaru.
KomentÄri Mr. waddlesplash:
UzrakstÄ«t programmu, lai apkopotu visas lietojumprogrammas atkarÄ«bas kÄ pakotÅu kopu .hpkg kÄdam, kas pÄrzina Haiku iekÅ”Äjo darbÄ«bu, pietiek ar aptuveni 15 minÅ«tÄm. Atbalsta pievienoÅ”ana Å”im nolÅ«kam nav tik sarežģīta, ja pÄc tÄ ir reÄla vajadzÄ«ba. Bet man Ŕī ir reta situÄcija.
KÄ jau rakstÄ«ju iepriekÅ”, es vÄlos ievietot savas pakas .hpkg (nu vai daļu no tiem) uz Ä«paÅ”u vietu, atseviŔķi no parastÄ izvietojuma sÄknÄÅ”anas sÄjumÄ (saknes nodalÄ«jumÄ). ParastÄ (ne tik teorÄtiskÄ) gadÄ«jumÄ iemesls tam ir tas, ka man pastÄvÄ«gi pietrÅ«kst brÄ«vas vietas savos (iebÅ«vÄtajos) diskos, lai cik lieli tie bÅ«tu. Un es parasti pievienoju ÄrÄjos diskus vai tÄ«kla koplietojumus tur, kur atrodas manas lietojumprogrammas.
OperÄtÄjsistÄmÄ Mac Es tikai pÄrvietoju pakas .app uz noÅemamo disku vai tÄ«kla direktoriju programmÄ Finder, un viss. Es joprojÄm varu veikt dubultklikŔķi, lai atvÄrtu lietojumprogrammu, kÄ parasti, izmantojot sÄknÄÅ”anas skaļumu. Tikai!
Uz Haiku, kÄ man teica, to var panÄkt, pÄrvietojot manu .hpkg pakotnes uz noÅemamo disku vai tÄ«kla direktoriju, bet pÄc tam konsolÄ ir jÄizmanto dažas nedokumentÄtas komandas, lai tÄs pievienotu sistÄmÄ. Es nezinu, kÄ to izdarÄ«t, izmantojot tikai GUI.
Mac uzvar Å”ajÄ kategorijÄ.
SaskaÅÄ ar mr. waddlesplash:
Å Ä« ir optimizÄcija, kuras pamatÄ ir normÄla lietoÅ”ana. Ja bÅ«s pieprasÄ«jums no vairÄk nekÄ viena lietotÄja, mÄs to Ä«stenosim. JebkurÄ gadÄ«jumÄ pastÄv treÅ”Äs puses ievieÅ”anas iespÄja.
Par to mÄs runÄsim nÄkamajÄ rakstÄ.
RunÄjot par tÄ«kla direktorijiem, bÅ«tu lieliski (es domÄju, ka LAN puses) bÅ«tu vienkÄrÅ”as, atklÄjamas, tÄ«kla mÄroga lietojumprogrammas (piemÄram, Zeroconf), kuras var kopÄt uz lokÄlo datoru vai palaist tieÅ”i no lokÄlÄ tÄ«kla. Protams, izstrÄdÄtÄjiem ir iespÄja atteikties, izmantojot app_flags.
Nobeiguma ziÅojums par hpkg sistÄmas integrÄciju ar GUI
Es domÄju, ka tas galvenokÄrt ir saistÄ«ts ar integrÄcijas relatÄ«vo jaunumu .hpkg GUI joprojÄm atstÄj daudz ko vÄlÄties. JebkurÄ gadÄ«jumÄ ir dažas lietas, kuras varÄtu uzlabot UX ziÅÄ...
VÄl viena lieta: kodola atkļūdoÅ”anas zeme
BÅ«tu lieliski, ja, piemÄram, kodola panikas laikÄ varÄtu ievadÄ«t komandas syslog | grep usb. Haiku tas ir iespÄjams, pateicoties Kernel Debug Land. KÄ jÅ«s varat redzÄt Å”o maÄ£iju darbÄ«bÄ, ja viss darbojas tÄ, kÄ vajadzÄtu, nenokļūstot kodola panikÄ? VienkÄrÅ”i nospiežot Alt+PrintScn+D (atkļūdoÅ”anas mnemonika). Uzreiz atceros ProgrammÄtÄja atslÄga, kas ļÄva sÄkotnÄjiem Macintosh izstrÄdÄtÄjiem ievadÄ«t atkļūdotÄju (ja tÄds, protams, bija instalÄts).
SecinÄjums
Es sÄku saprast, ka Haiku sistÄmas izsmalcinÄtÄ«ba rodas no tÄ, ka darbu veic viena neliela komanda ar skaidru fokusu uz darba vidi, ar visiem sistÄmas slÄÅiem pieejamiem.
Krass kontrasts ar Linux/GNU/dpkg/apt/systemd/Xorg/dbus/Gtk/GNOME/XDG/Ubuntu pasauli, kur viss ir sadalÄ«ts mazos gabaliÅos tiktÄl, ka abstrakcija sÄž uz abstrakcijas un brauc ar kruÄ·iem.
Bija arÄ« izpratne par to, kÄ sistÄma .hpkg apvieno tradicionÄlo pakotÅu pÄrvaldnieku, Snappy, Flatpak, AppImage, pat btrfs, labÄko praksi un apvieno tos ar Mac pieeju ātikai darbojasā.
It kÄ manÄ galvÄ kaut kas āpÄrslÄdzÄsā, un es sapratu, kÄ sistÄma .hpkg zina, kÄ ripot prom, tikai paskatoties uz viÅu. Bet tas nav es, bet gan sistÄmas skaistums un vienkÄrŔība. Liela daļa no tÄ ir iedvesmota no oriÄ£inÄlÄ Mac gara.
JÄ, pÄrlÅ«koÅ”ana pÄrlÅ«kprogrammÄ var bÅ«t saraustÄ«ta un darboties kÄ gliemezis, var trÅ«kt aplikÄciju (nav Gtk, Electron - izstrÄdÄtÄji secinÄja, ka ar izsmalcinÄtÄ«bu tiem neiet labi), video un 3d paÄtrinÄjuma var nebÅ«t pilnÄ«gi, bet es tomÄr patÄ«k Ŕī sistÄma. Galu galÄ Å”Ä«s lietas var labot, un tÄs agrÄk vai vÄlÄk parÄdÄ«sies. Tas ir tikai laika un varbÅ«t nedaudz sarkano acu jautÄjums.
Es nevaru piedÄvÄt palÄ«dzÄ«bu, bet domÄju, ka no Ŕī brīža tas sÄksies gads Haiku uz darbvirsmas.
NejauÅ”as problÄmas
VarbÅ«t jau ir pieprasÄ«jumi, vai man tie jÄatver?
BeScreenCapture jÄspÄj eksportÄt uz GIF, piemÄram, Peek. To var izdarÄ«t, izmantojot ffmpeg, kas jau ir pieejama Haiku. Pieteikums.
EkrÄnuzÅÄmuma programmatÅ«rai neizdodas tvert modÄlo logu, tÄ vietÄ tiek uzÅemts viss ekrÄns
JÅ«s nevarat apgriezt ekrÄnuzÅÄmumus, izmantojot WonderBrush apgrieÅ”anas rÄ«ku, un pÄc tam saglabÄt rezultÄtu failÄ
Man ne Ä«paÅ”i patÄ«k rokas kursors Haiku valodÄ, bet, manuprÄt, tas ir saistÄ«ts ar silto nostalÄ£isko sajÅ«tu. Tas ir Ä«paÅ”i kaitinoÅ”i, izmantojot apgrieÅ”anas rÄ«ku Krita, jo tas rada neprecÄ«zu apgrieÅ”anu (skatiet modÄlo dialogu ekrÄnuzÅÄmumus Å”ajÄ rakstÄ). Krustveida kursors bÅ«tu brÄ«niŔķīgs. Pieteikums.
IzmÄÄ£iniet to pats! Galu galÄ Haiku projekts nodroÅ”ina Ä£enerÄtus attÄlus palaiÅ”anai no DVD vai USB katru dienu. Lai instalÄtu, vienkÄrÅ”i lejupielÄdÄjiet attÄlu un ierakstiet to zibatmiÅas diskÄ, izmantojot Etcher
Vai jums ir kÄdi jautÄjumi? AicinÄm uz krievvalodÄ«go telegrammas kanÄls.