Başqa bir şey: Haiku proqram paketləri?

Başqa bir şey: Haiku proqram paketləri?

TL; DR: Haiku proqram qovluqları kimi proqram paketləri üçün lazımi dəstək ala bilərmi (məsələn .app Mac-da) və/və ya proqram şəkilləri (Linux AppImage)? Düşünürəm ki, bu, digər sistemlərə nisbətən düzgün həyata keçirilməsi daha asan olan layiqli əlavə olardı, çünki infrastrukturun əksəriyyəti artıq mövcuddur.

Bir həftə əvvəl Mən gözlənilmədən yaxşı sistem olan Haiku kəşf etdim. Yaxşı, uzun müddətdir ki, kataloqlar və tətbiq şəkilləri ilə maraqlandığım üçün (Makintoşun sadəliyindən ilhamlanıb), ağlıma bir fikir gəlməsi təəccüblü deyil...

Tam başa düşmək üçün mən Mac sadəliyini hədəfləyən və proqram müəlliflərinə və son istifadəçilərə tam nəzarəti təmin edən Linux proqram paylama formatı olan AppImage-in yaradıcısı və müəllifiyəm (əgər daha çox bilmək istəyirsinizsə, bax. wiki и sənədlər).

Haiku üçün AppImage hazırlasaq nə olacaq?

Sırf nəzəri olaraq bir az düşünək: əldə etmək üçün nə etmək lazımdır AppImage, və ya oxşar bir şey, Haiku haqqında? Hazırda nəsə yaratmaq lazım deyil, çünki artıq Haikuda mövcud olan sistem heyrətamiz işləyir, lakin xəyali təcrübə yaxşı olardı. Bu, həmçinin belə şeylərin olduqca çətin olduğu Linux iş masası mühitləri ilə müqayisədə Haiku-nun mükəmməlliyini nümayiş etdirir (mən belə deməyə haqqım var: 10 ildir ki, sazlama ilə mübarizə aparıram).

Başqa bir şey: Haiku proqram paketləri?
Macintosh System 1-də hər bir proqram Finder-də "idarə olunan" ayrıca fayl idi. AppImage-dən istifadə edərək Linux-da eyni istifadəçi təcrübəsini yenidən yaratmağa çalışıram.

Birincisi, AppImage nədir? Bu, üçüncü tərəf proqramlarını buraxmaq üçün bir sistemdir (məsələn, Ultimaker Cure), tətbiqlərin istədikləri vaxt və necə buraxılmasına imkan verir: müxtəlif paylamaların xüsusiyyətlərini bilməyə, siyasətlər qurmağa və ya infrastruktur qurmağa ehtiyac yoxdur, heç bir texniki dəstək tələb olunmur və istifadəçilərə nəyi (nəyi) quraşdıra biləcəklərini demirlər. kompüterlərində. AppImage formatında Mac paketinə bənzər bir şey kimi başa düşülməlidir .app disk şəklinin içərisində .dmg. Əsas fərq ondadır ki, proqramlar kopyalanmır, lakin Haiku paketləri ilə eyni şəkildə AppImage daxilində əbədi olaraq qalır. .hpkg quraşdırılıb və heç vaxt adi mənada quraşdırılmayıb.

10 ildən çox fəaliyyət göstərdiyi müddətdə AppImage müəyyən cəlbedicilik və populyarlıq qazandı: Linus Torvalds özü bunu açıq şəkildə təsdiqlədi və ümumi layihələr (məsələn, LibreOffice, Krita, Inkscape, Scribus, ImageMagick) onu əsas yol kimi qəbul etdi. quraşdırılmış və ya silinmiş istifadəçi proqramlarına müdaxilə etmədən davamlı və ya gecə qurulanları yaymaq. Bununla belə, Linux masa üstü mühitləri və paylamaları hələ də ənənəvi, mərkəzləşdirilmiş texniki xidmətə əsaslanan paylama modelindən yapışır və/yaxud öz müəssisə biznesini və/yaxud mühəndislik proqramlarını təşviq edir. Düzəldici (RedHat, Fedora, GNOME) və Sadə (Canonical, Ubuntu). Gəlir gülünc şəkildə.

