የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር

የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር

TL; DRሀይኩ በተለይ ለፒሲዎች ተብሎ የተነደፈ ኦፕሬቲንግ ሲስተም ስለሆነ የዴስክቶፕ አካባቢውን ከሌሎቹ በጣም የተሻለ የሚያደርጉ በርካታ ብልሃቶች አሉት። ግን እንዴት ነው የሚሰራው?

በቅርቡ ሃይኩ ያልተጠበቀ ጥሩ ስርዓት አገኘሁ። በተለይ ከሊኑክስ ዴስክቶፕ አከባቢዎች ጋር ሲወዳደር ምን ያህል በተቀላጠፈ ሁኔታ እንደሚሰራ አሁንም አስገርሞኛል። ዛሬ ከኮፈኑ ስር እመለከታለሁ። ለጥልቅ ግንዛቤ አስፈላጊ ከሆነ፣ ከዋናው ማኪንቶሽ፣ ማክ ኦኤስ ኤክስ እና ሊኑክስ ዴስክቶፕ አካባቢዎች (XDG standard from freedesktop.org) ጋር ንፅፅር አደርጋለሁ።

በ ELF ፋይሎች ውስጥ ያሉ መርጃዎች

ትላንትና IconOMatic በ ELF executables ውስጥ አዶዎችን በ rdef ሃብቶች ውስጥ ማስቀመጥ እንደሚችል ተማርኩ። ዛሬ በትክክል እንዴት እንደሚሰራ ማየት እፈልጋለሁ.

ግብዓቶች? ወቀስ от ብሩስ ቀንድየማኪንቶሽ አግኚው ዋና ደራሲ እና የማኪንቶሽ ሃብት ስራ አስኪያጅ "አባት"

የባህላዊ ኮድ አወጣጥ ግትር ባህሪ ያሳስበኛል። ለእኔ ፣ ምንም ነገር በተለዋዋጭነት የመቀየር ችሎታ ከሌለው ፣ በኮድ ውስጥ የቀዘቀዘ መተግበሪያ ሀሳብ በጣም አስፈሪ አረመኔ ነው። በሚሠራበት ጊዜ በተቻለ መጠን መለወጥ መቻል አለበት። እርግጥ ነው, የመተግበሪያው ኮድ ራሱ ሊለወጥ አይችልም, ግን በእርግጥ አንድ ነገር ኮዱን እንደገና ሳያጠናቅቅ ሊለወጥ ይችላል?

በዋናው ማኪንቶሽ ላይ፣ እነዚህ ፋይሎች “የውሂብ ክፍል” እና “የመርጃ ክፍል” እንዲኖራቸው አደረጉ፣ ይህም እንደ አዶዎች፣ ትርጉሞች እና የመሳሰሉት ነገሮችን ለማስቀመጥ በሚያስደንቅ ሁኔታ ቀላል አድርጎታል። ሊተገበሩ በሚችሉ ፋይሎች ውስጥ.

በ Mac ላይ ይህ ጥቅም ላይ ይውላል ዳግም አርትዕ, ግራፊክ ፕሮግራም ለ - በድንገት - የአርትዖት መርጃዎች.

የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር
በመጀመሪያው ማኪንቶሽ ላይ ዳግም አርትዕ ያድርጉ

በውጤቱም, አዶዎችን, ምናሌ ንጥሎችን, ትርጉሞችን, ወዘተዎችን ማረም ተችሏል. ቀላል, ነገር ግን አሁንም ከመተግበሪያዎች ጋር "ይጓዛሉ".
ያም ሆነ ይህ, ይህ አካሄድ ትልቅ ችግር ነበረው-በ Apple ፋይል ስርዓቶች ላይ ብቻ ይሠራ ነበር, ይህም አፕል ወደ ማክ ኦኤስ ኤክስ ሲዘዋወር "የመርጃ ክፍልን" የተወበት አንዱ ምክንያት ነው.
በማክ ኦኤስ ኤክስ ላይ፣ አፕል የፋይል ስርዓት-ገለልተኛ መፍትሄን ፈልጎ ነበር፣ ስለዚህ የፓኬጆችን ጽንሰ-ሀሳብ (ከኔክስት) ተቀበሉ፣ በፋይል አቀናባሪው እንደ “ግልጽ ነገር” የሚታሰቡ ማውጫዎች፣ እንደ ማውጫዎች ሳይሆን እንደ ፋይሎች። ማንኛውም ጥቅል ከመተግበሪያ ጋር በቅርጸት። .app ከሌሎች ነገሮች በተጨማሪ, ፋይል አለው Info.plist (በአንዳንድ የአፕል አቻ JSON ወይም YAML ዓይነት) የመተግበሪያ ዲበ ውሂብን የያዘ።

የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር
ከማክ ኦኤስ ኤክስ አፕሊኬሽን ፓኬጅ ለመረጃ.plist ፋይል ቁልፎች።

እንደ አዶዎች፣ UI ፋይሎች እና ሌሎች ያሉ ግብዓቶች በጥቅሉ ውስጥ እንደ ፋይሎች ተቀምጠዋል። ጽንሰ-ሐሳቡ በእውነቱ በNeXT ውስጥ ወደ ሥሩ ተመለሰ።

የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር
Mathematica.app በNeXTSTEP 1.0 በ1989፡ በተርሚናል ውስጥ እንደ የፋይሎች ማውጫ ሆኖ ይታያል፣ ነገር ግን በግራፊክ ፋይል አቀናባሪ ውስጥ እንደ ነጠላ ነገር።

ሃይኩ የተመሰረተባቸው ፅንሰ ሀሳቦች ወደ BeOS እንመለስ። የእሱ ገንቢዎች, ከ PEF (PowerPC) ወደ ELF (x86) ሲቀይሩ (በሊኑክስ ላይ ጥቅም ላይ እንደዋለ) በ ELF ፋይሎች መጨረሻ ላይ የንብረት ክፍል ለመጨመር ወሰኑ. የራሱን ትክክለኛ የ ELF ክፍል አልተጠቀመም, በቀላሉ በ ELF ፋይል መጨረሻ ላይ ተያይዟል. በፕሮግራሙ ምክንያት strip እና ሌሎች ከቢኒቲሎች ይህን ሳያውቁ ዝም ብለው ቆርጠዋል። ስለዚህ በ BeOS ላይ ወደ ELF ፋይል ሃብቶችን ሲጨምሩ በሊኑክስ መሳሪያዎች አለመጠቀም የተሻለ ነው.

አሁን ሃይኩ ምን እየሆነ ነው? በመሠረቱ, ብዙ ወይም ያነሰ ተመሳሳይ.

በንድፈ ሀሳብ፣ በተፈለገው የ ELF ክፍል ውስጥ ሀብቶችን ማስቀመጥ ይቻል ነበር። በ irc.freenode.net ላይ በ#haiku ቻናል ላይ እንደ ገንቢዎቹ፡-

ከ ELF ጋር ክፍሉ የበለጠ ትርጉም ያለው ይሆናል… እኛ እንደዚያ የማናደርገው ብቸኛው ምክንያት በቤኦስ ውስጥ ያደረግነው ስለሆነ ነው።
እና አሁን ይህንን መለወጥ ምንም ፋይዳ የለውም.

የሃብት አያያዝ

ግብዓቶች የተጻፉት በተዋቀረው “ሀብት” ቅርጸት ነው፡ በመሠረቱ መጠን ያላቸው ሀብቶች ዝርዝር እና ከዚያም ይዘታቸው። ትዝ አለኝ ar ቅርጸት.
በሃይኩ ውስጥ ሀብቶችን እንዴት ማረጋገጥ እንደሚቻል? እንደ ResEdit ያለ ነገር አለ?
እንደ ሰነድ:

በመተግበሪያው ፓኬጅ ውስጥ የቀረቡትን ግብዓቶች ለማየት፣ የሚፈፀመውን ፋይል ወደ እንደዚህ አይነት ፕሮግራም መጎተት ይችላሉ። ምንጭ. እንዲሁም ወደ ተርሚናል ይሂዱ እና ትዕዛዙን ማስኬድ ይችላሉ listres имя_файла.

Resourcer በHaikuDepot ውስጥ ይገኛል፣ ግን ለእኔ ብቻ ይበላሻል።

በ ELF ፋይሎች ውስጥ ሀብቶችን እንዴት ማስተዳደር እንደሚቻል? በመጠቀም rsrc и rdef. rdef ፋይሎች በ ውስጥ ይሰበሰባሉ rsrc. ፋይል rdef በቀላል የጽሑፍ ቅርጸት ተከማችቷል ፣ ስለዚህ አብሮ መስራት በጣም ቀላል ነው። የፋይል ቅርጸት rsrc በ ELF ፋይል መጨረሻ ላይ ተያይዟል. ለመጫወት እንሞክር፡-

