एपीटी (सॉफ्टवेयर)

उन्नत पैकेज टूल, या एपीटी, एक मुफ्त सॉफ्टवेयर | फ्री-सॉफ्टवेयर फ्रंटएंड और बैकएंड है जो डेबियन और डेबियन-आधारित लिनक्स वितरण पर सॉफ्टवेयर की स्थापना और हटाने को संभालने के लिए पुस्तकालय (कम्प्यूटिंग)  के साथ काम करता है। APT पैकेज प्रबंधक की पुनर्प्राप्ति, कॉन्फ़िगरेशन और स्थापना को स्वचालित करके यूनिक्स जैसी कंप्यूटर सिस्टम पर सॉफ़्टवेयर के प्रबंधन की प्रक्रिया को सरल बनाता है, या तो पूर्व-संकलित फ़ाइलों से या  संकलक  स्रोत कोड द्वारा।

उपयोग
APT, apt नामक पैकेज में वितरित उपकरणों का एक संग्रह है। एपीटी का एक महत्वपूर्ण हिस्सा कार्यों के सी ++  पुस्तकालय में परिभाषित किया गया है; APT में पैकेज से निपटने के लिए कमांड-लाइन प्रोग्राम भी शामिल हैं, जो लाइब्रेरी का उपयोग करते हैं। ऐसे तीन कार्यक्रम हैं ,   और. वे आमतौर पर उदाहरणों में उपयोग किए जाते हैं क्योंकि वे सरल और सर्वव्यापी हैं। सभी मौजूदा डेबियन रिलीज में उपयुक्त पैकेज महत्वपूर्ण प्राथमिकता है, और इसलिए इसे एक डिफ़ॉल्ट डेबियन इंस्टॉलेशन में शामिल किया गया है। APT को फ्रंटएंड और बैकएंड|फ्रंट-एंड टू माना जा सकता है, पुराने की तुलना में मित्रवत   फ़्रंट एंड। जबकि   अलग-अलग पैकेजों पर कार्रवाई करता है, APT उनके बीच संबंधों (विशेष रूप से निर्भरता) का प्रबंधन करता है, साथ ही उच्च-स्तरीय संस्करण निर्णयों (रिलीज़ ट्रैकिंग और संस्करण पिनिंग) के सोर्सिंग और प्रबंधन का प्रबंधन करता है।

APT को अक्सर डेबियन की सर्वश्रेष्ठ विशेषताओं में से एक के रूप में सराहा जाता है,   जिसे डेबियन डेवलपर्स डेबियन की नीति में सख्त गुणवत्ता नियंत्रण का श्रेय देते हैं। APT की एक प्रमुख विशेषता इसके कॉल करने का तरीका है  - यह स्थापित या हटाए जाने और कॉल करने के लिए संकुल की सूची का सामयिक छँटाई करता है   सर्वोत्तम संभव क्रम में। कुछ मामलों में, यह का उपयोग करता है   के विकल्प. हालाँकि, यह केवल तभी करता है जब यह गणना करने में असमर्थ होता है कि कारण से कैसे बचा जाए  कार्रवाई को मजबूर करने की आवश्यकता है।

सॉफ्टवेयर इंस्टॉल करना
उपयोक्ता अधिष्ठापित किए जाने वाले एक या अधिक संकुलों को इंगित करता है। प्रत्येक पैकेज नाम को केवल पैकेज के नाम वाले हिस्से के रूप में व्यक्त किया जाता है, न कि पूरी तरह से योग्य फ़ाइल नाम के रूप में (उदाहरण के लिए, डेबियन सिस्टम में,  प्रदान किया गया तर्क होगा, नहीं  ). विशेष रूप से, APT स्वचालित रूप से उन पैकेजों को प्राप्त और स्थापित करता है जिन पर संकेतित पैकेज निर्भर करता है (यदि आवश्यक हो)। यह APT-आधारित पैकेज प्रबंधन प्रणालियों की एक मूल विशिष्ट विशेषता थी, क्योंकि यह लापता निर्भरता, एक प्रकार की निर्भरता नरक के कारण स्थापना विफलता से बचाती थी।