Hamısı necə işləyir

  • Hər AppImage 2 hissədən ibarətdir: kiçik cüt klik ELF (sözdə. runtime.c), ardınca fayl sistemi şəkli SquashFS.

Başqa bir şey: Haiku proqram paketləri?

  • SquashFS fayl sistemi tətbiqin faydalı yükünü və onu işə salmaq üçün lazım olan hər şeyi ehtiva edir ki, bu da düzgün düşüncədə hər bir kifayət qədər yeni hədəf sistem (Linux paylanması) üçün standart quraşdırmanın bir hissəsi sayıla bilməz. O, həmçinin tətbiqin adı, nişanlar, MIME növləri və s. kimi metaməlumatları ehtiva edir.

Başqa bir şey: Haiku proqram paketləri?

  • İstifadəçi tərəfindən işə salındıqda, iş vaxtı fayl sistemini quraşdırmaq üçün FUSE və squashfuse istifadə edir və sonra quraşdırılmış AppImage daxilində bəzi giriş nöqtələrini (aka AppRun) idarə edir.
    Proses başa çatdıqdan sonra fayl sistemi çıxarılır.

Hər şey sadə görünür.

Və bunlar hər şeyi çətinləşdirir:

  • Bu cür müxtəlif Linux paylamaları ilə "düzgün ağılda olan" heç bir şeyi "hər yeni hədəf sistem üçün standart quraşdırmanın bir hissəsi" adlandırmaq olmaz. Biz bu problemi tikinti yolu ilə həll edirik istisna siyahısı, AppImage-də nəyin paketlənəcəyini və başqa yerə nəyin götürülməsi lazım olduğunu müəyyən etməyə imkan verir. Eyni zamanda, ümumiyyətlə, hər şeyin əla işləməsinə baxmayaraq, bəzən darıxırıq. Bu səbəbdən paket yaradıcılarına AppImages-i bütün hədəf sistemlərdə (paylamalarda) sınaqdan keçirməyi tövsiyə edirik.
  • Tətbiq yükləri fayl sistemi boyunca dəyişdirilə bilən olmalıdır. Təəssüf ki, bir çox proqramlar, məsələn, mənbələrə daxil olmaq üçün sərt kodlanmış mütləq yollara malikdir /usr/share. Bunu bir şəkildə düzəltmək lazımdır. Bundan əlavə, ya ixrac etməlisiniz LD_LIBRARY_PATH, və ya düzəldin rpath yükləyicinin əlaqəli kitabxanaları tapa bilməsi üçün. Birinci metodun çatışmazlıqları var (mürəkkəb yollarla aradan qaldırılır), ikincisi isə sadəcə çətin olur.
  • İstifadəçilər üçün ən böyük UX tələsi budur icra edilə bilən bit təyin edin Yüklədikdən sonra AppImage faylı. İnanın ya inanmayın, bu bəziləri üçün əsl maneədir. İcra qabiliyyəti bitini təyin etmək ehtiyacı hətta təcrübəli istifadəçilər üçün də çətin olur. Çözüm kimi, biz AppImage fayllarına nəzarət edən və onların icra qabiliyyəti bitini təyin edən kiçik bir xidmət quraşdırmağı təklif etdik. Təmiz formada bu, ən yaxşı həll yolu deyil, çünki qutudan çıxmayacaq. Linux paylamaları bu xidməti təmin etmir, buna görə də istifadəçilər qutudan kənarda pis təcrübəyə malikdirlər.
  • Linux istifadəçiləri yeni proqramın başlanğıc menyusunda ikona olmasını gözləyirlər. Sistemə deyə bilməzsiniz: "Bax, yeni proqram var, işləyək." Bunun əvəzinə, XDG spesifikasiyasına uyğun olaraq, faylı kopyalamalısınız .desktop doğru yerə /usr sistem miqyasında quraşdırma üçün və ya $HOME fərdi üçün. XDG spesifikasiyasına uyğun olaraq müəyyən ölçülü nişanlar müəyyən yerlərdə yerləşdirilməlidir usr və ya $HOME, və sonra işarə keşini yeniləmək üçün iş mühitində əmrləri işə salın və ya iş mühiti menecerinin bunu anlayacağına və hər şeyi avtomatik aşkarlayacağına ümid edin. MIME növləri ilə eynidir. Çözüm olaraq, eyni xidmətdən istifadə etmək təklif olunur ki, bu da icra olunma bayrağını təyin etməklə yanaşı, nişanlar varsa və s. AppImage-də onları XDG-ə uyğun olaraq AppImage-dən lazımi yerlərə köçürün. Silindikdə və ya köçürüldükdə xidmətin hər şeyi təmizləməsi gözlənilir. Təbii ki, hər bir iş mühitinin davranışında, qrafik fayl formatlarında, onların ölçülərində, saxlama yerlərində və keşlərin yenilənməsi üsullarında fərqlər var ki, bu da problem yaradır. Bir sözlə, bu üsul qoltuqaltıdır.
  • Yuxarıda göstərilənlər kifayət deyilsə, fayl menecerində hələ də AppImage simvolu yoxdur. Linux dünyası hələ elficon tətbiq etmək qərarına gəlməyib (baxmayaraq ki müzakirə и həyata keçirilməsi), ona görə də simvolu birbaşa tətbiqə yerləşdirmək mümkün deyil. Beləliklə, məlum olur ki, fayl menecerindəki proqramların öz nişanları yoxdur (fərq yoxdur, AppImage və ya başqa bir şey), onlar yalnız başlanğıc menyusundadır. Çözüm kimi, biz iş masası menecerlərinə qrafik faylların miniatürlərinin önizləmə şəkillərini öz ikonaları kimi göstərməyə imkan verən mexanizm olan miniatürlərdən istifadə edirik. Nəticə etibarilə, icra qabiliyyəti bitini təyin etmək xidməti həm də müvafiq yerlərə ikon miniatürlərini yaradaraq və yazaraq “kiçikləşdirici” kimi işləyir. /usr и $HOME. Bu xidmət həmçinin AppImage silindikdə və ya köçürüldükdə təmizləmə işlərini həyata keçirir. Hər bir iş masası meneceri bir az fərqli davrandığına görə, məsələn, nişanları hansı formatlarda, hansı ölçülərdə və ya yerlərdə qəbul edir, bunların hamısı həqiqətən ağrılıdır.
  • Səhvlər baş verərsə, proqram sadəcə icra zamanı sıradan çıxır (məsələn, əsas sistemin bir hissəsi olmayan və AppImage-də təmin olunmayan kitabxana var) və GUI-də istifadəçiyə dəqiq nə baş verdiyini deyən yoxdur. İstifadə edərək bunun öhdəsindən gəlməyə başladıq bildirişlər iş masasında, yəni əmr satırından səhvləri tutmalı, onları istifadəçi tərəfindən başa düşülən mesajlara çevirməliyik, sonra isə iş masasında göstərilməlidir. Və əlbəttə ki, hər bir iş masası mühiti onları bir az fərqli şəkildə idarə edir.
  • Hal-hazırda (sentyabr 2019 - tərcüməçinin qeydi) sistemə faylı bildirməyin sadə bir yolunu tapmadım. 1.png Krita istifadə edərək açılmalıdır və 2.png - GIMP-dən istifadə etməklə.

