HeadlinesBriefing favicon HeadlinesBriefing.com

FOSSY में बूटस्ट्रैपेबल बिल्ड्स की व्याख्या

Hacker News •
×

मुक्त और ओपन सोर्स सॉफ़्टवेयर वार्षिक सम्मेलन (FOSSY) पोर्टलैंड, ओरेगन में तीन साल तक आयोजित होने के बाद, कनाडा के ब्रिटिश कोलंबिया विश्वविद्यालय, वैंकूवर में स्थानांतरित हो गया। "टूलचेंस और अन्य विकास टूल्स" ट्रैक में, टिमोथी सैम्पल ने बूटस्ट्रैपेबल बिल्ड्स पर प्रस्तुति दी, जो रिप्रोड्यूसिबल बिल्ड्स की तुलना में कम ज्ञात अवधारणा है। एक बूटस्ट्रैपेबल बिल्ड एक छोटे प्रोग्राम से शुरू होता है जो धीरे-धीरे बड़े प्रोग्राम बनाता है, जब तक कि एक छोटे बीज से आधुनिक लिनक्स उपयोगकर्ता स्थान का निर्माण नहीं हो जाता, जिसके परिणामस्वरूप ऐसा कोड मिलता है जिसकी उत्पत्ति पूरी तरह से समझी जा सके।

सैम्पल ने दर्शकों के विषय के प्रति आश्चर्यजनक परिचित होने की बात कही। उन्होंने लगभग दस साल पहले GNU Guix (Nix से प्रेरित एक कार्यात्मक पैकेज मैनेजर) का उपयोग करके बूटस्ट्रैपेबल बिल्ड्स की खोज शुरू की थी। दोनों प्रणालियाँ सॉफ़्टवेयर को एक "डेरिवेशन ग्राफ" के रूप में दर्शाती हैं जो सैकड़ों बिल्ड निर्भरताओं को मैप करती हैं। सैम्पल ने एक पायथन प्रोग्राम का उदाहरण देकर इसकी जटिलता दिखाई जिसके लिए एक सी कंपाइलर की आवश्यकता होती है, जो फिर दूसरे कंपाइलर की आवश्यकता रखता है, और इस प्रकार अनंत तक चलता रहता है। परंपरागत रूप से, डेबियन जैसे सिस्टम एक प्री-अपलोडेड सी कंपाइलर बाइनरी पर रुक जाते हैं, जबकि गुयिक्स मूल रूप से एक 250MB स्टैटिकली लिंक्ड जीएनयू यूज़र-स्पेस प्रोग्राम्स ब्लॉब पर रुक जाता था।

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

मुख्य इकाइयाँ: कंपनियाँ: GNU, Nix, Debian, LWN | व्यक्ति: टिमोथी सैम्पल, डेनिस रिची | स्थान: ब्रिटिश कोलंबिया विश्वविद्यालय, वैंकूवर, कनाडा, पोर्टलैंड, ओरेगन, बेल लैब्स

अक्सर पूछे जाने वाले प्रश्न: रिप्रोड्यूसिबल बिल्ड्स और बूटस्ट्रैपेबल बिल्ड्स में क्या अंतर है?

रिप्रोड्यूसिबल बिल्ड्स सुनिश्चित करते हैं कि समान स्रोत कोड समान बाइनरी कलाकृतियों का उत्पादन करे, जबकि बूटस्ट्रैपेबल बिल्ड्स इससे आगे बढ़ते हैं, पूर्व-Existing बाइनरी बीजों की आवश्यकता को समाप्त करके, एक न्यूनतम, ऑडिट करने योग्य स्रोत से पूरी टूलचेन का निर्माण करते हैं।