एक अन्य अंतर दूरस्थ रिपॉजिटरी से संकुल की पुनर्प्राप्ति है। APT एक स्थान कॉन्फ़िगरेशन फ़ाइल का उपयोग करता है वांछित पैकेजों का पता लगाने के लिए, जो नेटवर्क पर उपलब्ध हो सकते हैं या हटाने योग्य भंडारण माध्यम, उदाहरण के लिए, और उन्हें पुनर्प्राप्त करें, और उपलब्ध (लेकिन स्थापित नहीं) पैकेजों के बारे में जानकारी भी प्राप्त करें।

APT, apt-get की विरोध समाधान प्रणाली द्वारा लिए गए निर्णयों को ओवरराइड करने के लिए अन्य कमांड विकल्प प्रदान करता है। एक विकल्प पैकेज के किसी विशेष संस्करण को बाध्य करना है। यह एक पैकेज को डाउनग्रेड कर सकता है और निर्भर सॉफ़्टवेयर को निष्क्रिय कर सकता है, इसलिए उपयोगकर्ता को सावधान रहना चाहिए।

अंततः  तंत्र उपयोगकर्ता को अलग-अलग पैकेजों के लिए एक वैकल्पिक स्थापना नीति बनाने की अनुमति देता है।

उपयोगकर्ता POSIX नियमित अभिव्यक्ति  का उपयोग करके पैकेज निर्दिष्ट कर सकता है।

एपीटी पैकेजों की अपनी कैश्ड सूची खोजता है और उन निर्भरताओं को सूचीबद्ध करता है जिन्हें स्थापित या अद्यतन किया जाना चाहिए।

एपीटी स्वचालित रूप से निर्भरताओं को पुनः प्राप्त, कॉन्फ़िगर और स्थापित करता है।

dpkg आस्थगित क्रियाओं का उपचार है।

अपडेट, अपग्रेड और डिस्ट-अपग्रेड
के उपयोग के तरीके  और   स्थापित पैकेजों को अद्यतन करने की सुविधा में शामिल हैं:
 * पैकेज अनुक्रमणिका फ़ाइलों को उनके स्रोतों से पुन: सिंक्रनाइज़ करने के लिए उपयोग किया जाता है। उपलब्ध पैकेजों की सूची निर्दिष्ट स्थान (स्थानों) से प्राप्त की जाती है . उदाहरण के लिए, डेबियन आर्काइव का उपयोग करते समय, यह कमांड   फाइलें, ताकि नए और अद्यतन पैकेजों के बारे में जानकारी उपलब्ध हो सके।
 * में वर्णित स्रोतों से सिस्टम पर वर्तमान में स्थापित सभी पैकेजों के नवीनतम संस्करणों को स्थापित करने के लिए उपयोग किया जाता है . वर्तमान में उपलब्ध नए संस्करणों के साथ संस्थापित पैकेजों को पुनः प्राप्त और उन्नत किया जाता है; किसी भी परिस्थिति में वर्तमान में संस्थापित संकुल को हटाया नहीं गया है, या पहले से अधिष्ठापित संकुल को पुनर्प्राप्त और संस्थापित नहीं किया गया है। वर्तमान में स्थापित संकुल के नए संस्करण जिन्हें किसी अन्य पैकेज की स्थापना स्थिति को बदले बिना उन्नत नहीं किया जा सकता है, उनके वर्तमान संस्करण पर छोड़ दिया जाएगा।
 * और , का कार्य करने के अलावा  , संकुल के नए संस्करणों के साथ बदलती निर्भरता को भी समझदारी से संभालता है;   और   एक स्मार्ट संघर्ष समाधान प्रणाली है, और यदि आवश्यक हो तो कम महत्वपूर्ण पैकेजों की कीमत पर सबसे महत्वपूर्ण पैकेजों को अपग्रेड करने का प्रयास करेंगे।   e> फ़ाइल में उन स्थानों की सूची होती है जहाँ से वांछित पैकेज फ़ाइलों को पुनः प्राप्त करना है।  योग्यता (सॉफ्टवेयर)  में एक स्मार्ट है   फीचर कहा जाता है.