~> 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

ፕሮግራሙን መጠቀም ይችላሉ xres ለመፈተሽ እና ለመቆጣጠር;

/> 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.
(...)

እሺ፣ እንሞክር?

/> xres -l /Haiku/system/apps/WebPositive/Haiku/system/apps/WebPositive resources:type           ID        size  name
------ ----------- -----------  --------------------
'MIMS'           1          36  BEOS:APP_SIG
'APPF'           1           4  BEOS:APP_FLAGS
'MSGG'           1         421  BEOS:FILE_TYPES
'VICN'         101        7025  BEOS:ICON
'VICN'         201          91  kActionBack
'VICN'         202          91  kActionForward
'VICN'         203         300  kActionForward2
'VICN'         204         101  kActionStop
'VICN'         206         243  kActionGoStart
'MSGG'         205        1342  kActionGo
'APPV'           1         680  BEOS:APP_VERSION

ስለ ሀብቶች እና ቅርጸት ተጨማሪ rdef ማንበብ ትችላለህ እዚህ.

መደበኛ የመርጃ ዓይነቶች

ምንም እንኳን ማንኛውንም ነገር ወደ ሀብቶች ማስገባት ቢችሉም ጥቂት የተገለጹ መደበኛ ዓይነቶች አሉ-

  • app_signature: MIME መተግበሪያ አይነት፣ ለፋይል ክፍት ካርታ ስራ፣ ማስጀመር፣ አይፒሲ፣ ወዘተ.
  • app_name_catalog_entryየማመልከቻው ስም ብዙውን ጊዜ በእንግሊዘኛ ስለሆነ የተለያዩ ቋንቋዎች ተጠቃሚዎች ከተፈለገ የተተረጎመውን የመተግበሪያ ስም እንዲያዩ የተተረጎሙ ስሞች የሚገኙባቸውን ቦታዎች መግለፅ ይችላሉ ።
  • app_versionበትክክል ያሰብከው
  • app_flags: ይጠቁማል registrar ማመልከቻውን እንዴት ማካሄድ እንደሚቻል. ለዓይን ከማየት የበለጠ ብዙ ነገር ያለ ይመስለኛል። ለምሳሌ, አለ B_SINGLE_LAUNCHተጠቃሚው በጠየቀ ቁጥር ስርዓቱ አዲስ የመተግበሪያ ሂደት እንዲጀምር የሚያስገድድ (ተመሳሳይ መርህ በሊኑክስ ላይ ለአብዛኛዎቹ መተግበሪያዎች ጥቅም ላይ ይውላል)። ብላ B_MULTIPLE_LAUNCH, ሂደቱ እንዲሰራ ያደርገዋል እያንዳንዱ ፋይል. በመጨረሻም አለ B_EXCLUSIVE_LAUNCH, ይህም ስርዓቱ በአንድ ጊዜ አንድ ሂደት ብቻ እንዲጀምር የሚያስገድድ ነው, ተጠቃሚዎች ምንም ያህል ደጋግመው ቢጀምሩ (ለምሳሌ ፋየርፎክስ በሊኑክስ ላይ እንደዚህ ነው የሚሰራው, ተግባሩን በመጠቀም በ Qt መተግበሪያዎች ላይ ተመሳሳይ ውጤት ማግኘት ይቻላል). QtSingle መተግበሪያ). መተግበሪያዎች በ B_EXCLUSIVE_LAUNCH ተጠቃሚው እንደገና ለማስኬድ ሲሞክር ማሳወቂያ ይደርሳቸዋል፡ ለምሳሌ፡ ተጠቃሚው በእነሱ እርዳታ ለመክፈት የሚፈልገውን የፋይል መንገድ ይቀበላሉ።
  • vector_iconየቬክተር አፕሊኬሽን አዶ (BeOS የቬክተር አዶዎች አልነበራቸውም፣ አብዛኞቹ አፕሊኬሽኖች በምትኩ ሁለት የራስተር አዶዎች በፋይሎቻቸው ውስጥ ነበራቸው)።

እርግጥ ነው፣ በማናቸውም የሚፈለጉ መታወቂያዎች እና አይነቶች መርጃዎችን ማከል እና ከዚያም ክፍሉን በመጠቀም በራሱ መተግበሪያ ወይም በሌሎች መተግበሪያዎች ውስጥ ማንበብ ይችላሉ። BResources. በመጀመሪያ ግን አስደናቂውን የአዶዎችን ርዕስ እንመልከት።

የቬክተር አዶዎች በሃይኩ ዘይቤ

በእርግጥ ሃይኩ ብቻ ሳይሆን ምርጡን የአዶ ቅርፀት የመረጠ ነው፤ በዚህ ክፍል የሊኑክስ ዴስክቶፕ አካባቢ ሁኔታው ​​በጣም የራቀ ነው።

me@host:~$ ls /usr/share/icons/hicolor/
128x128  256x256  512x512           index.theme
160x160  28x28    64x64             scalable
16x16    32x32    72x72             symbolic
192x192  36x36    8x8
22x22    42x42    96x96
24x24    48x48    icon-theme.cache

ይህንን ሲመለከቱ ምን ቁራጭ እንደሆነ ቀድሞውኑ ሊሰማዎት ይችላል።

እርግጥ ነው፣ እርስዎ እንደሚረዱት፣ የቬክተር አዶዎችን የያዘ፣ ሊሰፋ የሚችል አለ። ለምን ሌላ ነገር አለ? ምክንያቱም በትንሽ መጠን የቬክተር ግራፊክስን የመሳል ውጤት ከተገቢው ያነሰ ሊሆን ይችላል. ለተለያዩ መጠኖች የተመቻቹ የተለያዩ አማራጮች እንዲኖሩኝ እፈልጋለሁ። በሊኑክስ ዴስክቶፕ አከባቢዎች ይህ የሚገኘው በፋይል ስርዓቱ ውስጥ የተለያየ መጠን ያላቸውን አዶዎች በመበተን ነው።

me@host:~$ find /usr/share/icons/ -name 'firefox.*'
/usr/share/icons/HighContrast/16x16/apps/firefox.png
/usr/share/icons/HighContrast/22x22/apps/firefox.png
/usr/share/icons/HighContrast/24x24/apps/firefox.png
/usr/share/icons/HighContrast/256x256/apps/firefox.png
/usr/share/icons/HighContrast/32x32/apps/firefox.png
/usr/share/icons/HighContrast/48x48/apps/firefox.png
/usr/share/icons/elementary-xfce/apps/128/firefox.png
/usr/share/icons/elementary-xfce/apps/16/firefox.png
/usr/share/icons/elementary-xfce/apps/22/firefox.png
/usr/share/icons/elementary-xfce/apps/24/firefox.png
/usr/share/icons/elementary-xfce/apps/32/firefox.png
/usr/share/icons/elementary-xfce/apps/48/firefox.png
/usr/share/icons/elementary-xfce/apps/64/firefox.png
/usr/share/icons/elementary-xfce/apps/96/firefox.png
/usr/share/icons/hicolor/128x128/apps/firefox.png

እባክዎን ያስተውሉ-የተለያዩ የፋየርፎክስ ስሪቶች ጽንሰ-ሀሳብ የለም። ስለዚህ, በስርዓቱ ላይ ብዙ የመተግበሪያ ስሪቶች የመኖራቸውን ሁኔታ በጸጋ ማስተናገድ አይቻልም.

የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር
በተለያዩ ስሪቶች ውስጥ የተለያዩ የፋየርፎክስ አዶዎች። በአሁኑ ጊዜ ይህንን በሊኑክስ ውስጥ ያለ ልዩ ልዩ ክራንች ማስተናገድ የማይቻል ነው.

ማክ ኦኤስ ኤክስ በጥቂቱ በዘዴ ይይዘዋል።

Mac:~ me$ find /Applications/Firefox.app | grep icns
/Applications/Firefox.app/Contents/MacOS/crashreporter.app
/Contents/Resources/crashreporter.icns
/Applications/Firefox.app/Contents/MacOS/updater.app/Contents/Resources/updater.icns
/Applications/Firefox.app/Contents/Resources/document.icns
/Applications/Firefox.app/Contents/Resources/firefox.icns