Başqa bir şey: Haiku proqram paketləri?
İstifadə olunan masa üstü spesifikasiyalar üçün saxlama yeri GNOME, KDE и Xfce freedesktop.org-dur

Haiku iş mühitinə dərindən toxunmuş mürəkkəblik səviyyəsinə nail olmaq, spesifikasiyalara görə çətindir, hətta qeyri-mümkündür. freedesktop.org saytından XDG çarpaz masa üstü üçün, eləcə də bu spesifikasiyalara əsaslanan masaüstü menecerlərin tətbiqləri. Nümunə olaraq bir sistem miqyasında Firefox ikonasını göstərə bilərik: görünür, XDG-nin müəllifləri heç düşünmürdülər ki, istifadəçi eyni proqramın bir neçə versiyasını quraşdıra bilər.

Başqa bir şey: Haiku proqram paketləri?
Firefox-un müxtəlif versiyaları üçün nişanlar

Sistem inteqrasiyasını pozmamaq üçün Linux dünyasının Mac OS X-dən nə öyrənə biləcəyini düşünürdüm. Əgər vaxtınız varsa və bununla məşğulsunuzsa, Mac OS X-in ilk mühəndislərindən biri olan Arnaud Gurdolun dediklərini mütləq oxuyun:

Biz proqramın quraşdırılmasını proqram simvolunu haradansa (server, xarici disk) kompüterinizin diskinə çəkmək qədər asanlaşdırmaq istəyirdik. Bunun üçün proqram paketi bütün məlumatları, o cümlədən ikonlar, versiya, emal olunan fayl növü, tətbiqi emal etmək üçün sistemin bilməli olduğu URL sxemlərinin tipini saxlayır. Buraya həmçinin Icon Services və Launch Services verilənlər bazasında "mərkəzi yaddaş" üçün məlumatlar daxildir. Performansı dəstəkləmək üçün proqramlar bir neçə "tanınmış" yerdə "kəşf edilir": sistem və istifadəçi Proqramları kataloqları və istifadəçi tətbiqi ehtiva edən kataloqda Finder-ə keçərsə, avtomatik olaraq bəzi digərləri. Praktikada bu çox yaxşı işlədi.