कॉन्फ़िगरेशन और फ़ाइलें
APT कॉन्फ़िगरेशन फ़ोल्डर और फ़ाइलें शामिल हैं।

APT कॉन्फ़िगरेशन क्वेरी प्रोग्राम है।  विन्यास दर्शाता है।

फ़ाइलें

 * : पैकेज लाने के लिए स्थान।
 * : अतिरिक्त स्रोत सूची के टुकड़े।
 * : APT कॉन्फ़िगरेशन फ़ाइल।
 * : APT कॉन्फ़िगरेशन फ़ाइल के टुकड़े।
 * : संस्करण वरीयता फ़ाइलों के साथ निर्देशिका। यह वह जगह है जहां #APT पिनिंग निर्दिष्ट है, यानी एक अलग स्रोत से या वितरण के एक अलग संस्करण से कुछ पैकेज प्राप्त करने की प्राथमिकता।
 * : पुनर्प्राप्त पैकेज फ़ाइलों के लिए संग्रहण क्षेत्र।
 * : पारगमन में पैकेज फ़ाइलों के लिए भंडारण क्षेत्र।
 * : निर्दिष्ट प्रत्येक पैकेज संसाधन के लिए राज्य की जानकारी के लिए भंडारण क्षेत्र
 * : पारगमन में राज्य की जानकारी के लिए भंडारण क्षेत्र।

स्रोत
APT सॉफ़्टवेयर खोजने और निर्भरताओं को हल करने के लिए सॉफ्टवेयर रिपॉजिटरी की अवधारणा पर निर्भर करता है। APT के लिए, एक रिपॉजिटरी एक निर्देशिका है जिसमें एक इंडेक्स फ़ाइल के साथ पैकेज होते हैं। इसे एक नेटवर्कयुक्त या सीडी रॉम  स्थान के रूप में निर्दिष्ट किया जा सकता है।  डेबियन परियोजना डाउनलोड और स्थापना के लिए तैयार 50,000 से अधिक सॉफ़्टवेयर पैकेजों का एक केंद्रीय भंडार रखती है। एपीटी के स्रोतों.सूची कॉन्फ़िगरेशन फ़ाइल में कितने भी अतिरिक्त रिपॉजिटरी जोड़े जा सकते हैं और उसके बाद APT द्वारा पूछताछ की जाएगी। ग्राफिकल फ्रंट-एंड अक्सर संशोधित करने की अनुमति देते हैं   अधिक केवल. एक बार एक पैकेज रिपॉजिटरी निर्दिष्ट हो जाने के बाद (जैसे सिस्टम इंस्टॉलेशन के दौरान), उस रिपॉजिटरी में पैकेज को स्रोत निर्दिष्ट किए बिना इंस्टॉल किया जा सकता है और स्वचालित रूप से अप-टू-डेट रखा जाएगा।

नेटवर्क रिपॉजिटरी के अलावा, कॉम्पैक्ट डिस्क और अन्य स्टोरेज मीडिया (USB कीड्राइव, हार्ड डिस्क ...) का उपयोग करके भी उपयोग किया जा सकता है या जोड़ना   प्रकार स्रोत सूची फ़ाइल में।   सीडी-रोम के अलावा एक फ़ोल्डर निर्दिष्ट कर सकते हैं, का उपयोग कर   विकल्प (अर्थात हार्ड डिस्क या USB कीड्राइव)। डाउनलोड के लिए उपलब्ध डेबियन सीडी में डेबियन रिपॉजिटरी हैं। यह गैर-नेटवर्क वाली मशीनों को अपग्रेड करने की अनुमति देता है। कोई भी प्रयोग कर सकता है.

