প্রকল্প সম্পর্কে

Cider হল Linux-এ macOS অ্যাপ্লিকেশনের জন্য একটি রানটাইম পরিবেশ, যা Darling থেকে ফর্ক করা এবং GPLv3 বা পরবর্তী সংস্করণের অধীনে লাইসেন্সকৃত। এটি নিজস্ব dyld, libSystem এবং কার্নেল-এমুলেশন স্তরের মাধ্যমে সরাসরি Linux কার্নেলে Mach-O বাইনারি চালায়, কোনো ভার্চুয়াল মেশিন বা Apple কার্নেল ছাড়াই। প্রকল্পটি প্রাথমিক অবস্থায় রয়েছে: কমান্ড-লাইন সফটওয়্যার কাজ করে, কিন্তু বেশিরভাগ GUI অ্যাপ্লিকেশন কাজ করে না। রিপোজিটরিতে স্বয়ংক্রিয় পরীক্ষাগুলো একটি শেল, launchd-এর মাধ্যমে বুটিং, কন্টেইনারের ভেতরে Nix চালানো, JavaScriptCore, libdispatch, Security, CoreAudio, স্ক্রিপ্টিং ব্রিজ, Wayland-এ একটি সাধারণ AppKit উইন্ডো এবং একটি গেস্ট বাইনারি Wayland কম্পোজিটরে পৌঁছানো যাচাই করে। GUI ব্যাকএন্ড শুধুমাত্র Wayland; কোনো X11 বা DISPLAY ফলব্যাক নেই। LibreOffice-কে রেন্ডারিং, কিবোর্ড ও মাউস ইনপুট গ্রহণ, রিসাইজ, মেনু ও ফাইল ডায়ালগ খোলা এবং ছবি ঢোকানোসহ নথিভুক্ত করা হয়েছে, যদিও এটি স্বয়ংক্রিয় পরীক্ষার পরিবর্তে ম্যানুয়ালি চালানো হয়। Cider Nix এবং Buck2 দিয়ে বিল্ড হয়। Nix-ই একমাত্র সমর্থিত প্যাকেজিং পদ্ধতি; কোনো ডিস্ট্রিবিউশন প্যাকেজ বা টারবল নেই। সম্পূর্ণ বিল্ড বড়, এবং GUI ফ্রেমওয়ার্ক, প্রাইভেট ফ্রেমওয়ার্ক ও স্ক্রিপ্টিং ভাষা বাদ দিয়ে একটি মিনিমাল বিল্ড পাওয়া যায়। NixOS-এ একটি মডিউলের মাধ্যমে বা অন্যত্র nix profile install কমান্ডের মাধ্যমে ইনস্টলেশন সমর্থিত। Cider CIDERPREFIX ব্যবহার করে, যা WINEPREFIX-এর মতো: macOS-আকৃতির ফাইলসিস্টেমসহ ভার্চুয়াল chroot-সদৃশ পরিবেশ যেখানে সফটওয়্যার নিরাপদে ইনস্টল করা যায়। ডিফল্ট প্রিফিক্স হল ~/.cider, যা CIDERPREFIX এনভায়রনমেন্ট ভেরিয়েবলের মাধ্যমে কনফিগারযোগ্য। প্রিফিক্সগুলো overlayfs-এর উপর নির্ভর করে এবং তাই NFS বা eCryptfs-এ থাকতে পারে না, এবং ডিফল্ট অবস্থান এনক্রিপ্টেড হোম ডিরেক্টরির সাথে কাজ করবে না। রিপোজিটরিটি গেস্ট-সাইড Darwin সোর্স, হোস্ট-সাইড Linux সোর্স, Buck2 রুল ও টুলচেইন, ভেন্ডর করা আপস্ট্রিম কম্পোনেন্ট, Nix প্যাকেজিং এবং nushell-ভিত্তিক ডেভেলপার স্ক্রিপ্টে সংগঠিত। টুলচেইন পাওয়ার পর সরাসরি Buck2 চালিয়ে Nix ছাড়াই ডেভেলপমেন্ট করা যায়, যা একটি ফাইল সম্পাদনার পর দ্রুত রিবিল্ড সক্ষম করে।