https://youtu.be/qQsnqWJ8D2c
Apple WWDC 2000 sessiyası 144 - Mac OS X: qablaşdırma proqramları və sənədlərin çapı.

Linux masaüstlərində bu infrastruktura bənzər heç nə yoxdur, ona görə də biz AppImage layihəsində struktur məhdudiyyətləri ətrafında həll yolları axtarırıq.

Başqa bir şey: Haiku proqram paketləri?
Hayku köməyə gəlirmi?

Və daha bir şey: İş masası mühitlərinin əsası kimi Linux platformaları o qədər dəqiq göstərilmir ki, ardıcıl tam stack sistemində olduqca sadə olan bir çox şey Linux-da məyusedici dərəcədə parçalanmış və mürəkkəbdir. Mən bütün hesabatı masaüstü mühitlər üçün Linux platforması ilə bağlı məsələlərə həsr etdim (bilişli tərtibatçılar hər şeyin çox uzun müddət belə qalacağını təsdiqlədilər).

2018-ci ildə Linux masaüstü mühitlərinin problemləri haqqında hesabatım

Hətta Linus Torvalds etiraf etdi ki, parçalanma iş sahəsi ideyasının uğursuzluğuna səbəb olub.

Haikunu görmək xoş oldu!

Haiku hər şeyi heyrətamiz dərəcədə sadə edir

AppImage-i Haiku-ya "daşımaq" üçün sadəlövh yanaşma onun komponentlərini (əsasən runtime.c və xidmət) qurmağa çalışmaq olsa da (bu, hətta mümkün ola bilər!), bu, Haiku-ya çox fayda verməyəcək. Çünki əslində bu problemlərin əksəriyyəti Haykuda həll olunur və konseptual cəhətdən əsaslıdır. Haiku, uzun müddətdir Linux masa üstü mühitlərində axtardığım və orada olmadığına inanmadığım sistem infrastrukturunun tikinti bloklarını tam olaraq təmin edir. Məhz:

Başqa bir şey: Haiku proqram paketləri?
İnanın və ya inanmayın, bu, bir çox Linux istifadəçilərinin öhdəsindən gələ bilməyəcəyi bir şeydir. Haiku-da hər şey avtomatik olaraq edilir!

  • İcra qabiliyyəti biti olmayan ELF faylları fayl menecerində iki dəfə kliklədikdə avtomatik olaraq bir bit əldə edir.
  • Tətbiqlər fayl menecerində göstərilən nişanlar kimi daxili resurslara malik ola bilər. Bir dəstə şəkilləri nişanlar olan xüsusi qovluqlara köçürməyə ehtiyac yoxdur və buna görə də tətbiqi sildikdən və ya köçürdükdən sonra onları təmizləməyə ehtiyac yoxdur.
  • Tətbiqləri sənədlərlə əlaqələndirmək üçün verilənlər bazası var, bunun üçün heç bir faylı kopyalamağa ehtiyac yoxdur.
  • İcra olunan faylın yanındakı lib/ qovluğunda defolt olaraq kitabxanalar axtarılır.
  • Çoxsaylı paylamalar və iş masası mühitləri yoxdur; nə işləyirsə, hər yerdə işləyir.
  • Proqramlar qovluğundan fərqli işlətmək üçün ayrıca modul yoxdur.
  • Tətbiqlərin öz resurslarına daxil olan mütləq yolları yoxdur, onların icra zamanı yeri müəyyən etmək üçün xüsusi funksiyaları var.
  • Sıxılmış fayl sistemi şəkilləri ideyası təqdim edildi: bu hər hansı bir hpkg paketidir. Onların hamısı nüvə tərəfindən quraşdırılmışdır.
  • Hər bir fayl, başqa cür qeyd etmədiyiniz təqdirdə onu yaradan proqram tərəfindən açılır. Bu necə də gözəldir!