समस्या तब प्रकट हो सकती है जब कई स्रोत समान पैकेज प्रदान करते हैं। ऐसे संभावित परस्पर विरोधी स्रोत वाले सिस्टम APT पिनिंग का उपयोग यह नियंत्रित करने के लिए कर सकते हैं कि किन स्रोतों को प्राथमिकता दी जानी चाहिए।

एपीटी पिनिंग
APT पिनिंग सुविधा उपयोगकर्ताओं को APT को पैकेज के विशेष संस्करणों को चुनने के लिए बाध्य करने की अनुमति देती है जो विभिन्न रिपॉजिटरी से अलग-अलग संस्करणों में उपलब्ध हो सकते हैं। यह प्रशासकों को यह सुनिश्चित करने की अनुमति देता है कि पैकेज उन संस्करणों में अपग्रेड नहीं किए गए हैं जो सिस्टम पर अन्य पैकेजों के साथ संघर्ष कर सकते हैं, या जिन्हें अवांछित परिवर्तनों के लिए पर्याप्त रूप से परीक्षण नहीं किया गया है।

ऐसा करने के लिए, APT की वरीयता फ़ाइल में पिन संशोधित किया जाना चाहिए, हालांकि ग्राफिकल फ्रंट-एंड अक्सर पिनिंग को सरल बनाते हैं।

