روز سوم من با هایکو: یک تصویر کامل در حال ظهور است

روز سوم من با هایکو: یک تصویر کامل در حال ظهور است
TL؛ DR: هایکو می تواند یک سیستم عامل دسکتاپ منبع باز عالی باشد. من واقعاً این را می خواهم، اما هنوز به اصلاحات زیادی نیاز است.

من دو روزه در حال مطالعه هایکو هستم، یک سیستم عامل غیرمنتظره خوب. الان روز سوم است و من آنقدر این سیستم عامل را دوست دارم که مدام فکر می کنم: چگونه می توانم آن را به یک سیستم عامل برای هر روز تبدیل کنم؟ از نظر ایده های کلی، من مک را بیشتر دوست دارم، اما مشکل اینجاست: متن باز نیست و باید به دنبال جایگزین های متن باز باشید.

در طول 10 سال گذشته، این اغلب به معنای لینوکس بوده است، اما خود را نیز دارد مجموعه ای از مشکلات.

سیستم عامل هایکو در DistroTube ارائه شده است.

من به محض اینکه در مورد آن شنیدم هایکو را امتحان کردم و بلافاصله تحت تأثیر قرار گرفتم - به خصوص با یک محیط دسکتاپ که "فقط کار می کند" و همچنین به وضوح از هر محیط دسکتاپ لینوکس که از نظر مفهومی می شناسم بسیار برتر است. می خواهم می خواهم می خواهم!!!

روز سوم کار واقعی را ببینیم!

برنامه های کاربردی از دست رفته

در دسترس بودن برنامه ها جنبه بسیار "سرنوشت" هر سیستم عامل است، قدیمی موضوع. از آنجایی که ما در مورد هایکو صحبت می کنیم، می دانم که برای اکثر موارد گزینه های مختلفی وجود دارد.

با این حال، من هنوز نمی توانم برنامه هایی را برای نیازهای روزانه خود پیدا کنم:

  • ویرایشگر نشانه گذاری (به عنوان مثال تایپورا). البته دارند cutemarked، اما به نظر می رسد هیچ دکمه یا میانبر صفحه کلیدی برای طرح بندی متن ندارد. نیز وجود دارد شبح، اما او دارد بدون میانبر صفحه کلید برای علامت گذاری متن به عنوان کد درون خطی یا بلوک کد.
  • ضبط صفحه به GIF متحرک (مثلا زیرچشمی نگاه کردن). BeScreenCapture وجود دارد، اما نمی تواند این کار را انجام دهد.
  • نرم افزار پرینترهای سه بعدی (به عنوان مثال، Ultimaker Cure, PrusaSlicer).
  • 3D CAD (به عنوان مثال FreeCAD, OpenSCAD، یا ساخته شده است شکل). LibreCAD وجود دارد، اما فقط دو بعدی است.

مدل توسعه

هایکو برای موفقیت در برنامه های موجود به چه چیزهایی نیاز دارد؟ البته توسعه دهندگان را جذب کنید.

در حال حاضر، تیم توسعه Haiku مطمئناً کار بزرگی را در زمینه معرفی برنامه های محبوب مختلف انجام داده است، اما برای موفقیت کامل به عنوان یک پلتفرم، باید بتواند به راحتی نسخه هایی از برنامه ها را برای هایکو ایجاد کند. ایجاد یک برنامه کاربردی برای هایکو در حالت ایده آل باید گزینه دیگری در ماتریس ساخت Travis CI یا GitLab CI باشد. بنابراین، شرکتی مانند Ultimaker، خالق نرم افزار پرینتر سه بعدی منبع باز محبوب Cura، چگونه می تواند برنامه های خود را برای هایکو بسازد؟

من متقاعد شده‌ام که رویکرد کلاسیک "نگهدار" که بسته‌هایی را برای یک توزیع لینوکس خاص می‌سازد و نگهداری می‌کند، با فهرست بزرگی از برنامه‌ها مقیاس نمی‌شود. این که آیا نرم افزار چاپگرهای سه بعدی در این لیست وجود دارد یا خیر قابل بحث است، اما به عنوان مثال، نرم افزاری برای سازماندهی برنامه یک مدرسه خاص وجود دارد. هایکو برای چنین برنامه هایی چه پیشنهادی دارد؟ (معمولاً با استفاده نوشته می شوند الکترون، برای همه سیستم عامل ها در دسترس هستند، تحت لینوکس اغلب در آن قرار می گیرند AppImageکه به معنای تحویل بدون مشکل به همه کاربران است).

لیبرآفیس