Başqa bir şey: Haiku proqram paketləri?
Iki png faylı. İki dəfə kliklədikdə fərqli proqramlar tərəfindən açılacağını göstərən müxtəlif nişanlara diqqət yetirin. Həmçinin istifadəçinin fərdi proqram seçə biləcəyi "Birlikdə aç:" açılan menyusuna diqqət yetirin. Nə qədər sadə!

Deyəsən, Linux-da AppImage-in tələb etdiyi qoltuqağaqları və həll yollarının bir çoxu Haiku-da lazımsız olur, onun əsasında sadəlik və mürəkkəblik var ki, bu da bizim ehtiyaclarımızın əksəriyyətini həll edir.

Haiku-nun proqram paketlərinə ehtiyacı varmı?

Bu, böyük bir suala səbəb olur. Haiku-da AppImage kimi bir sistem yaratmaq Linux-dan daha asan böyüklük sırası olsaydı, bunu etməyə dəyərmi? Yoxsa Haiku hpkg paket sistemi ilə belə bir ideyanın inkişaf etdirilməsi ehtiyacını effektiv şəkildə aradan qaldırıb? Cavab vermək üçün AppImages-in mövcudluğunun motivinə baxmalıyıq.

İstifadəçinin perspektivi

Gəlin son istifadəçimizə baxaq:

  • Mən administrator (root) parolunu istəmədən proqram quraşdırmaq istəyirəm. Haiku-da administrator anlayışı yoxdur, şəxsi sistem olduğu üçün istifadəçi tam nəzarətə malikdir! (Prinsipcə, bunu multiplayer rejimində təsəvvür edə bilərsiniz, ümid edirəm ki, tərtibatçılar bunu sadə saxlayacaqlar)
  • Tətbiqlərin ən son və ən böyük versiyalarını mənim paylamamda görünməsini gözləmədən əldə etmək istəyirəm (ən çox vaxt bu, heç olmasa bütün əməliyyat sistemini yeniləməsəm, “heç vaxt” deməkdir). Haiku-da bu, üzən buraxılışlarla "həll edilir". Bu o deməkdir ki, tətbiqlərin ən son və ən böyük versiyalarını əldə etmək mümkündür, lakin bunu etmək üçün sistemin qalan hissəsini daim yeniləməli, onu effektiv şəkildə “hərəkət edən hədəfə” çevirməlisiniz..
  • Mən eyni proqramın bir neçə versiyasının yan-yana olmasını istəyirəm, çünki son versiyada nəyin pozulduğunu bilmək üçün heç bir yol yoxdur və ya deyək ki, mən bir veb tərtibatçısı kimi işimi brauzerin müxtəlif versiyaları altında sınamalıyam. Haiku birinci məsələni həll edir, ikincini yox. Yeniləmələr geri qaytarılır, lakin yalnız bütün sistem üçün; məsələn, WebPositive və ya LibreOffice-in bir neçə versiyasını eyni vaxtda işə salmaq mümkün deyil (bildiyim qədər).

Tərtibatçılardan biri yazır:

Əsasən məntiq belədir: istifadə halı o qədər nadirdir ki, onun üçün optimallaşdırmanın mənası yoxdur; bunu HaikuPorts-da xüsusi hal kimi qəbul etmək məqbul deyil.

  • Mən proqramları başlanğıc diskimdə deyil, bəyəndiyim yerdə saxlamalıyam. Tez-tez diskdə boş yerim tükənir, ona görə də tətbiqləri (yüklədiyim bütün versiyaları) saxlamaq üçün xarici sürücü və ya şəbəkə kataloqu qoşmalıyam. Əgər belə bir sürücünü birləşdirsəm, iki dəfə klikləməklə tətbiqləri işə salmaq lazımdır. Haiku paketlərin köhnə versiyalarını saxlayır, lakin mən onları xarici diskə necə köçürəcəyimi və ya daha sonra proqramları oradan necə işə salacağımı bilmirəm.

Tərtibatçı şərhi:

Texniki cəhətdən bu, mount əmri ilə artıq mümkündür. Təbii ki, kifayət qədər maraqlı istifadəçilərimiz olan kimi bunun üçün GUI hazırlayacağıq.

  • Özümü əl ilə idarə edə bilmədiyim fayl sisteminə səpələnmiş milyonlarla fayl mənə lazım deyil. Mən hər proqrama bir fayl istəyirəm ki, onu asanlıqla yükləyə, köçürüb, silə bilim. Haiku-da bu problem paketlərdən istifadə etməklə həll olunur .hpkgməsələn, pythonu minlərlə fayldan birinə köçürən. Amma, məsələn, python istifadə edən Scribus varsa, onda mən ən azı iki faylla məşğul olmalıyam. Mən onların bir-biri ilə işləyən versiyalarını saxlamağa diqqət etməliyəm.

Başqa bir şey: Haiku proqram paketləri?
Eyni Linux-da yan-yana işləyən AppImages-in çoxsaylı versiyaları

Proqram tərtibatçısının perspektivi

Bir proqram tərtibatçısının nöqteyi-nəzərindən baxaq:

  • Mən bütün istifadəçi təcrübəsinə nəzarət etmək istəyirəm. Mən proqramları nə vaxt və necə buraxmalı olduğumu bildirmək üçün əməliyyat sistemindən asılı olmaq istəmirəm. Haiku tərtibatçılara öz hpkg repozitoriyaları ilə işləməyə imkan verir, lakin bu o deməkdir ki, istifadəçilər onları əl ilə qurmalı olacaqlar, bu isə ideyanı “daha ​​az cəlbedici” edir.
  • Veb saytımda yaydığım yükləmə səhifəm var .exe Windows üçün, .dmg Mac üçün və .AppImage Linux üçün. Və ya bəlkə mən bu səhifəyə girişi monetizasiya etmək istəyirəm, hər şey mümkündür? Haiku üçün oraya nə qoymalıyam? Fayl kifayətdir .hpkg yalnız HaikuPorts-dan asılılıqlarla
  • Mənim proqram təminatım digər proqram təminatının xüsusi versiyalarını tələb edir. Məsələn, məlumdur ki, Krita Qt-nin yamaqlanmış versiyasını və ya Krita-nın müəyyən bir versiyasına dəqiq tənzimlənmiş Qt-ni tələb edir, ən azı yamalar Qt-a geri çəkilənə qədər. Tətbiqiniz üçün öz Qt-nizi paketdə paketləyə bilərsiniz .hpkg, lakin çox güman ki, bu xoş qarşılanmır.

Başqa bir şey: Haiku proqram paketləri?
Daimi proqram yükləmə səhifəsi. Haiku üçün burada nə göndərməliyəm?

İradə paketləri (AppDir və ya kimi proqram qovluqları kimi mövcuddur .app Apple üslubunda) və/və ya şəkillər (ağır dəyişdirilmiş AppImages şəklində və ya .dmg Apple-dan) proqramlar Haiku iş masası mühitinə faydalı əlavədir? Yoxsa bütün mənzərəni sulandıracaq və parçalanmaya gətirib çıxaracaq və buna görə də mürəkkəblik əlavə edəcək? Mən cırılmışam: bir tərəfdən, Haykunun gözəlliyi və incəliyi ona əsaslanır ki, bir şey etmək üçün çoxlu deyil, adətən bir yol var. Digər tərəfdən, kataloqlar və/yaxud proqram dəstləri üçün infrastrukturun çoxu artıq hazırdır, ona görə də sistem qalan bir neçə faizin yerinə düşməsi üçün qışqırır.

