পিক্সেল কার্নেল তৈরি করুন

এই নির্দেশিকাটি ডেভেলপমেন্টের জন্য একটি কাস্টম পিক্সেল কার্নেল ডাউনলোড, কম্পাইল এবং ফ্ল্যাশ করার ধাপে ধাপে নির্দেশাবলী প্রদান করে। GKI-এর কারণে, এখন অ্যান্ড্রয়েড প্ল্যাটফর্ম বিল্ডের উপর নির্ভর করে কার্নেলটি স্বাধীনভাবে আপডেট করা সম্ভব। এই পদক্ষেপগুলি শুধুমাত্র Pixel 6 এবং পরবর্তী ডিভাইসের জন্য প্রযোজ্য। কারণ Pixel 5 এবং পূর্ববর্তী ডিভাইসগুলির জন্য vendor পার্টিশনে কার্নেল মডিউলগুলি আপডেট করা প্রয়োজন, যা সেই ডিভাইসগুলির জন্য অ্যান্ড্রয়েড প্ল্যাটফর্ম বিল্ডের উপর নির্ভরশীল। GKI সমর্থিত পিক্সেল কার্নেল শাখা টেবিলে প্রতিটি GKI সমর্থিত পিক্সেল ডিভাইসের জন্য কার্নেল রিপোজিটরি ম্যানিফেস্ট শাখা অন্তর্ভুক্ত রয়েছে। Pixel 5 এবং পূর্ববর্তী কার্নেল ম্যানিফেস্ট শাখার জন্য লিগ্যাসি পিক্সেল কার্নেল বিভাগটি দেখুন।

GKI সমর্থিত পিক্সেল কার্নেল শাখা
যন্ত্র সংগ্রহস্থল শাখা GKI কার্নেল
পিক্সেল ৯এ (টেগু) অ্যান্ড্রয়েড-জিএস-টেগু-6.1-অ্যান্ড্রয়েড16 অ্যান্ড্রয়েড 14-6.1
পিক্সেল ৯ প্রো ফোল্ড (ধূমকেতু) অ্যান্ড্রয়েড-জিএস-ধূমকেতু-6.1-অ্যান্ড্রয়েড16 অ্যান্ড্রয়েড 14-6.1
পিক্সেল ৯ (টোকে)
পিক্সেল ৯ প্রো (কেম্যান)
পিক্সেল ৯ প্রো এক্সএল (কোমোডো)
android-gs-caimito-6.1-android16 অ্যান্ড্রয়েড 14-6.1
পিক্সেল ৮এ (আকিতা) অ্যান্ড্রয়েড-জিএস-আকিতা-6.1-অ্যান্ড্রয়েড16 অ্যান্ড্রয়েড 14-6.1
পিক্সেল ৮ (শিবা)
পিক্সেল ৮ প্রো (হাস্কি)
অ্যান্ড্রয়েড-জিএস-শাস্কি-6.1-অ্যান্ড্রয়েড16 অ্যান্ড্রয়েড 14-6.1
পিক্সেল ফোল্ড (ফেলিক্স) অ্যান্ড্রয়েড-জিএস-ফেলিক্স-6.1-অ্যান্ড্রয়েড16 অ্যান্ড্রয়েড 14-6.1
পিক্সেল ট্যাবলেট (ট্যাঙ্গরপ্রো) অ্যান্ড্রয়েড-জিএস-ট্যাঙ্গরপ্রো-6.1-অ্যান্ড্রয়েড16 অ্যান্ড্রয়েড 14-6.1
পিক্সেল ৭এ (লিংক্স) অ্যান্ড্রয়েড-জিএস-লিঙ্কস-6.1-অ্যান্ড্রয়েড16 অ্যান্ড্রয়েড 14-6.1
পিক্সেল ৭ (প্যান্থার)
পিক্সেল ৭ প্রো (চিতা)
android-gs-pantah-6.1-android16 অ্যান্ড্রয়েড 14-6.1
পিক্সেল ৬এ (ব্লুজে) অ্যান্ড্রয়েড-জিএস-ব্লুজে-6.1-অ্যান্ড্রয়েড16 অ্যান্ড্রয়েড 14-6.1
পিক্সেল ৬ (অরিওল)
পিক্সেল ৬ প্রো (রেভেন)
android-gs-raviole-6.1-android16 অ্যান্ড্রয়েড 14-6.1

