হ্যাঁ, একটি স্ট্যান্ডার্ড রয়েছে: এগুলি ফ্রিডেস্কটপ.অর্গ.আর দ্বারা নির্দিষ্ট করা হয় এবং এটি এক্সডিজি বেস ডিরেক্টরি স্পেসিফিকেশনের অংশ ।
কনফিগার-স্পেস কেবলমাত্র প্রাথমিক প্রয়োজনীয়তার বাহ্যরেখা দেয়, তবে বিশদগুলি বেস ডিরেক্টরি ডিরেক্টরিতে থাকে। ~/.config
এবং ~/.cache
ডিরেক্টরি ডিফল্ট যদি না অন্যথায় কনফিগার আছেন:
কনফিগারেশন ফাইলগুলি অনুসন্ধান করা উচিত যার সাথে তুলনায় অর্ডার করা বেস ডিরেক্টরিগুলির একটি সেট রয়েছে। ডিরেক্টরিগুলির এই সেটটি পরিবেশের পরিবর্তনশীল $ XDG_CONFIG_DIRS দ্বারা সংজ্ঞায়িত করা হয়েছে।
সেখানে একটি একক বেস ডিরেক্টরি যা ব্যবহারকারী-নির্দিষ্ট অ-প্রয়োজনীয় (ক্যাশেড) ডেটা লিখতে হবে relative এই ডিরেক্টরিটি পরিবেশের পরিবর্তনশীল $ XDG_CACHE_Home দ্বারা সংজ্ঞায়িত করা হয়েছে।
...
D এক্সডিজি_সনফিগ_হোম ভিত্তি ডিরেক্টরিটি নির্দিষ্ট করে যা ব্যবহারকারীর নির্দিষ্ট কনফিগারেশন ফাইলগুলি সংরক্ষণ করা উচিত relative যদি $ XDG_CONFIG_Home সেট না করা থাকে বা খালি হয় না, default HOME / .config এর সমান একটি ডিফল্ট ব্যবহার করা উচিত।
...
D XDG_CACHE_Home বেস ডিরেক্টরিটি নির্দিষ্ট করে যা ব্যবহারকারীর নির্দিষ্ট অ-প্রয়োজনীয় ডেটা ফাইল সংরক্ষণ করা উচিত relative যদি $ XDG_CACHE_Home হয় সেট না করে খালি হয়, a HOME / .cache এর সমান একটি ডিফল্ট ব্যবহার করা উচিত।
আপনি এই স্পেসিফিকেশনগুলি বেশিরভাগ ক্ষেত্রে ডেটা সংরক্ষণ করতে হবে, কোন পরিবেশের ভেরিয়েবলগুলি ব্যবহার করতে হবে এবং কোন উপায়ে (ডেস্কটপ-নিরপেক্ষ, দক্ষ, ইত্যাদি) লক্ষ্য করতে পারেন তবে বেশিরভাগ ডেস্কটপগুলি "কীভাবে" এর অংশটি বাস্তবায়নে নিখরচায় রয়েছে। জিনোম-ভিত্তিক ডেস্কটপগুলি ব্যবহার করবে gsettings
যেখানে কে-ডি-ই ব্যবহারকারীরা একইরকম ব্যবহার করতে পারবেন kwriteconfig
, তবে তারা উভয়ই ~/.config
ডিরেক্টরিতে ডিরেক্টরিতে নির্ভর করবেন
প্রশ্ন মূল বিষয়
আমি কীভাবে জানব যে এটি একটি সরকারী সমর্থিত ফোল্ডার এবং প্রতি ব্যবহারকারী ক্যাশে / কনফিগারেশনের জন্য কেবলমাত্র মাসের অবস্থানের স্বাদ নয়?
এই ডিরেক্টরিগুলি অফিসিয়াল ডকুমেন্টেশনে উপস্থিত হয় এবং ফাইলসাইম হায়ারার্কি স্ট্যান্ডার্ডও তাদের উল্লেখ করে। এটি অফিশিয়াল ডকুমেন্টেশন, সুতরাং ফোল্ডারগুলি আনুষ্ঠানিকভাবে সমর্থিত।
এটি কি এমন কিছু যা কেবল আমার বিবৃত মানক অনুশীলনের অবস্থান হিসাবে গ্রহণ করা উচিত?
আপনার তৈরি করা অ্যাপের উপর নির্ভর করে। অ্যাপ্লিকেশনটি কি প্রতি ব্যবহারকারী ভিত্তিতে কনফিগারযোগ্য বা সিস্টেমের মাধ্যমে নিয়মিতভাবে কাজ করার কথা রয়েছে? এফএইচএস আমাদের জানায় যে সিস্টেম-ব্যাপী স্টাফের জন্য আমাদের ব্যবহার করা উচিত /etc
বা /usr/local
, তবে এক্সডিজি ডিরেক্টরিগুলি ব্যবহারকারী-নির্দিষ্ট কনফিগারেশনের জন্য ব্যবহার করা উচিত - ~/.cache
এবং ~/.config
। অবশ্যই, যদি অ্যাপ্লিকেশনটি ব্যবহারকারী-নির্দিষ্ট সেটিংসের উপর নির্ভর করে না, তবে প্রতি ব্যবহারকারী ডিরেক্টরি পরিবর্তে / var / cache ব্যবহার করা যেতে পারে। অবশ্যই আপনার কনফিগারেশন এবং ক্যাশে রাখতে সর্বদা একক ~/.appname.conf
ফাইল, একটি ~/.appname.db
বা ~/.appname/
ডিরেক্টরি থাকতে পারে তবে এটি অ-মানক হবে; "খারাপ" নয় - কেবল অ-মানক।
আরো দেখুন