সম্প্রতি, আমি নিজেই একটি মূল্যায়ন করেছি। আমি প্রকৃতপক্ষে একজন নিক্স / নিক্সস অবদানকারী, এবং স্থাপনা প্রযুক্তিতে আগ্রহী প্রাক্তন গবেষক।
আমি যথাসম্ভব সত্যের কাছে নিজেকে আটকে রাখার চেষ্টা করেছি, তবে পুরোপুরি পক্ষপাতহীন হওয়া সম্ভবত অসম্ভব। আমার অনুসন্ধানের সংক্ষিপ্তসার হিসাবে:
উভয়ই বিচ্ছিন্নভাবে প্যাকেজ সঞ্চয় করে । স্ন্যাপি দোকানে অ্যাপ্লিকেশন এবং অবকাঠামো নিম্নলিখিত নাম রীতি ব্যবহার করে ফোল্ডারে: /app/name/version.vendor
, যেহেতু তুষার ব্যবহারসমূহ /nix/store/hash-name-version
।
নিক্সের নামকরণ কনভেনশনটি আরও শক্তিশালী, কারণ এতে হ্যাশ উপসর্গ ব্যবহার করা হয় যা সমস্ত বিল্ডটাইম নির্ভরতা থেকে প্রাপ্ত । নিক্সের সাহায্যে আপনি সহজেই কোনও প্যাকেজের কোনও বৈকল্পিকের মধ্যে পার্থক্য তৈরি করতে এবং একে অপরের পাশে সংরক্ষণ করতে পারেন। যে কোনও পরিবর্তন (যেমন পৃথক বিল্ড প্রক্রিয়া, গ্রন্থাগার আপগ্রেড, সংকলক আপগ্রেড) একে অপরের পাশে যে কোনও সম্ভাব্য রূপটি সংরক্ষণের জন্য একটি নতুন হ্যাশ তৈরি করে।
একটি প্যাকেজ তার নির্ভরতা খুঁজে পেতে অনুমতি দিতে, তুষার তাদের binds স্ট্যাটিক্যালি একটি এক্সিকিউটেবল করার জন্য (পরিবর্তন করে যেমন RPATH
একটি ELF বাইনারি এর) অথবা তাদের স্ক্রিপ্ট উপযুক্ত পরিবেশের সেট (যেমন মোড়কে CLASSPATH
, PYTHONPATH
, PERL5LIB
, ইত্যাদি)।
স্ন্যাপি composes পাত্রে যেমন যা এক্সেকিউটেবল তাদের সাধারণ FHS অবস্থানে তাদের নির্ভরতা খুঁজে পেতে পারেন, /lib
এবং/bin
তবে নিক্স এছাড়াও স্নাপ্পির ধারক পদ্ধতির সমর্থন করে তবে এটি কেবল খুব বিরল ক্ষেত্রেই ব্যবহৃত হয়। কনটেইনারযুক্ত পদ্ধতির সাহায্যে সর্বাধিক বিশিষ্ট নিক্স প্যাকেজটি নিক্সস-এ স্টিম, কারণ স্টিম নিজেই বিবাদী বৈশিষ্ট্যযুক্ত একটি স্থাপনার সরঞ্জাম।
স্নাপ্পি উবুন্টু কোর বেস সিস্টেমটি আপগ্রেড (এবং রোল ব্যাক) করতে তথাকথিত "এ / বি" পার্টিশন স্কিম ব্যবহার করে। এটি কেবলমাত্র সীমিত সংখ্যক সংস্করণে (সাধারণত দুটি) সমর্থন করে।
বিপরীতে, নিক্সস (নিক্স-ভিত্তিক লিনাক্স ডিস্ট্রো) নিক্স স্টোরের নিক্স প্যাকেজগুলির বাইরে বেস সিস্টেমটিও রচনা করে এবং আরও শক্তিশালী। আপনি আগের কোনও কনফিগারেশনে ফিরে যেতে পারেন যা আবর্জনা সংগ্রহ করা হয়নি। তদুপরি, প্রজন্মের মধ্যে একই সিস্টেম প্যাকেজ ভাগ করা যায়।
উভয় সরঞ্জামই অনিবদ্ধ ব্যবহারকারী ইনস্টলেশনগুলিকে সমর্থন করে । তবে, স্নেপ্পি সমস্ত ফাইল ব্যবহারকারীর হোম ডিরেক্টরিতে সঞ্চয় করে। যদি দুটি ব্যবহারকারী একই প্যাকেজটি ইনস্টল করতে ঘটে তবে তারা সিস্টেমে দু'বার ইনস্টল করা হয়।
বিপরীতে, নিক্স প্যাকেজগুলি সাধারণ ব্যবহারকারীদের কেন্দ্রীয় নিক্স স্টোরে প্যাকেজ ইনস্টল করার অনুমতি দেয় যাতে ব্যবহারকারীদের মধ্যে অভিন্ন প্যাকেজগুলি ভাগ করা যায় । আংশিকভাবে নামকরণের কনভেনশনের কারণে (হ্যাশিং ব্যবহার করে) এটি নিরাপদ উপায়ে করা যেতে পারে।
স্নিপ্পি বাক্সের বাইরে প্যাকেজগুলির রানটাইম আচরণকে সীমাবদ্ধ করে যেখানে নিক্স নেই
স্ন্যাপি সাহায্য ব্যবহারকারীদের বলে মনে হচ্ছে না গঠন করা সোর্স কোড থেকে প্যাকেজ। নিক্সের কাছে একটি ডিএসএল রয়েছে যাতে লোকেরা এটি সহজেই করতে পারে এবং প্রয়োজনের সময় সমস্ত বিল্ডটাইম নির্ভরতা (সংকলক, বিল্ড সরঞ্জাম, লাইব্রেরি ইত্যাদি) স্বয়ংক্রিয়ভাবে ইনস্টল করতে পারে people
স্ন্যাপি কমই modularization এবং সমর্থন পুনঃব্যবহারের । উদাহরণস্বরূপ প্যাকেজগুলিতে সমস্ত লাইব্রেরি নির্ভরতা স্ট্যান্ডিক্যালি অনেক বেশি ডিস্কস্পেস এবং র্যাম গ্রহণ করে bu তদুপরি, ডকুমেন্টেশন ফ্রেমওয়ার্ক ছাড়াও কোনও সুবিধা সরবরাহ করে বলে মনে হয় না। তবে ফ্রেমওয়ার্কগুলি ডকুমেন্টেশন অনুসারে পুনঃব্যবহারের জন্য নয়
নিক্সকে প্যাকেজগুলিকে মডুলারাইজ করা এবং নিরাপদে নির্ভরতা পরিচালনা করা এর কয়েকটি মূল বৈশিষ্ট্য।
আশা করি আপনি এটি পড়তে আগ্রহী এবং সম্ভবত এটিতে এমন কিছু জিনিস রয়েছে যা আপনি ভাবার পক্ষে উপযুক্ত মনে করেন।