አንድ ፋይል እንዳለ ማየት ይቻላል firefox.icns በጥቅሉ ውስጥ Firefox.appየተለያዩ የአንድ መተግበሪያ ስሪቶች የተለያዩ አዶዎች እንዲኖራቸው ሁሉንም መጠኖች የያዘ።
በጣም የተሻለ! አዶዎች ከመተግበሪያው ጋር ይጓዛሉ, ሁሉም ሀብቶች በአንድ ፋይል ውስጥ ናቸው.

ወደ ሃይኩ እንመለስ። አእምሮን የሚሰብር መፍትሄ ፣ ምንም ልዩ ሁኔታዎች የሉም። አጭጮርዲንግ ቶ ሰነድ:

ለአነስተኛ መጠኖች እና ለፈጣን አቀራረብ ልዩ የHVIF ቅርጸት ተዘጋጅቷል። ስለዚህ የእኛ አዶዎች በአብዛኛው ከራስተር ወይም በሰፊው ጥቅም ላይ ከዋለው የኤስ.ቪ.ጂ ቅርጸት በጣም ያነሱ ናቸው።

እና አሁንም የተመቻቹ ናቸው፡-

የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር
ከሌሎች ቅርጸቶች ጋር ሲወዳደር የአዶ መጠኖች በHVIF።

ልዩነቱ የትልቅነት ቅደም ተከተል ነው!

አስማት ግን እዚህ አያበቃም። ተመሳሳዩ HVIF ምንም እንኳን የቬክተር ቅርጸት ቢሆንም በሚታየው መጠን ላይ በመመስረት የተለያዩ የዝርዝር ደረጃዎችን ያሳያል።

የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር
የተለያዩ የዝርዝር ደረጃዎች (LOD) በአቅርቦት መጠን ላይ በመመስረት

አሁን ስለ ጉዳቶቹ፡ SVG ን መውሰድ፣ ወደ ImageMagick መጣል እና አንድ ቀን መጥራት አይችሉም፤ በ HVIF ቅርጸት አዶ ለመፍጠር ብዙ ዑደቶችን ማለፍ አለብዎት። እዚህ ማብራሪያዎች. ነገር ግን፣ IconOMatic SVG ፍጹም ባልሆነ መልኩ ማስመጣት ይችላል። ወደ 90% የሚሆነው የSVG ዝርዝሮች ከውጭ የሚገቡት በተወሰነ ዕድል ነው ፣ የተቀረው 10% ማዋቀር እና በእጅ መለወጥ አለበት። HVIF አስማቱን እንዴት እንደሚሰራ የበለጠ ያንብቡ ይችላል блоге ሊያ ጋንሰን

ወደ መተግበሪያ አዶ ማከል

አሁን በተፈጠረው ጥቅል ላይ አዶ ማከል እችላለሁ ባለፈዉ ጊዜየተቀበሉትን መረጃዎች በሙሉ ግምት ውስጥ በማስገባት.
ደህና፣ አሁን በተለይ ለ«ሄሎ፣ አለም» QtQuickApp የራሴን አዶ ለመሳል ፍላጎት ስለሌለኝ ከQt ፈጣሪ አወጣዋለሁ።

/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

ኣይኮንኩን እንተዘይኮይኑ፡ ኣብ ውሽጢ 1999 ዓ.ም.

/Haiku/home> xres -l /Haiku/home/QtQuickApp/QtQuickApp/Haiku/home/QtQuickApp/QtQuickApp
resources:type           ID        size  name
------ ----------- -----------  --------------------
'VICN'         101      152238  BEOS:ICON

ጥሩ ይመስላል፣ ግን ለምንድነው አዲሱ አዶ ሲገለበጥ የማይታይው?

የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር
የተቀዳው VCN:101:BEOS:ICONs በፋይል አቀናባሪው ውስጥ እንደ መተግበሪያ አዶ እስካሁን ጥቅም ላይ አልዋለም

ምን ናፈቀኝ?

የገንቢ አስተያየት፡-

ፋይል መፍጠር አለብን rdef ከሁሉም ሀብቶች ጋር, ከዚያም ትዕዛዙን ያስፈጽሙ rc имя.rdef, ይህ ፋይሉን ይፈጥራል .rsrc. ከዚያ ትዕዛዙን ማስኬድ ያስፈልግዎታል resattr -o имя_бинарника имя.rsrc. በስክሪፕቶቼ ላይ አዶዎችን ለመጨመር ቢያንስ እነዚህን የመሳሰሉ ትዕዛዞችን እጠቀማለሁ።

ደህና፣ እኔ ባህሪ ሳይሆን ሃብት መፍጠር ፈልጌ ነበር። የምር ግራ ገባኝ።

የፋይል ስርዓቱን በመጠቀም ስማርት መሸጎጫ

የኤልኤፍ ባህሪያትን መክፈት እና ማንበብ ቀርፋፋ ነው። ከላይ እንደጻፍኩት አዶው በራሱ በፋይሉ ውስጥ እንደ ምንጭ ተጽፏል. ይህ ዘዴ የበለጠ አስተማማኝ ነው እና ወደ ሌላ የፋይል ስርዓት ከመቅዳት እንዲተርፉ ያስችልዎታል. ነገር ግን፣ ከዚያም ወደ የፋይል ስርዓት አይነታ፣ ለምሳሌ ይገለበጣል BEOS:ICON. ይሄ በተወሰኑ የፋይል ስርዓቶች ላይ ብቻ ነው የሚሰራው, ለምሳሌ BFS. በስርዓቱ የሚታዩት አዶዎች (በ Tracker እና Deskbar ውስጥ) ከዚህ የተራዘመ ባህሪ ይነበባሉ, ምክንያቱም ይህ መፍትሄ በፍጥነት ይሰራል. በአንዳንድ ቦታዎች (ፍጥነት አስፈላጊ በማይሆንበት, ለምሳሌ, የተለመደው "ስለ" መስኮት), ስርዓቱ በፋይሉ ውስጥ ካለው ምንጭ በቀጥታ አዶውን ይቀበላል. ግን ይህ መጨረሻ አይደለም. ያስታውሱ፣ በ Mac ላይ ተጠቃሚዎች የመተግበሪያዎችን ፣ ማውጫዎችን ፣ ሰነዶችን አዶዎችን በራሳቸው መተካት ይችላሉ ፣ ምክንያቱም በ Mac ላይ እነዚህን “አስፈላጊ” ነገሮች ለምሳሌ ማድረግ ይቻላል ። አዲስ የ Slack አዶን ከቀዳሚው ጋር በመተካት።. በሃይኩ ላይ ሃብቱን (በፋይሉ ውስጥ) ከመተግበሪያው ጋር የሚመጣው ኦሪጅናል አዶ እና ባህሪው (በ BFS ፋይል ስርዓት ውስጥ) ተጠቃሚው በፈለገው ጊዜ ለውጦችን እንዲያደርግ የሚያስችለውን ነገር እንደሆነ ማሰብ አለብዎት (ምንም እንኳን ፣ ፍንጭ ፣ በአዶው ላይ ብጁ አዶን ለማስገባት GUI አማራጭ ነው) በነባሪነት እስካሁን አልተተገበረም)።

የፋይል ስርዓት ባህሪያትን በመፈተሽ ላይ

በ እገዛ resaddr የፋይል ስርዓት ባህሪያትን መፈተሽ እና ማዘጋጀት ይቻላል.

/> 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.
(...)

በመሰረቱ (በአስተማማኝ) ሀብቶች እና (ፈጣን) የፋይል ሲስተም ባህሪያት መካከል ወደ ኋላ እና ወደ ፊት መለወጥን የሚያከናውነው "ሙጫ" ነው። እና ስርዓቱ ሀብቶችን ለመቀበል ስለሚጠብቅ እና ቅጂውን በራስ-ሰር ስለሚሰራ፣ ከዚህ በላይ አልጨነቅም።

የ hpkg ፓኬጆች አስማት

በአሁኑ ጊዜ (ብዙውን ጊዜ) ፓኬጆች በሃይኩ ላይ ፕሮግራሞችን ለማግኘት ያገለግላሉ .hpkg. በቀላል ስም አይታለሉ: የ .hpkg ቅርጸት እርስዎ ካጋጠሟቸው ተመሳሳይ ስሞች ካላቸው ቅርጸቶች ፈጽሞ በተለየ መልኩ ይሰራል, እውነተኛ ልዕለ ኃያላን አለው.

