Show HN: Dillo ब्राउज़र को फिर से जीवित करना
अत्यंत हल्के Dillo वेब ब्राउज़र को पुनर्जीवित करने के प्रयास ने उन उपयोगकर्ताओं से गहरी रुचि आकर्षित की है जो पुराने या कम-विशेषताओं वाले हार्डवेयर पर तेज़, न्यूनतम ब्राउज़िंग को महत्व देते हैं। टिप्पणीकार Dillo की छोटी मेमोरी फ़ुटप्रिंट, प्लगइन-आधारित विस्तारक्षमता, और JavaScript की जानबूझकर अनुपस्थिति को एक ओर सुरक्षा लाभ और दूसरी ओर आज के JS-भारी वेब पर एक बड़ी सीमा के रूप में रेखांकित करते हैं। मेंटेनर का ध्यान Dillo को Linux और BSD वितरणों में जीवित रखने, उसके HTML4/CSS2 लक्ष्य के भीतर मानक समर्थन सुधारने, और संभवतः build system को आधुनिक बनाने पर है, जबकि मुख्यधारा ब्राउज़रों के सरल, कुशल विकल्प के रूप में इसकी niche को बनाए रखना है.
समग्र प्रतिक्रिया
- कई टिप्पणीकार गहरी पुरानी यादों और कृतज्ञता का इज़हार करते हैं; कई लोग आज भी Dillo का रोज़ाना उपयोग करते हैं, खासकर बहुत पुराने या कम-विशेषताओं वाले मशीनों और धीमे कनेक्शनों पर।
- Dillo की छोटी मेमोरी फ़ुटप्रिंट, गति, और सरल कॉन्फ़िग्स व टॉगल्स के जरिए उपयोगकर्ताओं को पूर्ण नियंत्रण का एहसास देने के लिए प्रशंसा की जाती है।
प्रदर्शन और अनुकूलता
- यह टेक्स्ट-प्रधान, कम-CSS वाली साइटों (दस्तावेज़, Wikipedia, HN, “small web” पेज) पर अच्छी तरह काम करता है। अक्सर यह “रीडर मोड” जैसा दिखता है।
- आधुनिक साइटों का रेंडरिंग कमज़ोर है: Acid2 में फेल होता है, HTML 4.1 और CSS 2.1 को लक्ष्य करता है, केवल आंशिक CSS समर्थन है, HTML5 सुविधाएँ नहीं हैं, और लेआउट अक्सर बिगड़ जाते हैं।
- कोई JavaScript इंजन नहीं है; कई JS-भारी या SPA-शैली की साइटें बस सामग्री लोड नहीं करतीं। कुछ साइटें सरल संस्करण सर्व करती हैं यदि user agent को पुराने/embedded प्रोफ़ाइल (जैसे PSP) पर सेट किया जाए।
- frames जैसी कुछ legacy सुविधाएँ अनुपस्थित हैं, जिससे कुछ दस्तावेज़ों के लिए इसका उपयोग सीमित हो जाता है।
सुरक्षा और JavaScript
- कई लोग JS के अभाव को एक बड़ा सुरक्षा और प्रदर्शन लाभ मानते हैं, खासकर संदिग्ध लिंक खोलने के लिए।
- अन्य लोग तर्क देते हैं कि यह भ्रामक है: Dillo एक unsandboxed C/C++ कोड है जो फिर भी जटिल फ़ॉर्मैट्स पार्स करता है और आदर्श रूप से इसे container (जैसे, bubblewrap) में चलना चाहिए।
- एक हल्के इंजन (जैसे, QuickJS) के जरिए JS जोड़ने पर चर्चा होती है; मेंटेनर और कई टिप्पणीकार इसे Dillo के लक्ष्यों के विरुद्ध और बड़ा सुरक्षा/जटिलता बोझ मानते हैं, हालांकि कुछ नोट करते हैं कि JS पुराने हार्डवेयर पर भी स्वीकार्य रूप से चल सकता है।
प्लगइन और एक्सटेंशन सिस्टम (DPI)
- DPI को व्यापक रूप से सरल और शक्तिशाली माना जाता है: कई मुख्य सुविधाएँ (बुकमार्क, डाउनलोड, कुकीज़, कुछ प्रोटोकॉल) stdin/stdout के जरिए संचार करने वाले प्लगइन्स हैं।
- बाहरी प्लगइन्स Gopher, Gemini, git, man:, आदि जैसे प्रोटोकॉल जोड़ते हैं; forks/ports (जैसे Dillo+ और अन्य) इसे और अधिक प्रोटोकॉल्स के साथ विस्तारित करते हैं।
- Gemini प्लगइन का certificate pinning से जुड़ा UX सक्रिय रूप से चर्चा में है और सुधार किया जा रहा है।
बिल्ड, पोर्टेबिलिटी, और रखरखाव
- नई stewardship का लक्ष्य Dillo को distros में बनाए रखना, test suites/fuzzing जोड़ना, और अंततः build system को आधुनिक बनाना (CMake/Meson बनाम make/autotools बनाए रखना) है।
- cross-platform CI और hosting के trade-offs पर बहस होती है: दृश्यता और CI के लिए GitHub का उपयोग किया जा रहा है, हालांकि कुछ लोग self-hosted या federated forges को प्राथमिकता देते हैं।
- OpenSSL/LibreSSL के साथ SSL/TLS समस्याएँ रिपोर्ट की गईं और जल्दी ठीक कर दी गईं; macOS और विभिन्न niche architectures (m68k, VAX, Atari, netbooks, Raspberry Pi Zero) सक्रिय लक्ष्य हैं।
उपयोग के मामले और विकल्प
- सामान्य उपयोग: पुराने हार्डवेयर पर हल्का browsing, स्थानीय दस्तावेज़, smolweb-शैली की सामग्री, और अविश्वसनीय URLs के लिए एक “safe” viewer के रूप में।
- तुलना Dillo को text-mode ब्राउज़रों (lynx/elinks/w3m) से लेकर Dillo/Netsurf तक और फिर पूर्ण ब्राउज़रों (Firefox/Chromium) तक एक स्पेक्ट्रम पर रखती है।
- अलग-अलग niches के लिए जिन विकल्पों का उल्लेख हुआ: Netsurf, Pale Moon, K-Meleon, Otter, text-mode clients, और विभिन्न Electron-light replacements; आम सहमति यह है कि Dillo सबसे हल्कों में से एक है, लेकिन अनुकूलता के मामले में सबसे कमज़ोर भी।