هذا كل شيء. خادم استنساخ باستيبل باطن الحد الأدنى ، في جولانج. وهو يدعم عمليتين فقط:
ماذا تحتاج؟
binnit هو واحد قابل للتنفيذ مع عدم وجود تبعيات . لا تحتاج إلى خادم ويب. لا تحتاج إلى خادم SQL. لا تحتاج إلى أي مكتبة خارجية.
يقدم binnit المعاجين في التنسيق:
http://<server_name>/abcdef1234567890
ويخزنهم في مجلد على الخادم ، ملف واحد لكل معجون ، اسم ملفه مطابق لمعرف اللصق. يتم الحصول على المعرف الفريد من المعجون من SHA256 من تسلسل العنوان والوقت والمحتوى. التقديم هو الحد الأدنى ، عن قصد ، ولكن بناءً على قالب قابل للتخصيص.
يتم تكوين binnit حاليًا من خلال ملف تكوين مفتاح بسيط = VALUE ، يمكن تحديد اسمه على سطر الأوامر من خلال الخيار -c <config_file> . إذا لم يتم تحديد ملف تكوين ، binnit يبحث عن ./binnit.cfg . الخيارات القابلة للتكوين هي:
كما هو الحال مع الخدمات الأخرى التي تشبه Pastebin ، يمكنك إرسال معجون إلى binnit باستخدام curl . على سبيل المثال ، إذا كان خادم binnit الخاص بك يعمل على http://servername.net ، يمكنك لصق ملف هناك باستخدام:
curl -F 'paste=<myfile' http://servername.net
والحصول على إخراج المعرف المرتبط بالمعجون الذي تم إنشاؤه حديثًا. بصورة مماثلة
mylongcommand | curl -F 'paste=<-' http://servername.net
سوف يلصق إخراج mylongcommand إلى http://servername.net ، وإظهار على إخراج معرف المعجون الجديد.
هناك المئات من الخوادم الشبيهة بالبسترة في البرية. لكن الغالبية العظمى منها هي برامج مبالغ فيها ، اعتمادًا على الكثير من المكتبات/الأطر/الأدوات ، وتوفير مجموعة كبيرة من الميزات غير المجدية ، وتعني قدراً عديمة الفائدة من التعقيد.
يجب أن يكون خادم اللصق قادرًا على القيام بأمرين ، 1) إنشاء معجون جديد وإعادة معرفه ، و 2) استرداد معجون موجود باستخدام معرفه. يقوم binnit فقط وهذين الأمرين ، بأبسط طريقة ممكنة ، دون أي تبعية خارجية. إذا كنت بحاجة إلى أكثر من ذلك ، فإن binnit ليس لك. لكن هل تحتاج حقًا إلى أي شيء آخر؟
يبدو أنه لا يتم تحقيق الكمال عندما لا يوجد شيء آخر لإضافته ، ولكن عندما لا يوجد شيء آخر لإزالته (أنطوان دي سانت exupéry)
يهدف binnit إلى أن يكون الحد الأدنى حقًا. وهو يتألف من حوالي 500 سطر من رمز مصدر Golang في المجموع ، بما في ذلك:
إذا كنت ترغب في تجريد binnit إلى أبعد من ذلك ، يمكنك التفكير في الإزالة:
لا يمكنك إزالة عبارات الترخيص على كل ملف مصدر.
binnit هو حقوق الطبع والنشر (2017) بقلم Vincenzo "Katolaz" Nicosia.
binnit هو برنامج مجاني. يمكنك استخدامه وتعديله وإعادة توزيعه بموجب شروط ترخيص GNU Affero العام ، أو الإصدار 3 من الترخيص ، أو في خيارك ، أي إصدار لاحق. يرجى الاطلاع على الترخيص. md للحصول على التفاصيل.