ফ্যাক্টরি সমর্থিত কার্নেলগুলি ছাড়াও, Pixel 6 এবং 6 Pro ডিভাইসগুলি শুধুমাত্র সমর্থিত Pixel 6/6 Pro অ্যান্ড্রয়েড প্ল্যাটফর্ম এবং কার্নেল কম্বিনেশন টেবিলে অন্তর্ভুক্ত অ্যান্ড্রয়েড কমন কার্নেল শাখাগুলিতে GKI ডেভেলপমেন্টের উদ্দেশ্যে সমর্থিত। অ্যান্ড্রয়েড প্ল্যাটফর্ম HAL এবং পিক্সেল কার্নেল ড্রাইভারের মধ্যে বিক্রেতা UAPI পার্থক্যের কারণে, টেবিলটি সমর্থিত বিল্ড কম্বিনেশনগুলি সরবরাহ করে।

সমর্থিত Pixel 6/6 Pro অ্যান্ড্রয়েড প্ল্যাটফর্ম এবং কার্নেল সমন্বয়
পিক্সেল কার্নেল ম্যানিফেস্ট শাখা জিকেআই শাখা অ্যান্ড্রয়েড প্ল্যাটফর্ম বিল্ড
gs-android-gs-raviole-mainline অ্যান্ড্রয়েড-মেইনলাইন অ্যান্ড্রয়েড-সর্বশেষ-রিলিজ
gs-android16-6.12-gs101 সম্পর্কে অ্যান্ড্রয়েড১৬-৬.১২ অ্যান্ড্রয়েড-সর্বশেষ-রিলিজ
gs-android13-gs-raviole-5.15 সম্পর্কে অ্যান্ড্রয়েড 13-5.15 TQ1A.230205.002 (9471150)

আপনার Pixel ডিভাইসটি প্রস্তুত করুন

নিম্নলিখিত ফ্লো চার্টটি Pixel 6 এবং পরবর্তী ডিভাইসগুলিতে কার্নেল আপডেট করার প্রক্রিয়া বর্ণনা করে:

**চিত্র ১.** কার্নেল আপডেট ফ্লো চার্ট

flash.android.com ব্যবহার করে ডিভাইসটি ফ্ল্যাশ করুন

  1. flash.android.com- এ নেভিগেট করুন।
  2. সমর্থিত অ্যান্ড্রয়েড প্ল্যাটফর্ম এবং কার্নেল সংমিশ্রণের উপর ভিত্তি করে অ্যান্ড্রয়েড বিল্ডটি বেছে নিন।
    • android-latest-release এর জন্য, "ব্যাক টু পাবলিক", ক্যানারি, অথবা বিটা নির্বাচন করুন।
  3. নিম্নলিখিত বিকল্পগুলি নির্বাচন করুন:
    • ডিভাইসটি মুছুন
    • সকল পার্টিশন জোর করে ফ্ল্যাশ করুন
    • যাচাইকরণ অক্ষম করুন
  4. ডিভাইসটি ফ্ল্যাশ করতে ইনস্টল বিল্ড বোতাম টিপুন।

**চিত্র ২.** ফ্ল্যাশ স্টেশনের উদাহরণ

কার্নেলটি ডাউনলোড এবং কম্পাইল করুন

কার্নেল সংগ্রহস্থল সিঙ্ক করুন

কার্নেল সোর্স কোড ডাউনলোড করতে নিম্নলিখিত কমান্ডগুলি চালান। Pixel KERNEL_MANIFEST_BRANCH এর জন্য সমর্থিত Pixel 6/6 Pro অ্যান্ড্রয়েড প্ল্যাটফর্ম এবং কার্নেল কম্বিনেশন টেবিলটি দেখুন।

repo init -u https://android.googlesource.com/kernel/manifest -b KERNEL_MANIFEST_BRANCH
repo sync -c --no-tags

বিক্রেতার ramdisk আপডেট করুন