واضح است که داشتن LibreOffice در دسترس برای هایکو کار کوچکی نیست که کاربران BeOS فقط می توانستند رویای آن را داشته باشند، اما همه چیز عالی نیست.

در مورد من (Kingston Technology DataTraveler 100 USB Stick) حدود 30 ثانیه طول می کشد تا شروع شود، و توسعه دهندگان پیشنهاد کردند که راه اندازی نرم افزار نرمال نباید بیش از 4-5 ثانیه باشد (در صورت استفاده از یک هارد دیسک معمولی [در SSD من همه چیز در کمتر از یک ثانیه شروع شد - تقریبا. مترجم]).

من می خواهم پیشرفت راه اندازی یک برنامه بزرگ، به عنوان مثال، یک "نماد پرش"، تغییر مکان نما، یا چیز دیگری مانند آن را ببینم. صفحه اسپلش لیبره آفیس تنها پس از چند ثانیه ظاهر می شود و تا آن زمان شما نمی دانید چه اتفاقی در حال رخ دادن است.

روز سوم من با هایکو: یک تصویر کامل در حال ظهور است
پرش کردن آیکون های برنامه به عنوان نشانه ای از اجرای برنامه ها.

  • میانبرهای صفحه کلید نشان داده شده در منو نادرست هستند (با امضای Ctrl+O، اما در واقع Alt+O، بررسی کردم: Alt+O کار می کند، اما Ctrl+O نه).
  • Alt+Z کار نمی کند (مثلاً در Writer).
  • مشکل "برنامه LibreOffice فرآیند خاموش شدن را متوقف کرده است" [در نظر گرفته شده این بود.» تقریباً. مترجم].

زمان راه اندازی برنامه

توجه: لطفا این بخش را با یک دانه نمک مصرف کنید. اگر به نظرات دیگران تکیه کنید عملکرد واقعا عالی است. نتایج من بسیار متفاوت است... من فرض می‌کنم که ویژگی‌های راه‌اندازی من و اندازه‌گیری‌های انجام‌شده تاکنون غیرعلمی هستند. با ظهور ایده ها/نتایج جدید، این بخش را به روز خواهم کرد.

عملکرد برنامه های در حال اجرا (غیر بومی) ... آنقدرها هم عالی نیست، تفاوت حدود 4-10 برابر است. همانطور که می بینید، به دلیلی که برای من ناشناخته است، تنها از 1 هسته پردازنده در هنگام اجرای برنامه های غیر بومی استفاده شده است.

روز سوم من با هایکو: یک تصویر کامل در حال ظهور است
سرعت اجرای برنامه را چگونه می بینم.

  • راه اندازی کریتا در یک درایو فلش Kingston Technology DataTraveler 40 که به پورت USB100 متصل است، حدود 2.0 ثانیه طول می کشد (راه اندازی Krita AppImage در یک Xubuntu Linux Live ISO از طریق USB2 یک ثانیه طول می کشد؛ آزمایش های بیشتری مورد نیاز است). تصحیح: حدود 13 ثانیه در SATA SSD با ACPI غیرفعال.

  • راه اندازی لیبرآفیس 30 ثانیه در درایو فلش Kingston Technology DataTraveler G4 متصل به USB2.0 طول می کشد (کسری از ثانیه در Xubuntu Linux Live ISO از طریق USB 2؛ تست های بیشتری مورد نیاز است) تصحیح: کمتر از 3 ثانیه در SATA SSD با ACPI غیرفعال است.

همچنین شنیده‌ام که آخرین پیشرفت‌ها باعث بهبود عملکرد در SSD بیش از 10 برابر می‌شود. با نفس بند آمده منتظرم

منتقدان دیگر به طور مداوم عملکرد پرشور هایکو را ستایش می کنند. من تعجب می کنم که مشکل سیستم من چیست؟ تصحیح: بله، ACPI در سیستم من خراب است. اگر آن را خاموش کنید، سیستم سریعتر کار می کند.

چند تست انجام دادم

# 
# Linux
#
me@host:~$ sudo dmidecode
(...)
Handle 0x0100, DMI type 1, 27 bytes
System Information
 Manufacturer: Dell Inc.
 Product Name: OptiPlex 780