Tərtibatçıya görə Cənab. vaddlesplash

Linux-da onlar (kataloqlar və tətbiq dəstləri, - təqribən. tərcüməçi) çox güman ki, sistemli problemlərin texniki həllidir. Haiku-da biz sadəcə sistem problemlərini həll etməyə üstünlük veririk.

Nə fikirləşirsən?

Cavab verməzdən əvvəl...

Gözləyin, reallığı tez yoxlayaq: əslində tətbiq kataloqları - artıq Haikunun bir hissəsi:

Başqa bir şey: Haiku proqram paketləri?
Tətbiq kataloqları artıq Haiku-da mövcuddur, lakin fayl menecerində hələ dəstəklənmir

Onlar, məsələn, Macintosh Finder kimi yaxşı dəstəklənmir. QtCreator kataloqunun yuxarı sol küncündə "QtCreator" adı və simvolu olsaydı, iki dəfə kliklədikdə tətbiqi işə salsa, nə qədər gözəl olardı?

Bir az əvvəl mən artıq soruşdu:

Bütün tətbiq mağazaları və paylama anbarları onları və onların asılılıqlarını unutduqda, onillik köhnə tətbiqlərinizi bu gün işlədə biləcəyinizə əminsinizmi? Gələcəkdə indiki işinizə hələ də daxil ola biləcəyinizə əminsinizmi?

Haiku-dan artıq cavab varmı, yoxsa kataloqlar və proqram paketləri burada kömək edə bilərmi? Məncə, edə bilərlər.

Cənab görə. vaddlesplash:

Bəli, suala cavabımız var: kimsə onların fayl formatlarını düzgün oxuyana və ya tək-tək funksionallıq təmin edənə qədər biz sadəcə olaraq bu proqramları lazımi müddət ərzində dəstəkləyəcəyik. Haiku-da BeOS R5 tətbiqlərini dəstəkləmək öhdəliyimiz buna sübutdur...

Bu dəqiqdir!

Haiku hansı addımı atmalıdır?

Mən hpkg, kataloqlar və tətbiq şəkillərinin dinc yanaşı mövcudluğunu təsəvvür edə bilərəm:

  • Sistem proqram təminatından istifadə edir .hpkg
  • Ən tez-tez istifadə olunan proqram təminatı üçün (xüsusilə yayma buraxılışlarını planlaşdırmalı olanlar) istifadə edin .hpkg (bütün halların təxminən 80%-i)
  • Bəziləri vasitəsilə quraşdırılmışdır .hpkg, tətbiqlər proqram kataloqu infrastrukturuna (məsələn, QtCreator) keçməkdən faydalanacaq: onlar aşağıdakı kimi paylanacaqlar. .hpkg, əvvəlki kimi.

Cənab. waddlesplash yazır:

Əgər sizə lazım olan tək şey tətbiqlərə baxmaqdırsa /system/apps, əvəzinə biz Masa Çubuğundakı qovluqları istifadəçilər üçün daha idarəolunan etməliyik /system/apps istifadəçilər tərəfindən müntəzəm olaraq açılması və baxılması nəzərdə tutulmur (MacOS-dan fərqli olaraq). Belə vəziyyətlər üçün Hayku fərqli bir paradiqmaya malikdir, lakin bu seçim nəzəri olaraq məqbuldur.

  • Haiku tətbiqi təsvirləri, proqram təminatının gecə, fasiləsiz və sınaq quruluşlarını, həmçinin istifadəçinin onu “vaxtında dondurmaq” istədiyi, şəxsi və daxili proqram təminatı və digər xüsusi istifadə halları (təxminən 20%) üçün infrastruktur alır. hamısından). Bu şəkillərdə tətbiqi işə salmaq üçün lazım olan fayllar var .hpkg, sistem tərəfindən quraşdırılır və tətbiq tamamlandıqdan sonra - sökülür. (Bəlkə də fayl meneceri faylları yerləşdirə bilər .hpkg proqram şəkillərinə avtomatik olaraq və ya istifadəçinin istəyi ilə - yaxşı məsələn, proqramı şəbəkə kataloquna və ya xarici diskə sürüklədiyiniz zaman. Bu, sadəcə bir mahnıdır! Daha doğrusu, poeziya - hayku.) Digər tərəfdən, istifadəçi şəklin məzmununu fayl şəklində quraşdırmaq istəyə bilər..hpkg, bundan sonra onlar HaikuDepot vasitəsilə quraşdırıldığı kimi yenilənəcək və işlənəcək... Biz beyin fırtınası etməliyik).

