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

Nixtastic, Nix flakes ব্যবহার করে Meshtastic ডেভেলপমেন্টের জন্য একটি ইউনিফাইড ওয়ার্কস্পেস স্থাপন করে। এটি একটি একক ডিরেক্টরি স্ট্রাকচার তৈরি করে যা একাধিক Meshtastic রিপোজিটরি (firmware, android, apple ইত্যাদি) ধারণ করে এবং প্রতিটি রিপোজিটরির জন্য নির্দিষ্ট ডেভেলপমেন্ট এনভায়রনমেন্ট প্রদান করে। এই টুলটি স্বয়ংক্রিয়ভাবে প্রতিটি রিপোজিটরির জন্য প্রয়োজনীয় ডিপেন্ডেন্সি—যার মধ্যে JDKs, Android SDK, PlatformIO, buf এবং Node অন্তর্ভুক্ত—সহ dev shells কনফিগার করে, যা ম্যানুয়াল সেটআপের ঝামেলা দূর করে। এর মূল সক্ষমতাগুলোর মধ্যে রয়েছে: - রিপোজিটরি সিনক্রোনাইজেশন: সমস্ত রিপোজিটরির মধ্যে ড্রिफ्ट খুঁজে বের করে এবং রিপোর্ট করে, সাথে নিরাপদ fast-forward pulling সুবিধা প্রদান করে - কনটেক্সট-অ্যাওয়ার ডেভেলপমেন্ট শেল: কোনো রিপোজিটরি ডিরেক্টরিতে প্রবেশ করার সময় স্বয়ংক্রিয়ভাবে সঠিক টুলচেইন সক্রিয় করে - Worktree ম্যানেজমেন্ট: সমসাময়িক ডেভেলপমেন্ট কাজের জন্য সঠিক টুলিং সহ আইসোলেটেড ব্রাঞ্চ তৈরি করে - Android SDK বুটস্ট্র্যাপিং: নির্দিষ্ট Android SDK প্যাকেজ ইনস্টল এবং পিন করে - ওয়ার্কস্পেস ডায়াগনস্টিকস: 'doctor' কমান্ডের মাধ্যমে সঠিক কনফিগারেশন যাচাই করে - ডেভেলপমেন্ট টুলসের সাথে ইন্টিগ্রেশন: কোড ইন্টেলিজেন্স এবং MCP সাপোর্টের জন্য জেনারেটেড ফাইল প্রদান করে এই সিস্টেমটি স্বয়ংক্রিয় শেল অ্যাক্টিভেশনের জন্য direnv ব্যবহার করে এবং Linux বা Apple Silicon সিস্টেমে flakes সহ Nix প্রয়োজন। এতে বিভিন্ন ধরণের রিপোজিটরির জন্য বিশেষায়িত শেল অন্তর্ভুক্ত রয়েছে এবং সাধারণ অপারেশনগুলোর জন্য একটি justfile-এর মাধ্যমে কমান্ড প্রদান করে। ওয়ার্কস্পেস সেটআপের জন্য MESHTASTIC_WORKSPACE সংজ্ঞায়িত করা, Nix ইনস্টল করা, রিপোজিটরি ক্লোন করা, direnv কনফিগার করা এবং প্রাথমিক সিনক্রোনাইজেশন চালানো প্রয়োজন।