​me@host:~$ lsusb
Bus 010 Device 006: ID 0951:1666 Kingston Technology DataTraveler 100
# On a USB 2 port
me@host:~$ sudo dd if=/dev/sdc1 of=/dev/null bs=64k count=4096
4096+0 records in
4096+0 records out
268435456 bytes (268 MB, 256 MiB) copied, 7.03517 s, 38.2 MB/s
# On a USB 3 port
me@host:~$ sudo dd if=/dev/sdc1 of=/dev/null bs=64k count=4096
4096+0 records in
4096+0 records out
268435456 bytes (268 MB, 256 MiB) copied, 2.08661 s, 129 MB/s
#
# Haiku - the exact same USB stick
#
/> dmidecode
# dmidecode 3.2
Scanning /dev/misc/mem for entry point.
# No SMBIOS nor DMI entry point found, sorry.
# On a USB 2 port
/> dd if=/dev/disk/usb/1/0/raw of=/dev/null bs=64k count=4096
4096+0 records in
4096+0 records out
268435456 bytes (268 MB, 256 MiB) copied, 7.44154 s, 36.1 MB/s
# On a USB 3 port
/> dd if=/dev/disk/usb/1/0/raw of=/dev/null bs=64k count=4096
4096+0 records in
4096+0 records out
268435456 bytes (268 MB, 256 MiB) copied, 7.47245 s, 35.9 MB/s

برای شفافیت کامل، همه چیز را روی دو ماشین مختلف با لینوکس و هایکو تست کردم. در صورت لزوم، آزمایش ها را روی دستگاه مشابه تکرار می کنم. هنوز مشخص نیست که چرا برنامه ها کندتر از usb2.0 در لینوکس راه اندازی می شوند. به روز رسانی: بسیاری از خطاهای مربوط به USB در syslog این دستگاه وجود دارد. بنابراین نتایج فوق ممکن است برای هایکو به عنوان یک کل معمولی نباشد.

به قول معروف: اگر نتوانی اندازه گیری کنی، نمی توانی مدیریت کنی. و اگر تمایلی برای بهبود عملکرد وجود دارد، پس من فکر می کنم مجموعه آزمایشی خوب است :)

میانبرهای صفحه کلید

برای افرادی که از سیستم عامل های دیگر جدا شده اند، هایکو برای میانبرهای صفحه کلید عالی است. مورد علاقه شخصی من میانبرهای صفحه کلید به سبک مک است که در آن هنگام تایپ یک حرف یا عدد، کلید سمت چپ فاصله (Ctrl در صفحه کلیدهای اپل، Alt در سایرین) را فشار می دهید. از آنجایی که هایکو در این زمینه واقعاً کار خوبی انجام می دهد، فکر می کنم گزینه های زیر را می توان در نظر گرفت:

میانبرهای صفحه کلید برای و روی دسکتاپ

من دوست دارم که بتوانید روی یک نماد کلیک کنید و Alt-O را فشار دهید تا باز شود، یا از میانبر سنتی تر Alt-Down استفاده کنید.

به همین ترتیب، اگر بتوانید علاوه بر Alt-T، Alt-Backspace را برای انتقال یک فایل به سطل زباله فشار دهید.

برای نمایش دسکتاپ: ایده خوبی است که از Alt-H برای "Hide" و Shift-Alt-H برای "Hide All" استفاده کنید. و شاید ایده خوبی باشد که ترکیب Shift-Alt-D را در "نمایش دسکتاپ" وارد کنید.

میانبرها در کادرهای گفتگو

StyledEdit را باز می کنم و متن را وارد می کنم. Alt-Q را فشار می دهم. برنامه می پرسد که آیا باید ذخیره شود یا خیر. Alt-D را برای "Don't save" و Alt-C را برای "Cancel" فشار می دهم. اما این کار نمی کند. من سعی می کنم از کلیدهای جهت دار برای انتخاب یک دکمه استفاده کنم. این هم کار نمی کند. من همان مراحل را در یک برنامه مبتنی بر Qt تکرار می کنم. در اینجا، حداقل، کلیدهای جهت دار برای انتخاب یک دکمه کار می کنند. (کلیدهای کنترلی برای انتخاب دکمه ها در ابتدا در Mac OS X استفاده می شد، اما به نظر می رسد توسعه دهندگان از آن زمان این ویژگی را فراموش کرده اند.)

میانبرهایی برای گرفتن اسکرین شات

عالی خواهد بود اگر Alt-Shift-3 را برای گرفتن اسکرین شات از کل صفحه فشار دهید، Alt-Shift-4 را برای نمایش مکان نما که به شما امکان می دهد ناحیه ای از صفحه را انتخاب کنید و Alt-Shift- را فشار دهید. 5 برای نمایش پنجره فعال فعلی و ظاهر آن.

من نمی دانم که آیا می توان این را به صورت دستی پیکربندی کرد، اما به احتمال زیاد غیرممکن است. حداقل، چنین تلاشی برای من کارساز نبود [باید سعی می کردم آن را در یک فیلمنامه بپیچانم! - تقریبا مترجم].

