ডেভেলপার অথবা ডিভাইস ভেন্ডার হিসেবে,আপনাকে অ্যাপসটি কাস্টমাইজ করতে চাইবেন যা একটি Firefox OS ডিভাইসের উপরে বিভিন্ন কারণে প্রথম বার কাজ করে।এই অনুচ্ছেদ এটা করার বিভিন্ন প্রক্রিয়ার উপরে আলোচনা করে।
গায়ার ভিতরে অ্যাপ লোকেশন
অ্যাপস Firefox OS এর উপর কাজ করে সেগুলো গায়া সোর্স ট্রী এর ভিতরে থাকে,দুটা লোকেশনের মাঝে একটিঃ
- gaia/apps/:এটা সেখানে যেখানে ডিফল্ট সিস্টেম অ্যাপস পাওয়া যায়,যেমন দিন পঞ্জিকা,ই-মেইল,সেটিংস ইত্যাদি।
- gaia/dev-apps:এটা সেখানে যেখানে অন্য অ্যাপস পাওয়া যায়,যেমন ঐগুলো কাস্টমাইজেশন প্রক্রিয়ায় যোগ হয়।
যদি আপনি আপনার গায়া/B2G নির্মাণে এসব অ্যাপস বাদ দিতে /যোগ করতে চান,আপনি নিচে দেখানো বেশ কিছু পথে এটি করতে পারেন।
Brute force কাস্টমাইজেশন প্রক্রিয়া
"brute force"প্রক্রিয়া হল সাধারনভাবে অ্যাপস মুছে ফেলা যা আপনি গঠনের সময় উপস্থিত রাখতে চান,গঠনের পু্বে।
এডিটিং কনফিগ লিস্টস
সবচেয়ে বিশুদ্ধ প্রক্রিয়া হল apps-*.list
ফাইল এডিট করাf (খুজেন বিভিন্ন নির্দেশনামুলক ডিভাইসে খুজেন gaia/build/config/, যেমন phone/
এবং tablet/ এর ভিতরে
) গঠনের সময় আপনি অ্যাপস এর পথ যোগ করে চান। উদাহরন হিসেবে, gaia/build/config/phone/apps-production.list দেখতে কিছুটা এর মতঃ
apps/bluetooth apps/bookmark apps/browser apps/calendar apps/callscreen etc.
নোট করুন যে আপনি আরো সরাসরি ভাবে সকল অ্যাপস নির্দিষ্ট করতে পারেন,এর মতঃ
apps/*
প্রক্রিয়া পছন্দের জন্য যা apps-*.list
ফাইল ব্যবহার করে যা সহজেপ্রাপ্ত gaia/Makefile এর ভিতরে গঠনের সময় অ্যাপস নির্দিষ্ট করে,এবং এর মত কিছু দেখায়ঃ
GAIA_DEVICE_TYPE?=phone ... GAIA_APP_TARGET?=engineering ... ifeq ($(MAKECMDGOALS), demo) GAIA_DOMAIN=thisdomaindoesnotexist.org GAIA_APP_TARGET=demo else ifeq ($(MAKECMDGOALS), dogfood) DOGFOOD=1 else ifeq ($(MAKECMDGOALS), production) PRODUCTION=1 endif ... ifeq ($(PRODUCTION), 1) GAIA_OPTIMIZE=1 GAIA_APP_TARGET=production endif ifeq ($(DOGFOOD), 1) GAIA_APP_TARGET=dogfood endif ... ifndef GAIA_APP_CONFIG GAIA_APP_CONFIG=build$(SEP)config$(SEP)apps-$(GAIA_APP_TARGET).list endif
প্রাথমিকভাবে , GAIA_APP_TARGET
পরিবর্তন সেট হয় engineering
তে এবং GAIA_DEVICE_TYPE
পরিবর্তন সেট হয় phone তে
,সোর্স থেকে ডিফল্ট গায়া গঠনে gaia/config/phone/app-engineering.list ব্যবহার করবে(যা সকল টেস্ট,ডেমোস,ইত্যাদি যোগ করে)
বিভিন্ন অ্যাপস লিস্টের ব্যবহার নির্দেশনা দিতে আপনি নির্দিষ্ট করেন বিভিন্ন অপশন যখন make
কমান্ড চলমান থাকে . gaia/build/config/phone/apps-production.list গঠনের সাথে উদাহরণ হিসেবে,আপনি ব্যবহার করবেন
PRODUCTION=1 গঠন
যদি আপনি বিশেষভাবে DEMO=1
গঠনের সাথে নির্দেশনা দেন তখন ইহা apps-demo.list.ব্যবহার করবে।আপনি বিশেষভাবে DOGFOOD=1
গঠনের সাথে নির্দিষ্ট করেন,তখন ইহা apps-dogfood.list ব্যবহার করবে।
GAIA_APP_CONFIG
ইডিটিং দ্বারা gaia/Makefile এ আপনি সম্পুর্ন ভাবে সিদ্ধান্ত নিতে পারেন এবং আপনার নিজের apps-*.list
ফাইল প্রদান করেন ।
gaia/Android.mk বহন করে এইসব লাইন গুলোঃ
ifneq ($(filter user userdebug, $(TARGET_BUILD_VARIANT)),) GAIA_MAKE_FLAGS += PRODUCTION=1 B2G_SYSTEM_APPS := 1 endif
যখন আপনি গঠন করবেন,যদি VARIANT=user
অথবা VARIANT=userdebug
সেট হয় (এইগুলো TARGET_BUILD_VARIANT
এ পরিবর্তনে প্রতিসৃত হয়ে থাকে), PRODUCTION=1
হল সয়ংক্রিয়ভাবে সেট যখন গায়া গঠন ।
নোটঃ খুজে বের করুন যা তৈরি করে অন্য অপশন যা আমাদের make options reference এ সহজে প্রাপ্ত।
বাজার কাস্টমাইজেশনের ব্যবহার
তৃতীয়,এবংসবচেয়ে পুনরায় বিশুদ্ধ(কিন্তু সবচেয়ে জটিল) উপায় হল কাস্টমাইজেশন ব্যবহার করা।এগুলো আপনাকে ব্যতিচারের সময় গঠনের কাস্টমাইজেশন প্রক্রিয়া নির্দেশ করে থাকে,গায়া কোর রিপু পরিবর্তন ছাড়া। আপনি আপনার নিজের দূরের নির্দেশনায় কাস্টমাইজেশন যোগ করতে পারেন,অথবা ব্যবহার করেন পুর্বে বিদ্যমান নির্দেশনা যা সোর্স থেকে আসে।
উদাহরন হিসেবে,GAIA_DISTRIBUTION_DIR
পরিবেশের পরিবর্তনের সাথে কাস্টমাইজেশনের স্থান নির্দেশ করা,এর মতঃ
GAIA_DISTRIBUTION_DIR=<DISTRIBUTION_PATH> make production
আরো বেশি কাস্টমাইজেশনের উদাহরনের প্রক্রিয়া বিভক্তিকরনের জন্য,দয়া করে https://github.com/mozilla-b2g/gaia/tree/master/customization নির্দেশ করুন।
ইহার নিজের আলাদা ভিতরের বিষয় হল কাস্টমাইজেশন।ইহা সম্পর্কে আর বেশি জানার জন্য,আমাদের Market Customizations guide পড়ূন।
নোটঃযদি তুমি তোমার গাইয়া বিল্ডের অংশ হিসেবে কাস্টম এক্সটারনাল অ্যাপ যোগ করতে চাও, তোমাকে একটি্ নির্দেষট পথে তাদের তৈরি করা প্রয়োজন,এবং তারপরে তাদের স্থাপন কর gaia/dev-apps/
ফোল্ডারে। Building Prebundled web apps পড়ো আমাদের আরো খুজে বার করতে ।
গুরুত্বপুর্ণঃযদি তুমি ভাগ করার জন্য একতি কাসট্ম তৈরি করে ডিভাইস ভেন্ডার হওI ,তোমাকে তোমার ফোন/ট্যাব্লেট/ইত্যাদি তে ফায়ারফক্স মার্কেট প্ল্যাচ যোগ করার আগে প্তোমাকে খুশি হতে হবে বিচারের মান দন্ডের প্রয়োজন।মোযিলার সাথে যোগাযোগ কর আরো বিস্তারিত জানতে।