Cənabdan sitat. vaddlesplash:

Xarici disklərdən və ya şəbəkə qovluqlarından tətbiqlərin işə salınması potensial olaraq faydalı ola bilər. Və pkgman üçün daha çox "zonaları" konfiqurasiya etmək imkanı əlavə etmək mütləq gözəl bir xüsusiyyət olardı.

Belə bir sistem hpkg, kataloqlar və tətbiq şəkillərindən istifadə edərdi. Fərdi olaraq yaxşıdırlar, amma birlikdə yenilməz olacaqlar.

Nəticə

Haiku, PC üçün sadə və mürəkkəb istifadəçi təcrübəsini təmin edən çərçivəyə malikdir və adətən Linux PC üçün nəzərdə tutulandan çox kənara çıxır. Paket sistemi .hpkg belə bir nümunədir, lakin sistemin qalan hissəsi də mürəkkəbliklə doludur. Bununla belə, Haiku düzgün kataloq və tətbiq təsviri dəstəyindən faydalanacaq. Bunu ən yaxşı şəkildə necə edəcəyimi, Haikunu, onun fəlsəfəsini və memarlığını məndən daha yaxşı bilən insanlarla müzakirə etməyə dəyər. Axı mən bir həftədən bir qədər artıqdır ki, Haikudan istifadə edirəm. Buna baxmayaraq, inanıram ki, Haikunun dizaynerləri, tərtibatçıları və memarları bu yeni perspektivdən faydalanacaqlar. Ən azından onların “sparrinq tərəfdaşı” olmaqdan məmnun olardım. Linux proqram kataloqları və paketləri ilə 10 ildən çox praktik təcrübəm var və mən Haikuda onlardan istifadə etmək istərdim, məncə, onlar mükəmməl uyğun gəlir. Təklif etdiyim potensial həllər heç bir halda təsvir etdiyim problemlər üçün yeganə düzgün olanlar deyil və əgər Haiku komandası başqa, daha zərif həllər tapmaq qərarına gəlsə, mən bunun tərəfdarıyam. Əsasən, mən artıq bir sistemin necə qurulacağı barədə fikirləşirəm hpkg işini dəyişdirmədən daha da heyrətamizdir. Belə çıxır ki, Haiku komandası paket idarəetmə sistemini tətbiq edərkən tətbiq paketləri haqqında çoxdan düşünürdülər, lakin təəssüf ki (məncə) bu ideya “köhnəldi”. Bəlkə onu canlandırmağın vaxtı çatıb?

Özünüz cəhd edin! Axı, Haiku layihəsi yaradılan DVD və ya USB-dən yükləmək üçün şəkillər təqdim edir gündəlik.
Hər hansı bir sualınız var? Sizi rusdilli kursa dəvət edirik telegram kanalı.

Xətanın icmalı: C və C++ dillərində ayağınıza necə atəş açmaq olar. Haiku OS resept kolleksiyası

Etibarən müəllif tərcümə: bu, Haiku haqqında silsilənin səkkizinci və sonuncu məqaləsidir.

Məqalələrin siyahısı: Ilk İkinci Üçüncü Dördüncü Beşincisi Altıncı Yeddinci

Sorğuda yalnız qeydiyyatdan keçmiş istifadəçilər iştirak edə bilər. Daxil olunxahiş edirəm.

Hpkg sistemini Linux-a köçürməyin mənası varmı?

  • Bəli

  • Heç bir

  • Artıq həyata keçirilib, şərhlərdə yazacam

20 istifadəçi səs verib. 5 istifadəçi bitərəf qalıb.

Mənbə: www.habr.com

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