1 पॉइंट द्वारा GN⁺ 2025-03-03 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • खुद होस्ट किए गए Firefox Sync सर्वर की सेटअप

    • Firefox से LibreWolf पर स्विच करने के बाद, खुद होस्ट किए गए Firefox Sync सर्वर में रुचि हुई.
    • शुरुआत में Mozilla का Sync Server repository मिला, लेकिन वह maintenance के बिना पड़ा था.
    • आगे बढ़ने के लिए Rust-आधारित syncstorage-rs पर स्विच करने का फैसला किया गया.
  • Docker की जटिलता और भ्रम

    • Docker documentation में grpcio और protobuf version matching की समस्या और manual copy निर्देश जैसी उलझन भरी बातें थीं.
    • syncstorage-rs-docker repository मिला, जिससे एक सरल Docker सेटअप मिल गया.
  • सर्वर सेटअप: Docker Compose और MariaDB

    • docker-compose.yaml फ़ाइल में ज़रूरी services जोड़ी गईं.
    • database password सेट करते समय special characters से बचना महत्वपूर्ण है.
    • MariaDB container चलाया गया और initialization script चलाकर database initialize किया गया.
    • पूरी stack को online लाया गया.
  • Caddy का उपयोग करके Reverse Proxy कॉन्फ़िगरेशन

    • Caddy reverse proxy को अपडेट करके उसे नए Syncserver की ओर point किया गया.
    • DNS entry अपडेट की गई और proxy को restart करके सर्वर चलाया गया.
  • सामने आई चुनौतियाँ

    • MariaDB container restart होने पर data persistence की समस्या आई.
    • Docker images और intermediate files की वजह से सर्वर में storage space कम पड़ गया.
    • सही setup steps खोजने में समय लगा.
  • अंतिम विचार

    • खुद होस्ट किया गया Firefox Sync सर्वर सेट करना आसान काम नहीं है.
    • official documentation भ्रमित करने वाला था, लेकिन syncstorage-rs-docker repository की मदद से यह संभव हो पाया.
    • लगभग 2 घंटे लगे, लेकिन यह मेहनत सार्थक रही.

1 टिप्पणियां

 
GN⁺ 2025-03-03
Hacker News राय
  • यह ऐसा सेटअप है जो authentication, email, account metadata जैसी सेवाओं के लिए Mozilla infrastructure का उपयोग करता है
  • अगर account migration संभव हो, तो बाद में इसे जोड़ा जा सकता है, और सभी components को self-host भी किया जा सकता है, लेकिन यह थोड़ा अधिक जटिल है
    • documentation और developer experience में सुधार हो रहा है
  • Garuda Linux, FireDragon browser के लिए अपना Firefox Sync server होस्ट कर रहा है
    • यह Rust-आधारित नहीं, बल्कि sync server के पुराने version का उपयोग कर रहा है
  • व्यक्तिगत अनुभव साझा करते हुए कहा गया कि पहले वाला Python 2 में लिखा version कहीं बेहतर था
    • इसमें Docker या Python की ज़रूरत नहीं है, लेकिन अभी MySQL चाहिए, और sqlite support के लिए एक volunteer मौजूद है
    • मुख्य contributors metrics collection के लिए justification लिखने और नया metrics framework लाने पर ध्यान दे रहे हैं
  • Canvas Browser Extensions का लक्ष्य browser tabs को self-hosted virtual directory tree के साथ sync करना है
    • यह lmdb और roaring bitmap index का उपयोग करता है, और पीछे मुड़कर देखने पर कहा गया कि rxdb या pouchdb का उपयोग करना चाहिए था
    • server component को फिर से लिखा जा रहा है, और नए tools की वजह से इस विचार की सबसे बड़ी सीमा अब समय है
  • Mozilla पर भरोसा करके डेटा सौंपते हैं, लेकिन authentication setup जटिल है, इसलिए public hosted service का उपयोग करना बेहतर हो सकता है
  • Firefox Sync जैसे Floccus को सेट up करना आसान है, अगर सिर्फ bookmark और tab sync चाहिए
  • MySQL और Spanner इस समय supported DB engines हैं, और sqlite तथा Postgres support के लिए काम चल रहा है
    • multi-user instance को Postgres के ज़रिए store करना बेहतर हो सकता है
  • पूछा गया कि Firefox Sync के E2E encrypted होने पर privacy का लाभ वास्तव में क्या है
  • self-hosting solution बहुत जटिल लगता है, और SQLite इस्तेमाल करने वाला एक सरल sync server implementation आदर्श होगा
  • go-syncstorage पूरी तरह deploy नहीं हुआ है, लेकिन इसे कई लाख users के साथ test किया गया है और यह stable है