በተለምዷዊ የጥቅል ቅርጸቶች, በዚህ እውነታ ምክንያት ለረጅም ጊዜ ተበሳጨሁ: አንድ ነገር (ጥቅል) ያወርዳሉ, እና ሌላው ደግሞ በስርዓቱ ላይ ተጭኗል (በጥቅሉ ውስጥ ያሉ ፋይሎች). በባህላዊ መንገድ ፓኬጅ ሲጭኑ ፋይሎችን ማስተዳደር (ለምሳሌ መሰረዝ) በጣም ከባድ ነው። እና ሁሉም ምክንያቱም የጥቅሉ ይዘት በፋይል ስርዓቱ ውስጥ ተበታትነውአማካኝ ተጠቃሚ የመፃፍ መዳረሻ ላይኖራቸው የሚችሉባቸውን ቦታዎች ጨምሮ። ይህ አጠቃላይ የፕሮግራሞችን ክፍል ይፈጥራል- የጥቅል አስተዳዳሪዎች. ነገር ግን አስቀድሞ የተጫነውን ሶፍትዌር ለምሳሌ ወደ ሌላ ማሽን፣ ተነቃይ ዲስክ ወይም ፋይል አገልጋይ ማስተላለፍ ሙሉ በሙሉ የማይቻል ካልሆነ የበለጠ ከባድ ይሆናል። በተለመደው ሊኑክስ ላይ የተመሰረተ ስርዓት ከበርካታ መቶ ሺህ እስከ ሚሊዮኖች የሚቆጠሩ ነጠላ ፋይሎች በቀላሉ ሊኖሩ ይችላሉ። ይህ ሁለቱም ደካማ እና ቀርፋፋ ነው፣ ለምሳሌ ሲስተሙን መጀመሪያ ላይ ሲጭኑ፣ መደበኛ ፓኬጆችን ሲጭኑ፣ ሲያዘምኑ እና ሲያራግፉ እና የቡት ቮልዩም (root partition) ወደ ሌላ ሚዲያ ሲገለብጡ መናገር አያስፈልግም።

ለዋና ተጠቃሚ መተግበሪያዎች ከፊል ክራንች በሆነው በAppImage ፕሮጀክት ላይ እየሰራሁ ነው። ይህ አፕሊኬሽኑን እና ሁሉንም ጥገኞቹን ወደ አንድ የፋይል ስርዓት ምስል የሚሰበስብ የሶፍትዌር ማከፋፈያ ሲሆን አፕሊኬሽኑ ሲጀምር የሚሰቀል ነው። ያው ImageMagick በድንገት በሟች ሰዎች የሚተዳደር ወደ አንድ ፋይል ስለሚቀየር ነገሮችን በከፍተኛ ሁኔታ ያቃልላል። የታቀደው ዘዴ የሚሰራው ለሶፍትዌር ብቻ ነው፣ በፕሮጀክቱ ስም እንደሚንፀባረቅ እና የራሱ ችግሮችም አሉት።

ወደ ሃይኩ እንመለስ። በባህላዊ የጥቅል ስርዓቶች እና በምስል ላይ የተመሰረተ የሶፍትዌር አቅርቦት መካከል ያለውን ትክክለኛ ሚዛን ማግኘት ተችሏል? የእሷ ጥቅሎች .hpkg በእውነቱ የታመቁ የፋይል ስርዓት ምስሎች። ስርዓቱ ሲነሳ ኮርነሉ ሁሉንም የተጫኑ እና ንቁ ፓኬጆችን በግምት ከሚከተሉት የከርነል መልእክቶች ጋር ይጭናል።

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"

አሪፍ፣ አዎ? እዚያ ቆይ ፣ የበለጠ ቀዝቃዛ ይሆናል!

በጣም ልዩ ጥቅል አለ፡-

KERN: package_daemon [16040020:   924] active package: "haiku-r1~beta1_hrev53242-1-x86_64.hpkg"

ከርነልን ጨምሮ በጣም አነስተኛ የሆነ ኦፕሬቲንግ ሲስተም ይዟል። ብታምኑም ባታምኑም ከርነል እራሱ እንኳን ከቡት ጥራዝ (ሥርወ ክፋይ) አልተወገደም, ነገር ግን ከጥቅሉ ውስጥ በጥንቃቄ ወደ ቦታው ይጫናል. .hpkg. ዋዉ! ቀደም ብዬ እንደማስበው የሃይኩ አጠቃላይ ውስብስብነት እና ወጥነት አንድ አካል የሆነው አጠቃላይ ስርዓቱ ከከርነል እና ከዋናው የተጠቃሚ ቦታ እስከ ፓኬጅ አስተዳደር እና የሩጫ ጊዜ መሠረተ ልማት በአንድ ቡድን በትብብር የተገነባ በመሆኑ ነው። በሊኑክስ ላይ እንደዚህ ያለ ነገር ለማሄድ ምን ያህል የተለያዩ ቡድኖች እና ቡድኖች እንደሚወስድ አስቡት [የ PuppyLinux ፕሮጀክትን እገምታለሁ - በግምት። ተርጓሚ]. ከዚያ ይህ አካሄድ ወደ ስርጭቶች ለመወሰድ ምን ያህል ጊዜ እንደሚወስድ አስቡት። እነሱ እንዲህ ይላሉ: ቀላል ችግርን ይውሰዱ, በተለያዩ ፈጻሚዎች መካከል ይከፋፍሉት, እና በጣም የተወሳሰበ ስለሚሆን ከዚያ በኋላ መፍታት አይቻልም. ሃይኩ በዚህ ጉዳይ ላይ ዓይኖቼን ከፈተ። ልክ አሁን በሊኑክስ ላይ እየሆነ ያለው ይህ ይመስለኛል (ሊኑክስ በዚህ ጉዳይ ላይ ለሊኑክስ/ጂኤንዩ/dpkg/apt/systemd/Xorg/dbus/Gtk/GNOME/XDG/Ubuntu ቁልል) የጋራ ቃል ነው።

hpkg በመጠቀም የስርዓት መልሶ መመለስ

የሚከተለው ሁኔታ ምን ያህል ጊዜ ይከሰታል: ማሻሻያው ስኬታማ ነበር, እና አንድ ነገር እንደፈለገው እየሰራ እንዳልሆነ ታወቀ? የተለመዱ የጥቅል አስተዳዳሪዎችን የሚጠቀሙ ከሆነ አዲስ ፓኬጆች ከመጫናቸው በፊት የስርዓቱን ሁኔታ ወደ አንድ ነጥብ ለመመለስ አስቸጋሪ ነው (ለምሳሌ ፣ የሆነ ችግር ከተፈጠረ)። አንዳንድ ስርዓቶች በፋይል ስርዓት ቅጽበተ-ፎቶዎች መልክ መፍትሄዎችን ይሰጣሉ, ነገር ግን በጣም አስቸጋሪ እና በሁሉም ስርዓቶች ላይ ጥቅም ላይ የማይውሉ ናቸው. ሃይኩ ፓኬጆችን በመጠቀም ይፈታዋል። .hpkg. በስርአቱ ውስጥ ጥቅሎች በሚቀየሩበት ጊዜ የድሮው ፓኬጆች አይሰረዙም ነገር ግን በስርአቱ ውስጥ እንደ ንዑሳን ማውጫዎች ይከማቻሉ። /Haiku/system/packages/administrative/state-<...>/ ያለማቋረጥ. ያልተጠናቀቁ ስራዎች ውሂባቸውን በንዑስ ማውጫዎች ውስጥ ያከማቻሉ /Haiku/system/packages/administrative/transaction-<...>/.

የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር
ይዘት /Haiku/system/packages/administrative. የ "ግዛት ..." ማውጫዎች የንቁ ጥቅሎች ስም ያላቸው የጽሑፍ ፋይሎችን ይይዛሉ, እና "የግብይት ..." ማውጫዎች ጥቅሎቹን ይይዛሉ.

"የድሮ ንቁ ሁኔታ", ማለትም. ዝርዝር .hpkg በጽሑፍ ፋይል ውስጥ በፋይል አቀናባሪው ውስጥ ከእያንዳንዱ ክወና በኋላ ለውጦች ከመመዝገባቸው በፊት ንቁ ፓኬጆች /Haiku/system/packages/administrative/state-<...>/activated-packages. በተመሳሳይ መንገድ, አዲስ "ንቁ ሁኔታ" በጽሑፍ ፋይል ውስጥ ተጽፏል /Haiku/system/packages/administrative/activated-packages.

ማውጫ /Haiku/system/packages/administrative/state-<...>/ የዚህ ግዛት ንቁ ፓኬጆች ዝርዝር የያዘ የጽሑፍ ፋይል ብቻ ይይዛል (ያለ ጥቅሎች በሚጫኑበት ጊዜ) እና ጥቅሎች ከተወገዱ ወይም ከተዘመኑ - የስቴት ማውጫው የድሮ የፓኬጆች ስሪቶችን ይዟል።