ডিভাইসে ফ্ল্যাশ করা অ্যান্ড্রয়েড প্ল্যাটফর্ম বিল্ডের সাথে মিল রেখে কার্নেল রিপোজিটরিতে vendor_ramdisk- DEVICE .img ফাইলটি আপডেট করুন। vendor_ramdisk- DEVICE .img ফাইলটি আপডেট করার জন্য কয়েকটি বিকল্প রয়েছে। আপনি যদি Android 15 QPR2 (BP11.241025.006) বা তার পরবর্তী সংস্করণ ব্যবহার করেন তবে বিকল্প (1) ব্যবহার করুন। অন্যথায়, বিকল্প (2) ব্যবহার করুন।

  • বিকল্প ১) vendor_boot পার্টিশনের শুধুমাত্র DTB এবং DLKM ramdisk বিট আপডেট করুন

    ফাস্টবুট সংস্করণ ৩৫.০.২-১২৫৮৩১৮৩ দিয়ে শুরু করে, আপনি সরাসরি vendor_boot পার্টিশনে DTB এবং DLKM ramdisk ফ্ল্যাশ করতে পারেন। v35.0.2-12583183 আর্টিফ্যাক্ট থেকে sdk-repo- HOST_OS -platform-tools-12583183.zip ডাউনলোড করে আপনার হোস্ট মেশিনের পরিবেশে ব্যবহারের জন্য এক্সট্র্যাক্ট করুন।

    কার্নেল ইমেজ ফ্ল্যাশ করার সময় DTB এবং vendor_boot:dlkm ফ্ল্যাশ করার জন্য নির্দেশাবলী অনুসরণ করুন।

  • বিকল্প ২) পিক্সেল ফ্যাক্টরি ইমেজ থেকে ভেন্ডর র‍্যামডিস্ক ইমেজটি বের করুন।

    1. https://developers.google.com/android/images থেকে আপনার ডিভাইসের জন্য সমর্থিত কারখানার চিত্রটি ডাউনলোড করুন।

    2. vendor_boot.img এক্সট্র্যাক্ট করুন:

      নিম্নলিখিত কমান্ডগুলি উদাহরণ হিসেবে Pixel 6 Pro AP1A.240505.004 ব্যবহার করে। জিপ ফাইলের নামটি আপনার ডাউনলোড করা ফ্যাক্টরি ছবির ফাইলের নাম দিয়ে প্রতিস্থাপন করুন।

        unzip raven-ap1a.240505.004-factory-9d783215.zip
      
        cd raven-ap1a.240505.004
      
        unzip image-raven-ap1a.240505.004.zip vendor_boot.img
      
    3. ভেন্ডর র‍্যামডিস্ক পেতে vendor_boot.img আনপ্যাক করুন।

        KERNEL_REPO_ROOT/tools/mkbootimg/unpack_bootimg.py --boot_img vendor_boot.img \
            --out vendor_boot_out
      
    4. এক্সট্রাক্ট করা vendor-ramdisk-by-name/ramdisk_ ফাইলটি Pixel কার্নেল রিপোজিটরিতে কপি করুন।

      যন্ত্র DEVICE_RAMDISK_PATH
      পিক্সেল ৬ (অরিওল)
      পিক্সেল ৬ প্রো (রেভেন)
      প্রি-বিল্ট/বুট-আর্টিফ্যাক্ট/র‍্যামডিস্ক/ভেন্ডর_র‍্যামডিস্ক- oriole.img
      পিক্সেল ৬এ (ব্লুজে) ব্যক্তিগত/ডিভাইস/গুগল/ব্লুজে/ভেন্ডর_রামডিস্ক- ব্লুজে.আইএমজি
        cp vendor_boot_out/vendor-ramdisk-by-name/ramdisk_ \
            KERNEL_REPO_ROOT/DEVICE_RAMDISK_PATH
      

কার্নেলটি কম্পাইল করুন (ক্লেফ)

অ্যান্ড্রয়েড ১৩-তে, build.sh স্ক্রিপ্টটি Kleaf নামে একটি নতুন কার্নেল বিল্ড সিস্টেম দিয়ে প্রতিস্থাপিত হয়েছিল। android13-5.15 এবং তার পরবর্তী সংস্করণ ব্যবহারকারী ডিভাইসগুলির জন্য, কার্নেলটি Kleaf ব্যবহার করে তৈরি করা উচিত।

সুবিধার জন্য, আপনি KERNEL_REPO_ROOT এ পাওয়া build_ DEVICE .sh স্ক্রিপ্টটি চালাতে পারেন। বেশিরভাগ ক্ষেত্রে, DEVICE কোড নাম হতে হবে, যা একটি ডিভাইসের কোড নাম হতে পারে, যেমন "akita" (Pixel 8a), অথবা একটি কোড নাম যা একটি কার্নেল ভাগ করে এমন সম্পর্কিত ডিভাইসের একটি গ্রুপকে প্রতিনিধিত্ব করে, যেমন "caimito" যার অর্থ Pixel 9 (tokay), Pixel 9 Pro (caiman), এবং Pixel 9 Pro XL (komodo)। android14 এবং পূর্ববর্তী রিলিজের জন্য, Pixel 6 এবং Pixel 6 Pro এর জন্য build_slider.sh এবং Pixel 7 এবং Pixel 7 Pro এর জন্য build_cloudripper.sh ব্যবহার করুন।