फ्रंट-एंड्स
कई अन्य फ्रंटएंड और बैकएंड | एपीटी के फ्रंट-एंड मौजूद हैं, जो अधिक उन्नत इंस्टॉलेशन फ़ंक्शंस और अधिक सहज ज्ञान युक्त इंटरफेस प्रदान करते हैं। इसमे शामिल है:
 * सिनैप्टिक (सॉफ्टवेयर), एक जीटीके ग्राफिकल यूज़र इंटरफ़ेस
 * उबंटू सॉफ्टवेयर सेंटर, उबंटू परियोजना द्वारा विकसित जीटीके ग्राफिकल यूजर इंटरफेस
 * एप्टीट्यूड (सॉफ्टवेयर), कमांड लाइन इंटरफेस  के साथ एक कंसोल क्लाइंट और ncurses- आधारित टेक्स्ट-आधारित यूजर इंटरफेस इंटरफेस
 * केपैकेज, कहाँ  का हिस्सा
 * निपुण पैकेज मैनेजर, केडीई के लिए ग्राफिकल यूजर इंटरफेस (डिब, आरपीएम, बीएसडी)
 * पैकेजकिट, एक डी-बस फ़्रंटएंड, जिसे freedesktop.org द्वारा अनुरक्षित किया जाता है, GNOME सॉफ़्टवेयर और KDE डिस्कवर को शक्ति प्रदान करता है।
 * GDebi, Ubuntu के लिए प्रायोजित एक GTK-आधारित टूल। (एक क्यूटी संस्करण भी है, जो उबंटू रिपॉजिटरी में gdebi-kde के रूप में उपलब्ध है।)
 * apt-cdrom, APT की उपलब्ध रिपॉजिटरी की सूची में एक नया CDROM जोड़ने का एक तरीका (sources.lists)। APT सिस्टम में सीडी जोड़ने के लिए apt-cdrom का उपयोग करना आवश्यक है, यह हाथ से नहीं किया जा सकता है।
 * apt-zip, हटाने योग्य मीडिया, विशेष रूप से उ स बी फ्लैश ड्राइव के साथ apt का उपयोग करने का एक तरीका।
 * aptURL, एक उबंटू सॉफ्टवेयर पैकेज जो एंड-यूज़र एप्लिकेशन को ब्राउज़र के माध्यम से सिंगल-क्लिक के साथ इंस्टॉल करने में सक्षम बनाता है।
 * Cydia, APT पर आधारित आईओएस जेलब्रेकिंग के लिए एक पैकेज मैनेजर (टेलीस्फोरियो प्रोजेक्ट के हिस्से के रूप में iOS में पोर्ट किया गया)।
 * Sileo, Cydia की तरह, APT के नए संस्करणों के आधार पर जेलब्रेक iOS के लिए एक पैकेज मैनेजर (Electra टीम द्वारा iOS में पोर्ट किया गया)
 * gnome-apt, एक GTK/GNOME-विजेट-आधारित ग्राफिकल फ्रंट-एंड। कहर पेनिंगटन द्वारा विकसित
 * म्यूऑन डिस्कवर (पिछला म्यूऑन सॉफ्टवेयर सेंटर), एक क्यूटी-आधारित ग्राफिकल यूजर इंटरफेस
 * Hildon एप्लिकेशन मैनेजर (Maemo एप्लिकेशन), एक Maemo फ्रंट-एंड
 * apticron, सिस्टम एडमिनिस्ट्रेटर (sysadmin) को लंबित अद्यतनों की ईमेल सूचनाओं को cron के माध्यम से चलाने के लिए डिज़ाइन की गई सेवा।
 * एपीटी डेमन, एक फ्रंट-एंड जो डेमॉन (कंप्यूटिंग) के रूप में चलता है, जो उपयोगकर्ताओं को पोलकिट के माध्यम से सॉफ़्टवेयर स्थापित करने की अनुमति देता है और बदले में उबंटू सॉफ्टवेयर सेंटर (लिनक्स टकसाल द्वारा लिनक्स मिंट # सॉफ्टवेयर के साथ) द्वारा उपयोग किया जाने वाला ढांचा है।
 * पैकेज इंस्टॉलर, एमएक्स लिनक्स का हिस्सा।
 * Apt-offline: सीधे इंटरनेट कनेक्शन का उपयोग किए बिना किसी भी डेबियन-प्रकार लिनक्स इंस्टॉलेशन में उपलब्ध गैर-कंटेनरीकृत परिवर्तन करने का एक सुविधाजनक तरीका। हालाँकि, एक अस्थायी प्रत्यक्ष कनेक्शन की आवश्यकता हो सकती है, जैसे कि कुछ प्रासंगिक प्रकार के लिनक्स पर Apt-offline स्थापित करना, और Ubuntu#Package_Archives को स्रोत-सूची में जोड़ना।

एपीटी फ्रंट-एंड कर सकते हैं:
 * नए पैकेजों की खोज करें;
 * अपग्रेड पैकेज;
 * संकुल स्थापित करें या हटाएं और
 * पूरे सिस्टम को एक नई रिलीज में अपग्रेड करें।

APT फ्रंट-एंड स्थापित या अपग्रेड किए जा रहे पैकेजों की निर्भरता को सूचीबद्ध कर सकता है, व्यवस्थापक से पूछ सकता है कि क्या नए स्थापित पैकेजों द्वारा अनुशंसित या सुझाए गए पैकेजों को भी स्थापित किया जाना चाहिए, स्वचालित रूप से निर्भरताएं स्थापित करें और सिस्टम पर अन्य संचालन करें जैसे कि अप्रचलित फ़ाइलों और पैकेजों को हटाना।

इतिहास
मूल प्रयास जिसके कारण हुआ  कार्यक्रम था   प्रतिस्थापन परियोजना को उसके कोडनेम देवता के नाम से जाना जाता है। इस परियोजना को 1997 में उस समय डेबियन रिलीज़ मैनेजर ब्रायन व्हाइट द्वारा कमीशन किया गया था। का पहला कार्यात्मक संस्करण   बुलाया गया   और केवल मुख्य पुस्तकालय कार्यों के लिए एक परीक्षण कार्यक्रम होने का इरादा था जो नए यूजर इंटरफेस (यूआई) को रेखांकित करेगा। APT का अधिकांश मूल विकास इंटरनेट रिले चैट (IRC) पर किया गया था, इसलिए रिकॉर्ड खो गए हैं। 'देवता निर्माण टीम' मेलिंग सूची संग्रह में केवल प्रमुख हाइलाइट्स शामिल हैं।

नाम की धार्मिक प्रकृति पर चिंताओं के कारण 'देवता' नाम को परियोजना के आधिकारिक नाम के रूप में छोड़ दिया गया था। काफी आंतरिक और सार्वजनिक चर्चा के बाद अंततः APT नाम तय किया गया। अंततः आईआरसी पर नाम प्रस्तावित किया गया, स्वीकार किया गया और फिर मेलिंग सूचियों पर अंतिम रूप दिया गया। APT को 1998 में पेश किया गया था और मूल परीक्षण बिल्ड IRC पर परिचालित किए गए थे। पहला डेबियन संस्करण जिसमें यह शामिल था, डेबियन 2.1 था, जो 9 मार्च 1999 को जारी किया गया था। अंत में देवता परियोजना का मूल लक्ष्य की जगह  यूजर इंटरफेस विफल रहा। प्रोजेक्ट के यूजर इंटरफेस हिस्से पर काम छोड़ दिया गया था (यूजर इंटरफेस निर्देशिकाओं को समवर्ती संस्करण सिस्टम से हटा दिया गया था) के पहले सार्वजनिक रिलीज के बाद. APT के रूप में प्रतिक्रिया  विधि और एक कमांड लाइन उपयोगिता इतनी महान और सकारात्मक थी कि सभी विकास प्रयास उपकरण को बनाए रखने और सुधारने पर केंद्रित थे। यह बहुत बाद तक नहीं था कि कई स्वतंत्र लोगों ने शीर्ष पर यूजर इंटरफेस का निर्माण किया.

आखिरकार, एक नई टीम ने परियोजना को चुना, नई सुविधाओं का निर्माण शुरू किया और APT का संस्करण 0.6 जारी किया, जिसने पैकेज रिपॉजिटरी को प्रमाणित करने के लिए मजबूत जीएनयू प्राइवेसी गार्ड अंगुली का हस्ताक्षर  का उपयोग करते हुए सिक्योर APT फीचर पेश किया।

वेरिएंट
एपीटी मूल रूप से डेबियन के साथ काम करने के लिए डीपीकेजी के लिए फ्रंट-एंड के रूप में डिजाइन किया गया था  संकुल। आरपीएम पैकेज मैनेजर सिस्टम के साथ काम करने के लिए संशोधित APT का एक संस्करण APT-RPM के रूप में जारी किया गया था। फ़िंक (सॉफ़्टवेयर) प्रोजेक्ट ने अपने कुछ पैकेज प्रबंधन कार्यों के लिए APT को macOS में पोर्ट किया है, और APT OpenSolaris में भी उपलब्ध है।

उपयुक्त-फ़ाइल
apt-file एक कमांड है, जिसे APT से अलग पैक किया गया है, यह पता लगाने के लिए कि किस पैकेज में एक विशिष्ट फ़ाइल शामिल है, या रिमोट रिपॉजिटरी पर पैकेज में शामिल सभी फाइलों को सूचीबद्ध करने के लिए।

यह भी देखें

 * एलियन (फ़ाइल कनवर्टर)
 * ऐपस्ट्रीम
 * एपीटीओएनसीडी
 * जीएनयू गुइक्स
 * एक चेहरा
 * सॉफ्टवेयर पैकेज प्रबंधन प्रणालियों की सूची

बाहरी संबंध

 * APT HOWTO
 * Apt Tutorial
 * Chapter 2. Debian package management - Debian Reference
 * Chapter 2. Debian package management - Debian Reference