ስርዓቱ በሚነሳበት ጊዜ, በጥቅሎች ዝርዝር ላይ በመመስረት, ፓኬጆችን ለማንቃት (mount) ለማድረግ ውሳኔ ይደረጋል. በጣም ቀላል ነው! በማውረድ ጊዜ የሆነ ችግር ከተፈጠረ፣ ለማውረድ አስተዳዳሪው የተለየ፣ የቆየ ዝርዝር እንዲጠቀም መንገር ይችላሉ። ችግሩ ተፈቷል!

የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር
ሃይኩ አውራጅ። እያንዳንዱ የመግቢያ ነጥብ ተጓዳኝ "ንቁ ሁኔታ" ያሳያል.

ቀላል የጽሑፍ ፋይሎችን እንደ "ንቁ ሁኔታ" ዝርዝር፣ ለመረዳት ቀላል የሆኑ ስሞችን የማግኘት አቀራረብን እወዳለሁ። .hpkg. ይህ ለማሽን-ለሰዎች-ሳይሆን-ከተገነባው ጋር ፍጹም ተቃራኒ ነው። በጥቅል ውስጥ ከ OSTree ወይም Flatpak በፋይል ስርዓት (እንደ Microsoft GUID በተመሳሳይ ደረጃ).

የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር
ለእያንዳንዱ ጊዜ የነቁ ጥቅሎች ዝርዝር

የማዋቀር ውሂብ

በግልጽ እንደሚታየው, በካታሎግ ውስጥ /Haiku/system/packages/administrative/writable-files ለጥቅሎች የውቅረት ፋይሎችን ይዟል፣ ግን ሊጻፉ የሚችሉ ናቸው። ከሁሉም በኋላ, እንደምታስታውሰው, .hpkg ተነባቢ-ብቻ ተጭኗል። ስለዚህ እነዚህ ፋይሎች ከመጻፍዎ በፊት ከፓኬጆቹ መቅዳት አለባቸው። ትርጉም አለው።

GUI ውህደት ለ .hpkg ስርዓት

አሁን እነዚህ የሚያብረቀርቁ ቦርሳዎች እንዴት እንደሆኑ እንይ .hpkg ወደ ተጠቃሚው የሥራ አካባቢ (UX) ውህደትን መቋቋም። ከሁሉም በላይ ሃይኩ ለግል ጥቅም የታሰበ ነው. በግሌ የተጠቃሚን ልምድ ከጥቅሎች ጋር ሳወዳድር ባርውን ከፍ አድርጌዋለሁ .app በ ማኪንቶሽ ላይ ተመሳሳይ ልምድ ያለው .hpkg. ሁኔታውን በሊኑክስ ላይ ካለው የስራ አከባቢዎች ጋር እንኳን አላወዳድረውም፣ ምክንያቱም ከሌሎች ጋር ሲወዳደር በጣም አስፈሪ ነው።

የሚከተሉት ሁኔታዎች ወደ አእምሯቸው ይመጣሉ።

  • የጥቅል ይዘቶችን ማየት እፈልጋለሁ .hpkg
  • ጥቅል መጫን እፈልጋለሁ
  • ጥቅሉን ማስወገድ እፈልጋለሁ
  • እንደ ጥቅል አካል ወደ ስርዓቱ የመጣውን ነገር ማስወገድ እፈልጋለሁ
  • እንደ ጥቅል አካል ወደ ስርዓቱ የመጣ ነገር መቅዳት እፈልጋለሁ
  • የእሽግ ጥገኝነቶችን ሁሉ ማውረድ እፈልጋለሁ፣ ይህም የእያንዳንዱ የሃይኩ ጭነት አካል ላይሆን ይችላል (ለምሳሌ፣ ምንም የበይነመረብ መዳረሻ የሌለው በአካል የተገለለ ማሽን አለኝ።)
  • ጥቅሎቼን (ወይም ከፊሉን) ለየብቻ ወደ ሌላ ቦታ ማዛወር እፈልጋለሁ ፣ ከቡት ድምጽ (ሥርወ ክፋይ) (ምክንያቱም ፣ ለምሳሌ ፣ በላዩ ላይ በቂ ቦታ የለኝም)።

ይህ ከቀን ወደ ቀን ስራዬ አብዛኛዎቹን ዋና ጉዳዮችን መሸፈን አለበት። ደህና, እንጀምር.

የጥቅል ይዘቶችን በመፈተሽ ላይ

ማክ ላይ ጥቅሉን ለመክፈት እና ይዘቱን ለማየት በቀላሉ በፋይንደር ላይ በቀኝ ጠቅ አደርጋለሁ። ደግሞም ፣ በእውነቱ ፣ እሱ የተደበቀ ማውጫ ብቻ ነው! (ጥቅሎች እንዳሉ አውቃለሁ .pkg ለስርዓቱ አካል ላልሆነ መተግበሪያ ፣ ግን ተራ ተጠቃሚዎች ብዙውን ጊዜ ከእነሱ ጋር አይገናኙም)።

በሃይኩ ላይ በጥቅሉ ላይ ቀኝ-ጠቅ አድርጌአለሁ፣ከዚያም በውስጡ ያለውን ለማየት "ይዘት" ላይ ጠቅ አድርጌያለው። ግን ሁለት ጊዜ ጠቅ በማድረግ ለመክፈት ችሎታ የሌላቸው የፋይሎች ዝርዝር እዚህ አለ።
ጥቅሉን ለመጫን (ለጊዜው) መንገድ ካለ በጣም የተሻለ ይሆናል .hpkg በፋይል አቀናባሪ በኩል ለመታየት እና ተጠቃሚው ስለ ትግበራ ዝርዝሮች መጨነቅ አይኖርበትም. (በነገራችን ላይ መክፈት ይችላሉ .hpkg ጥቅል ውስጥ Expander, እሱም እንደ ማንኛውም ማህደር ሊፈታው ይችላል).

የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር
የHaikuDepot በይነገጽ የጥቅል ፋይሎችን ዝርዝር ለማየት ይፈቅድልሃል ነገር ግን ይዘቱን ለማየት ምንም መንገድ የለም ለምሳሌ README.md ሁለቴ ጠቅ በማድረግ

በዚህ ምድብ ማክ ያሸንፋል፣ ግን የሚፈልጉትን የHaikuDepot ተግባር ማከል በጣም ከባድ መሆን የለበትም።

በ GUI በኩል ጥቅል በመጫን ላይ

ማክ ላይ, አብዛኞቹ የዲስክ ምስሎች .dmg ፓኬጆችን ይዟል .app. የዲስክን ምስል ሁለቴ ጠቅ ያድርጉ እና ከዚያም ጥቅሉን ይቅዱ, ለምሳሌ ወደ ውስጥ በመጎተት ይቅዱ /Applications በ Finder ውስጥ. ይህ ለእኔ ሳይናገር ይሄዳል፣ ነገር ግን አንዳንድ አዲስ ጀማሪዎች ይህንን መቋቋም እንደማይችሉ ሰምቻለሁ። በነባሪነት አፕል የስርአት-ሰፊ ማውጫን "ይጠቁማል /Applications (በNeXT ላይ እንደ ግለሰብም ቢሆን በአውታረመረብ የተገናኘ ነበር) ነገር ግን መተግበሪያዎችዎን በቀላሉ በፋይል አገልጋይ ላይ ወይም በንዑስ ማውጫ ውስጥ ማስቀመጥ ይችላሉ $HOME/Applications, እንደዚያ ከወደዱት.

በሃይኩ ላይ, በጥቅሉ ላይ ሁለቴ ጠቅ ያድርጉ, ከዚያም "ጫን" ላይ ጠቅ ያድርጉ, ቀላል ሊሆን አይችልም. አንድ ጥቅል በ HaikuPorts ውስጥ የሚገኙ ግን ገና ያልተጫኑ ጥገኛዎች ካሉት ምን እንደሚሆን እያሰብኩ ነው። በሊኑክስ ላይ በእውነቱ በዚህ ሁኔታ ውስጥ ምን ማድረግ እንዳለባቸው አያውቁም ፣ ግን መፍትሄው ግልፅ ነው - ጥገኛዎችን ማውረድ እና መጫን እንደሚያስፈልጋቸው ለተጠቃሚው ይጠይቁ። በትክክል ሃይኩ የሚያደርገው።

የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር
የ'ሳኒቲ' ጥቅልን በእጅ አውርጄ በላዩ ላይ ጠቅ አደረግሁ፣ የጥቅል አስተዳዳሪው ጥገኞቹን ከየት ማግኘት እንዳለበት ያውቃል (ማከማቻዎቹ በስርዓቱ ውስጥ የተመዘገቡ መሆናቸውን በማሰብ)። ሁሉም የሊኑክስ ስርጭት ይህን ማድረግ አይችልም።

ሌላው መንገድ የፋይል አቀናባሪን መጠቀም ብቻ ነው ጎትት እና ጣለው .hpkg ጥቅል ወይም ውስጥ /Haiku/system/packages (ለስርዓተ-አቀፍ ጭነት በነባሪ) ወይም በ /Haiku/home/config/packages (ለግለሰብ ጭነት; ሁለቴ ጠቅ ሲደረግ አይገኝም - አሁንም በዚህ ቦታ "ውቅረት" የሚለው ቃል ተናድጃለሁ, በዚህ ጉዳይ ላይ ለእኔ ከ "ቅንጅቶች" ጋር ተመሳሳይ ነው). እና የበርካታ ተጠቃሚዎች ፅንሰ ሀሳብ ለሀይኩ እንኳን አልተገኘም (ለዛም ነው ቀላል የሆነው - አላውቅም፣ ምናልባት የባለብዙ ተጠቃሚ ችሎታዎች ለዴስክቶፕ ዴስክቶፕ አካባቢ ነገሮችን ሳያስፈልግ ያወሳስበዋል)።

ሃይኩ በዚህ ምድብ ያሸንፋል ምክንያቱም ከመተግበሪያዎች ጋር ብቻ ሳይሆን በስርዓት ፕሮግራሞችም ሊሠራ ይችላል.

አንድ ጥቅል ከ GUI በማስወገድ ላይ

ማክ ላይ, የመተግበሪያ አዶውን ወደ ቆሻሻ መጣያ መጎተት አለብዎት, እና ያ ብቻ ነው. በቀላሉ!

በሃይኩ ላይ, በመጀመሪያ, ጥቅሉ በሲስተሙ ላይ የት እንደሚገኝ መፈለግ አለብዎት, ምክንያቱም በትክክለኛው ቦታ ላይ እምብዛም ስለማይጭኑት (ስርዓቱ ሁሉንም ነገር ያደርጋል). ብዙውን ጊዜ ወደ ውስጥ መመልከት ያስፈልግዎታል /Haiku/system/packages (በስርዓት-ሰፊ ነባሪ ጭነት) ወይም ውስጥ /Haiku/home/config/packages ("config" የተሳሳተ ትርጉም መሆኑን ጠቅሼ ነበር?) ከዚያ ማመልከቻው በቀላሉ ወደ ቆሻሻ መጣያ ይጎትታል, እና ያ ነው.
በቀላሉ! ቢሆንም፣ እንዲህ አልልም። በእውነቱ እየሆነ ያለው ይኸውና፡-

የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር
ማመልከቻውን ወደ መጣያ ጣሳ ከጎትቱት የሚሆነው ይህ ነው። /Haiku/system/packages

በQtQuickApp ላይ የትላንትናውን "ሄሎ አለም" መተግበሪያዬን ወደ መጣያ ለመውሰድ ሞክሬ ነበር። የስርዓት ማውጫውን ለማንቀሳቀስ አልሞከርኩም, እና ሁሉም ፓኬጆች በስርዓት ማውጫ ውስጥ ስለተጫኑ ጥቅሉን ለማስወገድ የማይቻል ነው .hpkg ያለ ለውጥ "ይዘቱ". አንድ ተራ ተጠቃሚ ይፈራና በነባሪ የተመደበውን “ሰርዝ” የሚለውን ቁልፍ ይጫኑ።

ያስረዳል። ለ አቶ. waddlesplash:

ይህ ልጥፍ ከ10 ዓመት በላይ ነው። ምናልባት ማስጠንቀቂያው ጥቅሉ ሲንቀሳቀስ ብቻ እንዲታይ ማዋቀር አለብን። መደበኛ ተጠቃሚዎች ለማንኛውም ይህን ማድረግ አያስፈልጋቸውም።

እሺ፣ ምናልባት HaikuDepot በመጠቀም ይህን ማድረግ አለብኝ? በጥቅሉ ላይ ሁለቴ ጠቅ አደርጋለሁ /Haiku/system/packages, "Uninstall" አዝራር እስኪታይ ድረስ በመጠባበቅ ላይ. አይ፣ “ጫን” አለ (ብቻ)። "Uninstall" የት ነህ?

ለመዝናናት ያህል፣ ቀደም ሲል በተጫነ ጥቅል ላይ “ጫን” ን ጠቅ ካደረግሁ ምን እንደሚሆን ለማየት ሞከርኩ። እንደሚከተለው ይሆናል፡-

የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር
አስቀድሞ የተጫነ ጥቅል ለመጫን ከሞከሩ ይሄ ይከሰታል።

ቀጥሎ ይታያል፡-

የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር
በቀደመው መስኮት ውስጥ "ለውጦችን ተግብር" ን ጠቅ ካደረጉ, ይህን ይመስላል

ይሄ የሶፍትዌር ስህተት ነው ብዬ እገምታለሁ፤ የመተግበሪያው ማገናኛ አስቀድሞ አለ። [ደራሲው አገናኝ አላቀረበም - በግምት. ተርጓሚ]

ፈጣን መፍትሄ፡ ጥቅሉ ከገባ "Uninstall" የሚለውን ቁልፍ ያክሉ /Haiku/system/packages፣ ወይም ውስጥ /Haiku/home/config/packages.

በ HaikuDepot ውስጥ የተጫኑትን የጥቅሎች ዝርዝር ስመለከት, እሽጌን በዝርዝሩ ውስጥ አይቻለሁ እና ማስወገድ እችላለሁ.

ማክ በዚህ ምድብ ያሸንፋል። ግን በትክክል ማዋቀር በሃይኩ ላይ ያለው የተጠቃሚ ተሞክሮ ከማክ የተሻለ እንደሚሆን መገመት እችላለሁ። (ከገንቢዎቹ አንዱ በዚህ መንገድ ደረጃ ሰጥቶታል፡ “የተጠቀሰውን ተግባር ወደ HaikuDepot ለመጨመር ከአንድ ሰዓት ባነሰ ጊዜ ውስጥ፣ ትንሽ C++ የምታውቁ ከሆነ፣ ፈቃደኛ አለን?)

የሆነ ነገር ከጥቅል ውስጥ በማስወገድ ላይ

ጥቅሉን ሳይሆን አፕሊኬሽኑን እራሱ ለማስወገድ እንሞክር .hpkg, ከየት እንደመጣ (ለ "ብቻ ሟቾች" ምንም ልዩነት እንዳለ እጠራጠራለሁ).

ማክ ላይ፣ ተጠቃሚው ብዙውን ጊዜ ከፋይሉ ጋር ይሰራል .dmgየማመልከቻው ጥቅል ከየት ነው የሚመጣው .app. አብዛኛውን ጊዜ ምስሎች .dmg በውርዶች ማውጫ ውስጥ ተከማችተዋል፣ እና ጥቅሎች በተጠቃሚው ይገለበጣሉ /Applications. ብዙ ተጠቃሚዎች እራሳቸው የሚያደርጉትን አያውቁም ተብሎ ይታመናል, ይህ መላምት በቀድሞ አፕል ሰራተኛ የተረጋገጠ ነው. (በማክ ላይ ከማልወዳቸው ነገሮች አንዱ። እና ለምሳሌ በAppImage በመተግበሪያው እና በነበረበት ጥቅል መካከል ምንም ልዩነት የለም። አዶውን ወደ መጣያ ይጎትቱት = ያ ነው። ቀላል!)

በሃይኩ ላይ፣ በመካከል መከፋፈልም አለ። apps/ и packages/፣ ስለዚህ ይህ ለተጠቃሚዎች የበለጠ ግልፅ እንዳደረገው እጠራጠራለሁ። ነገር ግን ማመልከቻ ከጎትቱ ምን ይከሰታል apps/ ወደ ግዢው ቅርጫት ጨምር:

የእኔ ስድስተኛ ቀን ከሀይኩ ጋር፡ በሀብቶች፣ በአዶዎች እና በጥቅሎች መከለያ ስር
ከፋይል የተወሰደ መተግበሪያን ለማስወገድ ሲሞክሩ ይህ የሚሆነው ነው። .hpkg

