पर्सनल पैकेज आर्काइव्स (PPAs) काफी उपयोगी हो सकते हैं। ये आपको नए सॉफ़्टवेयर या ऐसे प्रोग्राम उपलब्ध कराते हैं जो आपके डिस्ट्रीब्यूशन के डिफ़ॉल्ट रिपॉजिटरी में नहीं होते। लेकिन समय-समय पर, आपको विभिन्न कारणों से एक PPA हटाने की आवश्यकता पड़ सकती है। इसे कैसे किया जाए यह इस बात पर निर्भर करता है कि आप क्या हासिल करना चाहते हैं। आमतौर पर, आप खुद को इन दो परिदृश्यों में से एक में पाएंगे:
- आप अपने सॉफ़्टवेयर सोर्स सूची से PPA को हटाना चाहते हैं और इंस्टॉल किए गए पैकेजों को भी हटाना चाहते हैं।
- आप अपने सॉफ़्टवेयर सोर्स सूची से PPA को हटाना चाहते हैं और अपने डिस्ट्रीब्यूशन द्वारा प्रदान किए गए डिफ़ॉल्ट पैकेजों पर वापस लौटना चाहते हैं।
आइए पहले परिदृश्य को समझते हैं।
PPA और उसके पैकेजों को हटाएं
सुनिश्चित करें कि आपके पास "add-apt-repository" यूटिलिटी इंस्टॉल है। यह अधिकांश उबंटू-आधारित डिस्ट्रीब्यूशन पर डिफ़ॉल्ट रूप से उपलब्ध होनी चाहिए, लेकिन सुनिश्चित करने के लिए निम्न कमांड चलाएं:
sudo apt install software-properties-common
इसके बाद, आपको उस PPA का सटीक नाम चाहिए जिसे आप हटाना चाहते हैं। अगर आप भूल गए हैं, तो आप इसे गूगल कर सकते हैं, उस लॉन्चपैड पेज को खोलें जहां यह होस्ट किया गया है और इंस्टॉलेशन निर्देशों को देखें। वहां आपको इसका सटीक नाम मिल जाएगा (जैसे "ppa:libreoffice/ppa")।
वैकल्पिक रूप से, वेब पर खोजने के बजाय, आप अपने सॉफ़्टवेयर सोर्स सूचियों को खोजकर देख सकते हैं कि वर्तमान में आपके पास कौन से PPAs सक्रिय हैं।
grep -r -i ppa /etc/apt/
इसके बाद, आप "https://ppa.launchpad.net" से शुरू होने वाले किसी भी लिंक को खोलकर उस सटीक PPA नाम को ढूंढ सकते हैं जिसकी आपको आवश्यकता है।
अगले कमांड में "NAME_OF_PPA" को आपके द्वारा पहले ढूंढे गए वास्तविक नाम से बदलें। उदाहरण के लिए, अंतिम कमांड इस तरह दिख सकती है: sudo add-apt-repository --remove ppa:libreoffice/ppa।
sudo add-apt-repository --remove NAME_OF_PPA
पैकेज मैनेजर की जानकारी को रीफ्रेश करें।
sudo apt update
अंत में, पैकेज और उसके डिपेंडेंसी को निम्न कमांड से हटाएं:
sudo apt autoremove NAME_OF_PACKAGE
यह कमांड दर्ज करने के बाद, उन पैकेजों की सूची पर ध्यान दें जिन्हें हटाया जाएगा। अगर उस सूची में आपको कुछ ऐसा दिखाई देता है जिसकी आपको आवश्यकता है, तो autoremove के बजाय apt के remove विकल्प का उपयोग करें:
sudo apt remove NAME_OF_PACKAGE
PPAs से इंस्टॉल किए गए सभी पैकेज ढूंढें
अगर autoremove विकल्प उस PPA से आने वाले सभी पैकेजों को अनइंस्टॉल नहीं करता है, तो आपको उन्हें मैन्युअली हटाना पड़ सकता है।
निम्न यूटिलिटी इंस्टॉल करें।
sudo apt install apt-forktracer
अब, आप अपने सिस्टम पर इंस्टॉल उन सभी पैकेजों को ढूंढ सकते हैं जो PPA से आते हैं।
apt-forktracer | grep -i ppa | awk '{print $1}'
इसके बाद, आप उन्हें sudo apt remove या sudo apt autoremove से हटा सकते हैं। autoremove आपके द्वारा निर्दिष्ट पैकेज(ओं) को ऑटोमैटिकली अनइंस्टॉल करने का प्रयास करेगा, साथ ही सभी डिपेंडेंसी को भी। remove केवल आपके द्वारा निर्दिष्ट पैकेज(ओं) को अनइंस्टॉल करेगा।
अगर आप सुनिश्चित हैं कि apt-forktracer द्वारा पहले प्रदर्शित सभी पैकेजों को हटाया जा सकता है, तो आप निम्न जैसी कमांड का उपयोग कर सकते हैं:
sudo apt remove $(apt-forktracer | grep -i ppa | awk '{print $1}')
सुनिश्चित करें कि आप दोबारा जांच लें कि क्या हटाया जाएगा ताकि आप गलती से किसी आवश्यक चीज़ को अनइंस्टॉल न कर दें।
PPA को हटाएं और पैकेजों को डिस्ट्रीब्यूशन के संस्करणों पर वापस लाएं
पिछले सेक्शन की तरह, आपको पहले PPA का सटीक नाम जानना होगा। अगर आप नहीं जानते हैं, तो ऊपर बताए गए तरीकों को आजमाएं।
ppa-purge इंस्टॉल करें।
sudo apt install ppa-purge
ppa-purge स्क्रिप्ट चलाएं, जो आपके सॉफ़्टवेयर रिपॉजिटरी से PPAs को हटा देगा और इंस्टॉल किए गए PPA पैकेजों को आपके डिस्ट्रीब्यूशन के पैकेजों से बदल देगा। बेशक, इसके लिए आपके लिनक्स डिस्ट्रीब्यूशन में ये पैकेज उपलब्ध होने चाहिए। ज्यादातर मामलों में इसका मतलब है कि नए सॉफ़्टवेयर को पुराने संस्करणों में डाउनग्रेड किया जाएगा।
sudo ppa-purge NAME_OF_PPA
उदाहरण कमांड: sudo ppa-purge ppa:libreoffice/ppa।
निष्कर्ष
"क्लीन" सिस्टम पर ऊपर दी गई कमांड बिना किसी समस्या के चलनी चाहिए। हालांकि, अन्य सिस्टम पर, आप उन पैकेजों से उत्पन्न कुछ विरोधों का सामना कर सकते हैं जो एक-दूसरे के साथ असंगत हैं। दुर्भाग्य से, इसका कोई सामान्य समाधान नहीं है, क्योंकि यह आपकी सटीक स्थिति पर निर्भर करता है। ज्यादातर समय यह उनमें से कुछ पैकेजों को हटाकर/डाउनग्रेड/अपग्रेड करके हल किया जा सकता है। भविष्य में ऐसे अनुभव से बचने के लिए, आप अपने ऑपरेटिंग सिस्टम को "क्लीन" स्थिति में रखने का तरीका जानने के लिए "Don't Break Debian" पढ़ सकते हैं।