কেন আমি NixOS এ সুইচ করলাম

বছরের পর বছর ডিস্ট্রো-হপিং আর সিস্টেম ব্রেকিংয়ের পর শেষ পর্যন্ত NixOS এ এসে আমার জার্নি থিতু হয়েছে। প্রথাগত লিনাক্স ডিস্ট্রিবিউশনগুলোতে প্যাকেজ ম্যানেজমেন্টের যে এন্ট্রপি (Entropy) থাকে, তা থেকে মুক্তি পেতেই আসলে আমার এই সুইচের সিদ্ধান্ত।

ডিক্লারেটিভ লিনাক্সের প্রতি আকর্ষণ

সবসময় এমন একটা ডিস্ট্রিবিউশন চেয়েছিলাম যেখানে পুরো সিস্টেমের কনফিগারেশন একটা কোড ফাইলে বর্ণনা করা থাকবে। প্রথাগত লিনাক্সে আমরা অসংখ্য কমান্ড রান করে সিস্টেমের স্টেট পরিবর্তন করি, যা পরবর্তীতে ট্র্যাক করা কঠিন। কিন্তু NixOS এ আপনি যদি কোনো ভুল কনফিগারেশন করে ফেলেন, মুহূর্তের মধ্যেই রিলায়েবল ভাবে আগের জেনারেশনে রোলব্যাক করতে পারবেন। এই কনফিডেন্সটাই আমাকে ফ্রিলি এক্সপেরিমেন্ট করতে সাহায্য করে।

NixOS এর কাজ করার ধরন

NixOS একদম আলাদা একটি দৃষ্টিভঙ্গি নিয়ে সিস্টেম কনফিগারেশন হ্যান্ডেল করে। আপনি এখানে সরাসরি ফাইলসিস্টেম মোডিফাই না করে বরং একটি ফাইলে সব Declare করেন। NixOS এর সাথে কাজ শুরু করলে বুঝতে পারবেন আপনার পুরো সিস্টেমটি এখন Reproducible। configuration.nix ফাইলটি যদি অন্য কোনো মেশিনে নিয়ে রিইন্সটল করেন, একদম হুবহু আগের মতো সিস্টেম পাবেন।

লার্নিং কার্ভ এবং তিক্ত অভিজ্ঞতা

মিথ্যা বলব না—NixOS এর লার্নিং কার্ভ অনেক বেশি খাড়া। আমার অভিজ্ঞতায় এর অফিসিয়াল ডকুমেন্টেশন বেশ বিভ্রান্তিকর। শুরুর দিকে বুঝতেই পারিনি wiki.nixos.org আর nixos.wiki এর মধ্যে কোনটি বেশি নির্ভরযোগ্য। গুগল সার্চে প্রায়ই ব্যাকডেটেড তথ্য চলে আসে যা নতুনদের জন্য বেশ যন্ত্রণার।

আরও একটি বিরক্তিকর বিষয় হলো এর সিনট্যাক্স। Overlays কীভাবে কাজ করে তা বুঝতে আমার বেশ কয়েক সপ্তাহ সময় লেগেছে। অফিসিয়াল গাইডগুলো মাঝেমধ্যে এমনভাবে কিছু ব্যাখ্যা করে যা বুঝতে হলে আগে থেকেই অ্যাডভান্স কনসেপ্ট জানা থাকা লাগে। শুরুর দিকে কোনো মেন্টর বা ভালো ইউটিউব ভিডিও ছাড়া এটা শেখা অসম্ভব।

তবে একবার কোর কনসেপ্টগুলো বুঝে গেলে সবকিছু পরিষ্কার মনে হবে। এখন আমার প্রোজেক্টগুলোর জন্য আইসোলেটেড Environment তৈরি করতে পারি যা অন্য কোনো ডিস্ট্রোতে এত স্মুথলি করা সম্ভব ছিল না।

NixOS কেন সবার জন্য নয়?

আপনার যদি শুধু একটি ডেস্কটপ OS দরকার হয় যা আউট-অফ-দ্য-বক্স ভালো কাজ করবে, Linux Mint বা Ubuntuই আপনার জন্য ভালো চয়েস। কিন্তু আপনি যদি একজন ডেভেলপার বা সিস্টেম অ্যাডমিনিস্ট্রেটর হন যিনি রিপিটযোগ্যতা এবং নির্ভরযোগ্যতাকে সবার উপরে রাখেন, NixOS আপনার জীবন বদলে দিতে পারে।

এখন আমার হোম ডেস্কটপ, ল্যাপটপ এবং সার্ভার সেটআপ একই Git Repository থেকে কন্ট্রোল করি। এটি আমাকে যে পরিমাণ স্বাধীনতা দিয়েছে, তা অভাবনীয়।

About the Author

Asaduzzaman Pavel

Software Engineer who actually enjoys the friction of well-architected systems. 15+ years building high-performance backends and infrastructure that handles real-world chaos at scale.

Open to new opportunities

Comments

  • Sign in with GitHub to comment
  • Keep it respectful and on-topic
  • No spam or self-promotion