በቴክኒክ ልክ ነው (ከሁሉም በኋላ፣ አፕሊኬሽኑ የሚስተናገደው በመጀመሪያ ደረጃ ተነባቢ-ብቻ የፋይል ስርዓት ላይ ነው) ግን በተለይ ለተጠቃሚው ጠቃሚ አይደለም።

ፈጣን መፍትሄ፡ በምትኩ ለመሰረዝ GUI ን ጠቁም። .hpkg

ለመዝናናት ያህል Alt+Dን በመጫን አፕሊኬሽኑን ለማባዛት ሞከርኩ። "ንባብ-ብቻ ድምጽ ላይ ያሉትን ነገሮች ማንቀሳቀስ ወይም መቅዳት አልተቻለም" የሚል መልእክት ደረሰኝ። እና ሁሉም ምክንያቱም /system (በተጨማሪ /system/packages и /system/settings) የ packfs ተራራ ነጥብ ነው (በውጤቱ ውስጥ እንዴት እንደሚታይ ያስታውሱ df?) የአጋጣሚ ነገር ሆኖ የትእዛዝ ውፅዓት mount ሁኔታውን አያብራራም (ከቀደሙት መጣጥፎች በአንዱ ላይ እንደተነገረው) mountvolume የሚፈልጉትን አያሳይም (ጥቅሎች በ loop በኩል የተጫኑ ይመስላል .hpkg እንደ "ጥራዞች" አይቆጠሩም, እና አማራጭ ትዕዛዞችንም ረሳሁ.

በዚህ ምድብ ውስጥ ከAppImage በስተቀር ማንም ያሸነፈ የለም (ይህ ግን ሙሉ በሙሉ እውነት ለመናገር አድሏዊ አስተያየት ነው)። ሆኖም፣ አንድ ሰው ካስተካከለ በኋላ፣ በ Haiku ላይ ያለው የተጠቃሚ ተሞክሮ ከማክ የተሻለ እንደሚሆን መገመት ይችላል።

ማሳሰቢያ: ከ "ክፍል" ጋር በተያያዘ "ጥራዝ" ምን እንደሆነ ማወቅ ያስፈልግዎታል. ይህ ምናልባት ከ"አቃፊ" እና "ማውጫ" ጋር ካለው ግንኙነት ጋር ይመሳሰላል፡- አብዛኞቹ ማውጫዎች በፋይል አቀናባሪው ውስጥ እንደ አቃፊዎች ሆነው ይታያሉ፣ ግን ሁሉም አይደሉም (ጥቅሎች እንደ ፋይል ይቆጠራሉ ፣ ለምሳሌ)። ይህ ዓይነቱ ማሳያ ኦፊሴላዊ ነርድ ያደርገኛል?

የጥቅል ይዘቶችን ወደ ሌላ ስርዓት መቅዳት

ማክ ላይ፣ ጥቅሉን በሞኝነት እጎትታለሁ። .app, እና ጥገኛዎቹ በጥቅሉ ውስጥ ስለሆኑ, አብረው ይንቀሳቀሳሉ.

በሃይኩ ላይ, አፕሊኬሽኑን እጎትታለሁ, ነገር ግን ጥገኛዎቹ ጨርሶ አይሰሩም.

ፈጣን መፍትሄ፡ ይልቁንስ ሙሉውን `.hpkg ጥቅል ከየትኛውም ጥገኝነት ጋር፣ ካለ ለመጎተት እንጠቁም።

በዚህ ምድብ ማክ በግልፅ ያሸንፋል። ቢያንስ ለኔ የነሱን ምሳሌ የሚወድ። ወደ ሃይኩ መቅዳት አለብኝ .hpkg ከማመልከቻ ይልቅ ግን ስርዓቱ ይህንን አያቀርብልኝም…

ከሁሉም ጥገኞቹ ጋር አንድ ጥቅል ያውርዱ

እያንዳንዱ ማሽን ሁልጊዜ ከአውታረ መረቡ ጋር የተገናኘ አይደለም. በተቃራኒው, አንዳንድ ማሽኖች (አዎ, እርስዎን እየተመለከትኩ ነው, ዘመናዊ ዊንዶውስ, ማክ እና ሊኑክስ) ስለዚህ ጉዳይ ይረሳሉ. ለእኔ አስፈላጊ ነው ፣ ለምሳሌ ፣ ወደ በይነመረብ ካፌ መሄድ ፣ ሶፍትዌሮችን ወደ ተንቀሳቃሽ ድራይቭ ላይ ማውረድ ፣ ይህንን ድራይቭ ወደ ቤቴ ኮምፒተር ውስጥ ማስገባት እና ሁሉም ነገር እንደሚሰራ እርግጠኛ ይሁኑ [አደገኛ ሰው ፣ ይህንን በዊንዶውስ… - በግምት. ተርጓሚ]።

በውጤቱም, እኔ ከተለመደው ትንሽ በተደጋጋሚ በዊንዶውስ እና ሊኑክስ ላይ ያልተሟሉ ጥገኞችን የመጨረስ አዝማሚያ አለኝ.

ማክ ላይ ይሄ አብዛኛውን ጊዜ አንድ ፋይል ነው, የሚያስፈልግዎ ነገር ማውረድ ብቻ ነው .dmg. ብዙውን ጊዜ በነባሪ በራሱ በማክኦኤስ ከተሰጡት በስተቀር ምንም ጥገኛዎች የሉትም። ለየት ያለ ሁኔታ ተስማሚ የማስፈጸሚያ አካባቢን የሚጠይቁ ውስብስብ መተግበሪያዎች ናቸው, ለምሳሌ ጃቫ.

በሃይኩ ላይ ጥቅል አውርድ .hpkg ጃቫ በዒላማው ማሽን ላይ ሊኖር ወይም ላይኖር ስለሚችል፣ በጃቫ ውስጥ ያለው ተመሳሳይ መተግበሪያ በቂ ላይሆን ይችላል። ለተወሰነ ጥቅል ሁሉንም ጥገኞች ለማውረድ የሚያስችል መንገድ አለ? .hpkg, በነባሪ በሃይኩ ውስጥ ከተጫኑት እና ስለዚህ በእያንዳንዱ የሃይኩ ስርዓት ላይ መሆን አለባቸው?

ማክ ይህንን ምድብ በትንሽ ህዳግ ያሸንፋል።

አስተያየቶች Mr. waddlesplash:

የመተግበሪያውን ሁሉንም ጥገኞች እንደ ጥቅል ስብስብ ለመሰብሰብ ፕሮግራም ለመጻፍ .hpkg የሃይኩን ውስጣዊ አሠራር ለሚያውቅ ሰው 15 ደቂቃ ያህል በቂ ነው። እውነተኛ ፍላጎት ካለ ለዚህ ድጋፍ መጨመር ያን ያህል አስቸጋሪ አይደለም. ለእኔ ግን ይህ ያልተለመደ ሁኔታ ነው.

በዚህ ተከታታይ ክፍል እስከሚቀጥለው መጣጥፍ ድረስ እስትንፋሳችንን እንጠብቅ።

ፓኬጆችን ወደ የተለየ ቦታ በመውሰድ ላይ

ቀደም ብዬ እንደጻፍኩት ጥቅሎቼን ማስቀመጥ እፈልጋለሁ .hpkg (በደንብ, ወይም በከፊል) ወደ ልዩ ቦታ, በቡት ቮልዩ (የስር ክፋይ) ላይ ከተለመደው አቀማመጥ ይለያል. በተለመደው (በጣም ጽንሰ-ሀሳብ አይደለም) ሁኔታ, ይህ የሆነበት ምክንያት, ምንም ያህል ትልቅ ቢሆኑም, በእኔ (አብሮገነብ) ዲስኮች ላይ ያለማቋረጥ ነፃ ቦታ አለቀሁ. እና አብዛኛውን ጊዜ መተግበሪያዎቼ የሚገኙባቸውን ውጫዊ ድራይቮች ወይም የአውታረ መረብ ማጋራቶችን እገናኛለሁ።

ማክ ላይ እኔ ፓኬጆችን እያንቀሳቀስኩ ነው። .app በፈላጊ ውስጥ ወደሚንቀሳቀስ ድራይቭ ወይም የአውታረ መረብ ማውጫ፣ እና ያ ነው። እንደተለመደው ከቡት ቮልዩ ላይ እንደማደርገው አሁንም አፕሊኬሽኑን ለመክፈት ሁለቴ ጠቅ ማድረግ እችላለሁ። ብቻ!

በሃይኩ ላይ, እንደተነገረኝ, ይህ ሊሳካ የሚችለው የእኔን በማንቀሳቀስ ነው .hpkg ፓኬጆችን ወደ ተነቃይ ድራይቭ ወይም የአውታረ መረብ ማውጫ ፣ ግን ከዚያ በሲስተሙ ላይ ለመጫን በኮንሶሉ ውስጥ አንዳንድ ሰነድ አልባ ትዕዛዞችን መጠቀም ያስፈልግዎታል። GUIን ብቻ በመጠቀም ይህንን እንዴት ማድረግ እንዳለብኝ አላውቅም።

ማክ በዚህ ምድብ ያሸንፋል።

እንደ ሚስተር. waddlesplash:

ይህ በመደበኛ አጠቃቀም ላይ የተመሰረተ ማመቻቸት ነው. ከአንድ በላይ ተጠቃሚ ፍላጎት ካለ ተግባራዊ እናደርጋለን። በማንኛውም ሁኔታ የሶስተኛ ወገን ትግበራ ዕድል አለ.

በሚቀጥለው ርዕስ ስለዚህ ጉዳይ እንነጋገራለን.

ስለ ኔትወርክ ማውጫዎች ስንናገር፣ ቀላል፣ ሊገኙ የሚችሉ፣ አውታረመረብ-ሰፊ አፕሊኬሽኖች (እንደ ዜሮኮንፍ ያሉ) ወደ አካባቢያዊ ኮምፒዩተር የሚገለበጡ ወይም ከአካባቢያዊ አውታረመረብ በቀጥታ የሚሄዱ አፕሊኬሽኖች ቢኖሩት ጥሩ ነው (የ LAN ፓርቲዎችን እገምታለሁ። በእርግጥ ገንቢዎች በ በኩል መርጠው የመውጣት አማራጭ አላቸው። app_flags.

የ hpkg ስርዓት ከ GUI ጋር ስለመዋሃድ የመጨረሻ ሪፖርት

እኔ እንደማስበው በዋናነት ውህደቱ ባለው አንጻራዊ አዲስነት ነው። .hpkg GUI አሁንም የሚፈለጉትን ብዙ ይቀራል። ለማንኛውም ከ UX አንፃር ሊሻሻሉ የሚችሉ ጥቂት ነገሮች አሉ።

አንድ ተጨማሪ ነገር፡ የከርነል ማረም መሬት

ለምሳሌ በከርነል ፍርሃት ወቅት ትዕዛዞችን ማስገባት መቻል በጣም ጥሩ ነው። syslog | grep usb. ደህና፣ በሃይኩ ላይ ለከርነል ማረም መሬት ምስጋና ይግባው። የከርነል ድንጋጤ ውስጥ ሳይገቡ ሁሉም ነገር እንደ ሚሰራው ከሆነ ይህን አስማት በተግባር እንዴት ማየት ይቻላል? Alt+PrintScn+Dን በመጫን ቀላል (ሚሞኒክን ማረም)። ወዲያውኑ አስታውሳለሁ የፕሮግራመር ቁልፍ, ይህም ዋናው የማኪንቶሽ ገንቢዎች ወደ አራሚው እንዲገቡ አስችሏቸዋል (አንድ ከተጫነ በእርግጥ).

መደምደሚያ

የሃይኩ አሰራር ውስብስብነት የመጣው ስራው በአንድ አነስተኛ ቡድን የሚሰራው በስራው አካባቢ ላይ ግልፅ ትኩረት በመስጠት በሁሉም የስርአቱ ንብርብሮች ተደራሽ በመሆኑ መሆኑን መረዳት ጀመርኩ።
ከሊኑክስ/ጂኤንዩ/dpkg/apt/systemd/Xorg/dbus/Gtk/GNOME/XDG/Ubuntu አለም ጋር የጠራ ንፅፅር፣ ሁሉም ነገር በትናንሽ ቁርጥራጮች ተከፋፍሎ አብስትራክሽን በ abstraction ላይ ተቀምጦ በክራንች የሚነዳበት።
ስርዓቱ እንዴት እንደሆነ ግንዛቤም ነበር። .hpkg የተለምዷዊ የጥቅል አስተዳዳሪዎች፣ Snappy፣ Flatpak፣ AppImage፣ btrfsን ጨምሮ ምርጥ ልምዶችን ያጣምራል እና ከማክ "ልክ ይሰራል" አካሄድ ጋር ያዋህዳቸዋል።

በጭንቅላቴ ውስጥ የሆነ ነገር "የተለወጠ" ያህል ነበር, እና ስርዓቱ እንዴት እንደሆነ ተረድቻለሁ .hpkg እሷን በማየት ብቻ እንዴት እንደሚንከባለል ያውቃል። ግን እኔ አይደለሁም, ግን የስርዓቱ ውበት እና ቀላልነት. አብዛኛው የመነጨው በዋናው ማክ መንፈስ ነው።

አዎ፣ በአሳሹ ውስጥ ማሰስ ዥዋዥዌ እና እንደ ቀንድ አውጣ ሊሄድ ይችላል፣ አፕሊኬሽኖች ይጎድሉ ይሆናል (ጂትክ የለም፣ ኤሌክትሮን - ገንቢዎቹ በረቀቀ ሁኔታ አይሄዱም ብለው ደምድመዋል)፣ ቪዲዮ እና 3 ዲ ማጣደፍ ሙሉ በሙሉ ላይኖር ይችላል፣ እኔ ግን አሁንም ይህን ሥርዓት ወደዱት። ከሁሉም በላይ, እነዚህ ነገሮች ሊስተካከሉ ይችላሉ እና ፈጥኖም ሆነ ዘግይተው ይታያሉ. የጊዜ ጉዳይ ብቻ ነው እና ምናልባት ትንሽ ቀይ አይን.

እርዳታ መስጠት አልችልም ግን ከአሁን ጀምሮ የሚጀምር ይመስለኛል የሃይኩ ዓመት በዴስክቶፕ ላይ.

የዘፈቀደ ችግሮች

ምናልባት ቀድሞውኑ ጥያቄዎች አሉ ወይም ልከፍታቸው?

  • BeScreenCapture እንደ Peek ወደ GIF መላክ መቻል አለበት። ይህ አስቀድሞ ለሀይኩ የሚገኘውን ffmpeg በመጠቀም ሊከናወን ይችላል። ማመልከቻ.
  • የቅጽበታዊ ገጽ እይታ ሶፍትዌር የሞዳል መስኮትን መቅረጽ ተስኖታል፣ ይልቁንስ መላውን ስክሪን በመያዝ
  • የ WonderBrush's መከርከሚያ መሳሪያ በመጠቀም ቅጽበታዊ ገጽ እይታዎችን መከርከም እና ውጤቱን ወደ ፋይል ማስቀመጥ አይችሉም
  • በተለይ በሃይኩ ውስጥ ያለውን የእጅ ጠቋሚን አልወደውም ነገር ግን እሱ ከሞቀ ናፍቆት ስሜት ጋር የተያያዘ ይመስለኛል። ይህ በተለይ በክሪታ ውስጥ የሰብል መሳሪያውን ሲጠቀሙ በጣም ያበሳጫል, ምክንያቱም ትክክለኛ ያልሆነ መከርከም ስለሚያስከትል (በዚህ ጽሑፍ ውስጥ የሞዳል መገናኛዎች ቅጽበታዊ ገጽ እይታዎችን ይመልከቱ). የፀጉር አቋራጭ ጠቋሚ በጣም ጥሩ ይሆናል። ማመልከቻ.

እራስዎ ይሞክሩት! ከሁሉም በላይ የሃይኩ ፕሮጀክት ከዲቪዲ ወይም ከዩኤስቢ ለመነሳት ምስሎችን ያቀርባል, የተፈጠረ ежедневно. ለመጫን ምስሉን ብቻ አውርደው ወደ ዩኤስቢ ፍላሽ አንፃፊ በመጠቀም ያቃጥሉት Etcher

ማንኛውም ጥያቄ አለህ? ወደ ሩሲያኛ ተናጋሪ እንጋብዝሃለን። የቴሌግራም ሰርጥ.

የስህተት አጠቃላይ እይታ፡- በ C እና C ++ ውስጥ እራስዎን በእግር ውስጥ እንዴት እንደሚተኩሱ። የHaiku OS የምግብ አሰራር ስብስብ

ከ ደራሲ ትርጉም፡ ይህ ስለ ሃይኩ በተከታታይ ውስጥ ስድስተኛው መጣጥፍ ነው።

የጽሁፎች ዝርዝር፡- የመጀመሪያው ሁለተኛው ሦስተኛው አራተኛ አምስተኛ

ምንጭ: hab.com

አስተያየት ያክሉ