सबसे पहले, शीर्षक प्रश्न: मान लिया गया कि डेबियन निर्देशिका पहले से ही है, स्रोत निर्देशिका (डेबियन निर्देशिका युक्त निर्देशिका) में हो और dpkg-buildpackage आह्वान करें। मैं इसे इन विकल्पों के साथ चलाना पसंद करता हूं:
dpkg-buildpackage -us -uc -nc
जिसका अर्थ है कि परिणाम पर हस्ताक्षर न करें और सफाई न करें।
अगर मैं सभी निर्भरताओं को सही ढंग से सूचीबद्ध करूं तो मैं कैसे जांच कर सकता हूं?
निर्भरता प्राप्त करना एक काली कला है। बिल्ड की जाँच करने के लिए "आधिकारिक" तरीका निर्भर करता है कि क्या पैकेज केवल आधार प्रणाली, "बिल्ड-एसेंशियल" पैकेजों के साथ बनाता है, और आपके द्वारा निर्दिष्ट बिल्ड निर्भरताएं। नियमित रूप से निर्भरता के लिए एक सामान्य जवाब नहीं जानते, बस में उतारा :)
मैं अपडेट में रेपो में पुराने संस्करण को स्थापित करने वाले अपडेट सिस्टम को कैसे रोक सकता हूं? मैं अपने कस्टम पैकेज को ओवरराइट करते हुए सिस्टम को नए संस्करण (जब इसके बाहर) को कैसे रोक सकता हूं?
मेरा ज्ञान इस तारीख से पुराना हो सकता है, लेकिन दोनों को संबोधित करने के लिए: dpkg --set-selections का उपयोग करें। अशक्त मान लेना कि आप जिस पैकेज में रहना चाहते हैं, उसे रूट के रूप में चलाएं
echo 'nullidentd hold' | dpkg --set-selections
वैकल्पिक रूप से, चूंकि आप स्रोत से निर्माण कर रहे हैं, आप संस्करण संख्या को कृत्रिम रूप से सेट करने के लिए एक युगांतर का उपयोग कर सकते हैं और फिर कभी परेशान नहीं हो सकते। एक युग का उपयोग करने के लिए, डेबियन / चैंजोग फ़ाइल में एक नई प्रविष्टि जोड़ें, और संस्करण संख्या के सामने एक 99: डालें। मेरे अशक्त उदाहरण को देखते हुए, आपके अपडेट किए गए चैंज की पहली पंक्ति पढ़ी जाएगी:
nullidentd (99:1.0-4) unstable; urgency=low
बर्नार्ड का लिंक अच्छा है, खासकर यदि आपको स्वयं डेबियन डायरेक्टरी बनानी है - तो डेवलपर्स रेफरेंस और सामान्य संसाधन पृष्ठ भी मददगार होते हैं । एडम का लिंक भी अच्छा लग रहा है लेकिन मैं इससे परिचित नहीं हूं।