উদাহরণস্বরূপ, android-gs-raviole-5.10-android14 শাখায় Pixel 6 এর কার্নেল তৈরি করতে, আপনাকে নিম্নলিখিত কমান্ডটি চালাতে হবে:

build_slider.sh

প্রোডাকশন কার্নেল শাখাগুলিতে ডিফল্টরূপে, build_ DEVICE .sh স্ক্রিপ্টগুলি বিল্ড প্রক্রিয়াটি দ্রুত করার জন্য পূর্বনির্মিত GKI কার্নেল ব্যবহার করে। আপনি যদি কোর কার্নেলটি পরিবর্তন করতে চান, তাহলে স্থানীয় উৎস থেকে কার্নেল তৈরি করার জন্য পরিবেশ পরিবর্তনশীল BUILD_AOSP_KERNEL=1 সেট করুন। ডেভেলপমেন্ট কার্নেল শাখাগুলি ডিফল্টরূপে সরাসরি কার্নেল উৎস তৈরি করে।

কার্নেল বিল্ড সিস্টেম এবং বিল্ডটি কীভাবে কাস্টমাইজ করবেন সে সম্পর্কে আরও তথ্যের জন্য, Kleaf - Bazel দিয়ে অ্যান্ড্রয়েড কার্নেল তৈরি করা দেখুন।

কার্নেলের ছবিগুলি ফ্ল্যাশ করুন

দ্রষ্টব্য: যদি আপনি যাচাইকরণ অক্ষম না করে থাকেন, তাহলে কাস্টম কার্নেল ফ্ল্যাশ করার আগে আপনাকে এটি করতে হবে। এটি করার জন্য এখানে কমান্ডটি দেওয়া হল:
fastboot oem disable-verification
সতর্কতা: যদি আপনি কোনও প্ল্যাটফর্ম বিল্ডের উপরে একটি কাস্টম কার্নেল ফ্ল্যাশ করেন, তাহলে নতুন কার্নেলের সাথে সম্পর্কিত কোনও সুরক্ষা প্যাচ স্তর (SPL) ডাউনগ্রেড থাকলে আপনার ডিভাইসটি মুছে ফেলার প্রয়োজন হতে পারে। এই প্রক্রিয়াটি আপনার সমস্ত ব্যক্তিগত ডেটা মুছে ফেলবে। মুছে ফেলার আগে আপনার ডেটা ব্যাকআপ নিতে ভুলবেন না।
fastboot -w

কার্নেল ইমেজ ফ্ল্যাশ করার জন্য, আপনার ডিভাইসের তালিকাভুক্ত প্রতিটি কার্নেল পার্টিশনের জন্য fastboot flash কমান্ডটি চালান। ডায়নামিক পার্টিশনের জন্য, ফ্ল্যাশ করার আগে আপনাকে fastbootd মোডে রিবুট করতে হবে।

যন্ত্র কার্নেল পার্টিশন
পিক্সেল ৬ (অরিওল)
পিক্সেল ৬ প্রো (রেভেন)
পিক্সেল ৬এ (ব্লুজে)
বুট
ডিটিবিও
বিক্রেতা_বুট অথবা বিক্রেতা_বুট:dlkm
বিক্রেতা_ডিএলকেএম (গতিশীল পার্টিশন)
পিক্সেল ৯ (টেগু)
পিক্সেল ৯ প্রো ফোল্ড (ধূমকেতু)
পিক্সেল ৯ (টোকে)
পিক্সেল ৯ প্রো (কেম্যান)
পিক্সেল ৯ প্রো এক্সএল (কোমোডো)
পিক্সেল ৮ (শিবা)
পিক্সেল ৮ প্রো (হাস্কি)
পিক্সেল ফোল্ড (ফেলিক্স)
পিক্সেল ট্যাবলেট (ট্যাঙ্গরপ্রো)
পিক্সেল ৭এ (লিংক্স)
পিক্সেল ৭ (প্যান্থার)
পিক্সেল ৭ প্রো (চিতা)
বুট
ডিটিবিও
বিক্রেতা_কার্নেল_বুট
বিক্রেতা_ডিএলকেএম (গতিশীল পার্টিশন)
system_dlkm (গতিশীল পার্টিশন)

android-mainline Pixel 6 এর জন্য ফ্ল্যাশিং কমান্ডগুলি এখানে দেওয়া হল:

fastboot flash boot        out/slider/dist/boot.img
fastboot flash dtbo        out/slider/dist/dtbo.img
fastboot flash  --dtb out/slider/dist/dtb.img vendor_boot:dlkm out/slider/dist/initramfs.img
fastboot reboot fastboot
fastboot flash vendor_dlkm out/slider/dist/vendor_dlkm.img

Pixel 6/6 Pro/6a এর জন্য, যদি আপনি "Update the vendor ramdisk" বিভাগে vendor_ramdisk আপডেট করে থাকেন, তাহলে vendor_boot পার্টিশন আপডেট করতে নিম্নলিখিত কমান্ডটি ব্যবহার করুন:

fastboot flash vendor_boot out/slider/dist/vendor_boot.img

কার্নেল চিত্রগুলি DIST_DIR এ পাওয়া যাবে।

কার্নেল শাখা DIST_DIR
v5.10 সম্পর্কে out/mixed/dist
সংস্করণ ৫.১৫ এবং পরবর্তী out/ DEVICE /dist
দ্রষ্টব্য: যদি আপনার একটি সিরিয়াল ডঙ্গল থাকে এবং আপনি সিরিয়াল লগ সক্রিয় করতে চান, তাহলে কমান্ডটি হল:
fastboot oem uart enable
fastboot oem uart config 3000000
হোস্ট থেকে সংযোগ করার জন্য উদাহরণ কমান্ড:
screen -fn /dev/ttyUSB* 3000000

কারখানার ছবি পুনরুদ্ধার করুন

আপনার ডিভাইসটিকে ফ্যাক্টরি ইমেজে ফিরিয়ে আনতে, আপনি flash.android.com ব্যবহার করতে পারেন।

লিগ্যাসি পিক্সেল কার্নেল

রেফারেন্স হিসেবে, লিগ্যাসি পিক্সেল কার্নেল ব্রাঞ্চ টেবিলে পিক্সেল ৫ এবং তার আগের ডিভাইসগুলির জন্য কার্নেল রিপোজিটরি ব্রাঞ্চগুলি প্রদান করা হয়েছে। এগুলি নন-জিকেআই সমর্থিত ডিভাইস।

লিগ্যাসি পিক্সেল কার্নেল শাখা
যন্ত্র AOSP ট্রিতে বাইনারি পাথ সংগ্রহস্থল শাখা
পিক্সেল ৫এ (বারবেট)
পিক্সেল ৪এ (৫জি) (ব্র্যাম্বল)
পিক্সেল ৫ (রেডফিন)
ডিভাইস/গুগল/রেডবুল-কার্নেল অ্যান্ড্রয়েড-এমএসএম-রেডবুল-৪.১৯-অ্যান্ড্রয়েড১৪-কিউপিআর৩
পিক্সেল ৪এ (সানফিশ) ডিভাইস/গুগল/সানফিশ-কার্নেল অ্যান্ড্রয়েড-এমএসএম-সানফিশ-৪.১৪-অ্যান্ড্রয়েড১৩-কিউপিআর৩
পিক্সেল ৪ (শিখা)
পিক্সেল ৪ এক্সএল (কোরাল)
ডিভাইস/গুগল/কোরাল-কার্নেল অ্যান্ড্রয়েড-এমএসএম-কোরাল-৪.১৪-অ্যান্ড্রয়েড১৩
পিক্সেল ৩এ (সারগো)
পিক্সেল ৩এ এক্সএল (ভালো)
ডিভাইস/গুগল/বোনিটো-কার্নেল অ্যান্ড্রয়েড-এমএসএম-বোনিটো-৪.৯-অ্যান্ড্রয়েড১২এল
পিক্সেল ৩ (ব্লুলাইন)
পিক্সেল ৩ এক্সএল (ক্রসহ্যাচ)
ডিভাইস/গুগল/ক্রসহ্যাচ-কার্নেল অ্যান্ড্রয়েড-এমএসএম-ক্রসহ্যাচ-৪.৯-অ্যান্ড্রয়েড১২
পিক্সেল ২ (ওয়ালআই)
পিক্সেল ২ এক্সএল (সময়মত)
ডিভাইস/গুগল/ওয়াহু-কার্নেল অ্যান্ড্রয়েড-এমএসএম-ওয়াহু-৪.৪-অ্যান্ড্রয়েড১০-কিউপিআর৩
পিক্সেল (সেইলফিশ)
পিক্সেল এক্সএল (মার্লিন)
ডিভাইস/গুগল/মার্লিন-কার্নেল অ্যান্ড্রয়েড-এমএসএম-মার্লিন-৩.১৮-পাই-কিউপিআর২