روز سوم من با هایکو: یک تصویر کامل در حال ظهور است
تقریبا. اما نه واقعا. "-bw" نادیده گرفته می شود، به علاوه تنظیمات پیش فرض اضافی مورد نیاز است.

موارد دیگر روی صفحه کلید

من می توانم نگرانی توسعه دهندگان را احساس کنم، بنابراین به شرح تجربه خود با صفحه کلید در هایکو ادامه خواهم داد.

نمی توان حروف ملی را وارد کرد

کاراکتر "`" خاص است، می تواند بخشی از کاراکتر دیگر (مثلا "e") یا مستقل باشد. پردازش آن نیز در سیستم عامل های مختلف متفاوت است. به عنوان مثال، من نمی توانم یک کاراکتر معین را روی صفحه کلید آلمانی در KWrite وارد کنم. اگر بخواهید وارد آن شوید، هیچ اتفاقی نمی افتد. وقتی همان کاراکتر را در QupZilla وارد می کنید، ">>" را دریافت می کنید. در برنامه های بومی، نماد وارد می شود، اما باید روی آن دوبار ضربه بزنید تا ظاهر شود. برای وارد کردن آن سه بار (معمولاً هنگام علامت گذاری بلوک های کد لازم است، من همیشه آن را به این صورت تایپ می کنم)، باید دکمه را 6 بار فشار دهید. در مک، وضعیت هوشمندانه‌تر مدیریت می‌شود (سه کلیک با حفظ تایپ معمولی دیاکریتیک کافی است).

برنامه های کاربردی جاوا

JavaFX را ندارید؟ جاوا به کمک می آید، اینطور نیست؟ خوب، نه کاملا:

pkgman install openjdk12_default
/> java -jar /Haiku/home/Desktop/MyMarkdown.jar
Error: Could not find or load main class Main
Caused by: java.lang.NoClassDefFoundError: javafx/application/Application

از راه دیگر برویم:

/> /Haiku/home/Desktop/markdown-writer-fx-0.12/bin/markdown-writer-fx
Error: Could not find or load main class org.markdownwriterfx.MarkdownWriterFXApp
Caused by: java.lang.NoClassDefFoundError: javafx/application/Application

به نظر می رسد که در زندگی واقعی، برنامه های جاوا آنقدر که در تبلیغات وعده می دهند قابل حمل نیستند. آیا JavaFX برای هایکو وجود دارد؟ اگر بله، چرا با openjdk12_default نصب نمی شود؟

روی فایل jar دوبار کلیک کنید کار نمی کند

من تعجب می کنم که هایکو نمی داند چگونه با دوبار کلیک کردن روی یک فایل jar کار کند.

باش عجیب رفتار میکنه

از آنجایی که وجود دارد bash، انتظار می رفت لوله ها کار کنند:

/> listusb -vv > listusb.txt
bash: listusb.txt: Invalid Argument

نتیجه

چرا این مقالات را می نویسم؟ به نظر من، جهان واقعاً به یک سیستم عامل منبع باز مانند هایکو نیاز دارد که به وضوح کامپیوتر محور باشد، و همچنین به دلیل اینکه من به طور فزاینده ای از این واقعیت که محیط های دسکتاپ برای لینوکس اذیت می شوم با هم کار نکنید. من بحثی ندارم که برای ایجاد محیط کاربری مورد نظر برای رایانه شخصی به یک هسته کاملاً متفاوت نیاز است یا اینکه می توان یک محیط مشابه را در بالای هسته لینوکس دریافت کرد، اما من علاقه مند هستم که کارشناسان هسته چه می گویند. در مورد این. در حال حاضر، من فقط با هایکو درگیر هستم و یادداشت برداری می کنم به این امید که برای توسعه دهندگان هایکو و/یا عموم علاقمندان مفید باشد.

خودت آن را امتحان کن! پس از همه، پروژه هایکو تصاویری را برای بوت شدن از DVD یا USB، تولید شده فراهم می کند روزانه. برای نصب، کافی است تصویر را دانلود کرده و با استفاده از درایو فلش USB آن را رایت کنید اتچر.

سوالاتی دارید؟ شما را به روسی زبان دعوت می کنیم کانال تلگرام.

نمای کلی خطا: چگونه در C و C++ به پای خود شلیک کنید. مجموعه دستور العمل هایکو سیستم عامل

از نویسنده ترجمه: این سومین مقاله از مجموعه در مورد هایکو است.

فهرست مقالات: ابتدا, دوم.

منبع: www.habr.com

اضافه کردن نظر