मैं डेबियन से अपने पीपीए के पैकेज की नकल कैसे कर सकता हूं?


10

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

मैं डाउनलोड किया है *.dscफ़ाइल और Debian तथा मूल tarballs, और यहां तक कि बाहर मैं इस्तेमाल कर सकते हैं लगा इस पैकेज के लिए source.changesफ़ाइल। मैंने डेबियन मेंटेनर की सार्वजनिक कुंजी भी डाउनलोड की ताकि dputपैकेज को मान्य किया जा सके। मैंने तब हमारे पीपीए में पैकेज को अपलोड करने की कोशिश की dput ppa:~gourmet/ppa gourmet_0.17.3-1_source.changes(मैंने भी टिल्डा के बिना कोशिश की।) यह सफल प्रतीत हुआ, लेकिन मुझे एक पुष्टिकरण ईमेल नहीं मिला, और कोई पैकेज अब हमारे पीपीए में प्रदर्शित नहीं होते हैं , जो मुझे विश्वास दिलाता है। पैकेज को अस्वीकार कर दिया गया क्योंकि डेबियन अनुरक्षक की कुंजी स्पष्ट रूप से हमारी टीम के सदस्यों की कुंजियों में से नहीं है।

तो एक लॉन्चपैड पीपीए के डेबियन (किनारे) से एक पैकेज को "कॉपी" करने का सबसे आसान तरीका क्या है? क्या मुझे अपलोड करने से पहले स्थानीय स्तर पर पूरे पैकेज को फिर से बनाना होगा?


BTW, उबंटू विकास संस्करण के रूप में डेबियन से अपने पैकेजों को ऑटो-सिंक करता है (DebianImportFreeze से पहले, जो है), मैं खुशी से एक उत्तर स्वीकार करूंगा कि मुझे यूटोपिक से पैकेज की प्रतिलिपि कैसे बनाई जाए।
बर्नहार्ड रेटर

जवाबों:


12

आपको परिवर्तन लॉग को समायोजित करने और परिवर्तन फ़ाइल को पुन: उत्पन्न करने के लिए अपलोड करने से पहले स्रोत पैकेज को स्थानीय रूप से पुनर्निर्माण करने की आवश्यकता है । हालाँकि एक पैकेज का बैकप लेना एक बहुत ही सामान्य कार्य है, लेकिन इसे स्क्रिप्ट किया गया है। की जाँच करें backportpackage मैनपेज आइकनआदेश ubuntu-देव-उपकरणUbuntu-dev-tools स्थापित करें पैकेज।

डेबियन से एक पैकेज को वापस करने के लिए, बस लक्ष्य डिस्ट्रो श्रृंखला, पीपीए और पैकेज के लिए डीएससी फ़ाइल प्रदान करें:

backportpackage -d trusty -u ppa:gourmet/ppa http://ftp.de.debian.org/debian/pool/main/g/gourmet/gourmet_0.17.3-1.dsc

यह एक उबंटू रिलीज़ से दूसरे में एक पैकेज को बैकपोर्ट करने के लिए और भी सरल है क्योंकि आपको डीएससी फ़ाइल खोजने की आवश्यकता नहीं है। मान लें कि हम यूटोपिक से लेकर भरोसेमंद तक का समर्थन करना चाहते हैं:

backportpackage -s utopic -d trusty -u ppa:gourmet/ppa gourmet

बहुत बढ़िया! केवल एक चीज जो मुझे एक बग की तरह दिखती है, वह यह है कि पैकेज मेरे व्यक्तिगत पीपीए (~ ockham-razor / ppa) में समाप्त हो गया, भले ही मैं पैरामीटर के ~gourmet/ppaतर्क के रूप में पारित हो गया -u। (लेकिन मैं सौभाग्य से इसे अपने PPA से पेटू टीम के लॉन्चपैड के माध्यम से कॉपी करने में सक्षम था।)
बर्नहार्ड रेटर

1

ऐसा करने के कुछ तरीके हैं।

जब मैंने रिदमबॉक्स के लिए यह किया तो मैंने निम्नलिखित रसीद का पालन किया:

ए। स्रोत फ़ाइल और डेबियन फ़ाइलें लें

यहाँ छवि विवरण दर्ज करें

ख। स्रोत को अनकम्प्रेस करें (.orig.tar.xz)

सी। स्रोत फ़ोल्डर का नाम कुछ इस तरह बदलेंrhythmbox-3.0.3

सी। डेबियन फ़ाइल को अनलोड करें (.debian.tar.xz)

घ। स्रोत निर्देशिका के तहत डेबियन फ़ोल्डर को स्थानांतरित करें

इ। dch -iचैंज फ़ाइल बदलने के लिए

च। उबंटू लक्ष्य के नाम पर "अस्थिर" पैकेज का नाम बदलें - यहां मैंने 12.04 के लिए सटीक उपयोग किया है । संस्करण को अपने ऐप के लिए उपयुक्त रूप में बदलें। यहाँ रिदमबॉक्स 3.0.3 था - इसलिए मैंने अभी जोड़ा है-1~ppafossfreedom

rhythmbox (3.0.3-1~ppafossfreedom) precise; urgency=low

  * rebuild

 -- fossfreedom <fossfreedom@somewheremail.com>  Thur, 07 Jun 2012 13:19:18 +0100

जी। एक नया स्रोत पैकेज बनाएँ:dh_build --createorig

एच। अपनी कुंजी के साथ सिर्फ स्रोत का निर्माण करें: आपकी कुंजी debuild -S -k0xABCDEFGकहां ABCDEFGहै

मैं। बिल्डिंग के लिए अपना पैकेज अपलोड करें:

cd ..
dput ppa:fossfreedom/rhythmbox rhythmbox_3.0.3-1_sources.changes    

खैर, यह मूल रूप से पैकेज का पुनर्निर्माण कर रहा है। ओह अच्छा। मैं कुछ आसान तरीके की उम्मीद कर रहा था, लेकिन मुझे लगता है कि कोई भी नहीं है।
बर्नहार्ड रेइटर

पैकेज dgetसे कमांड पर एक नज़र डालें devscripts। यह इसे थोड़ा सरल करेगा।
andrewsomething

@andrewsomething - इसे एक उदाहरण के साथ एक उत्तर में बदल दें :) - मुझे यह देखने में दिलचस्पी होगी कि क्या यह मेरी पैकेजिंग को भी सरल बना सकता है।
जीवाश्म

वैसे मेरे पास एक अलग उत्तर है, लेकिन आपको अभी भी dget= के बारे में सीखना चाहिए ) dsc फ़ाइल में स्रोत पैकेज के अन्य भागों के बारे में सभी जानकारी है। तो dgetअगर आप इसे dsc फ़ाइल के लिए एक लिंक देते हैं तो सब कुछ पकड़ लेंगे और इसे सही तरीके से निकाल लेंगे। dget -ux http://http.debian.net/debian/pool/main/r/rhythmbox/rhythmbox_3.0.3-1.dsc
andrewsething

साफ जवाब - अच्छी तरह से किया +1
fossfreedom
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.