حلّ المجتمع

أنشئ كشكًا بشاشة لمس على ZimaBoard 2 باستخدام Docker وX.Org وChromium ولوحة معلومات محلية

A detailed April 2026 community tutorial for turning a ZimaBoard 2 1664 on ZimaOS 1.5.4 into a fullscreen touchscreen kiosk. The author ran Debian/X.Org/Chromium inside Docker, exposed Intel graphics and udev input, hosted the dashboard with nginx, added a touch-event workaround, and later shared photos of the working 24/7 home-assistant setup.

يُعد هذا المصدر مثالًا قويًا على استخدام ZimaOS كمضيف لجهاز مخصص، بدلًا من محاولة تحويل طبقة نظامه للقراءة فقط إلى توزيعة سطح مكتب. وبما أن ZimaOS لا يحتوي على apt البيئة أو سطح مكتب X.Org مدمج، أنشأ المؤلف مكدس الكشك كاملًا داخل Docker: Debian + X.Org + Chromium للعرض، بالإضافة إلى حاوية nginx صغيرة للوحة المعلومات المحلية.

كانت النتيجة كشكًا يعمل بشاشة لمس مقاس 22 بوصة، متصلًا بـ ZimaBoard 2 1664. يظل هذا بناءً متقدمًا من المجتمع، وليس وضع سطح مكتب مدعومًا من IceWhale. فهو يستخدم شبكات المضيف، ووصولًا مباشرًا إلى الرسومات/الإدخال، وحاوية كشك ذات امتيازات، لذا ينبغي للمستخدمين فهم المقايضات المتعلقة بالأمان والوصول إلى الأجهزة قبل تطبيقه.

كشك لوحة معلومات مكتمل بشاشة لمس مقاس 22 بوصة، متصل بـ ZimaBoard 2 ويعرض لوحة معلومات منزلية مخصصة بملء الشاشة
شارك مؤلف المصدر الكشك المكتمل، وهو يعمل كلوحة معلومات دائمة التشغيل بجوار الحاسوب الرئيسي.

يعمل الكشك بمكدس سطح مكتب داخل Docker

يبدأ Dockerfile المصدر من Debian Bookworm Slim ويثبّت X.Org وlibinput وOpenbox وChromium وأدوات X11 والخطوط وMesa. ويبقى المضيف على ZimaOS، بينما توجد بيئة المستخدم الرسومية داخل الحاوية.

وهذا بالضبط نوع عزل أحمال العمل الذي صُمم نموذج أجهزة ZimaOS لتشجيعه.

تُكشَف وحدة معالجة الرسومات Intel لحاوية الكشك

يستخدم الدليل modesetting السائق ويمرر جهاز Intel DRM إلى الحاوية. ووجد المؤلف تحديدًا أن دعم Mesa المطلوب احتاج إلى backports لإصدار Bookworm من أجل مكدس رسومات N100 المستخدم في ZimaBoard 2.

تستخدم أجهزة ZimaBoard 2 الحالية معالج Intel N150، لذا ينبغي لمن يعيدون تنفيذ الدليل التحقق من دعم Mesa/X.Org الحالي بدلًا من افتراض أن تفاصيل N100 التاريخية مطابقة.

إدخال اللمس يأتي عبر طبقة الإدخال/Udev للمضيف

كانت إشارة العرض تستخدم HDMI/miniDP، بينما اتصلت وحدة التحكم باللمس عبر USB. ويفحص الدليل /proc/bus/input/devicesويعيّن جهاز الأحداث الصحيح في X.Org، ويشارك /run/udev حتى تتمكن الحاوية من التعرّف على أجهزة الإدخال.

إعداد كشك ZimaBoard 2 مع شاشة لمس ومكبرات صوت وحاسوب مكتبي رئيسي في مساحة Home Assistant المنزلية نفسها
كانت شاشة اللمس جزءًا من بنية أوسع منخفضة استهلاك الطاقة، حيث ظل Zima متصلًا بالإنترنت بينما كان الحاسوب الرئيسي القوي في وضع السكون حتى الحاجة إليه.

حاوية nginx منفصلة تعرض لوحة المعلومات

يعمل المصدر nginx:alpine على منفذ غير مستخدم من قِبل ZimaOS (8888 في المثال)، وتُحمّل ملفات لوحة المعلومات بوضع القراءة فقط. ويفتح Chromium عنوان URL المحلي هذا في وضع الكشك.

يتيح استخدام حاوية ويب منفصلة تحديث ملفات لوحة المعلومات بسهولة من دون إعادة بناء الحاوية الرسومية.

لا تُعِد استخدام المنفذ 80 الخاص بـ ZimaOS للوحة المعلومات

يشير الدليل صراحةً إلى أن ZimaOS يستخدم المنفذ 80 بالفعل للوحة معلوماته. إذا فتح Chromium الصفحة الخطأ، فتحقق من منفذ لوحة المعلومات المخصصة و KIOSK_URL القيمة بدلًا من تغيير سلوك ZimaOS بشكل غير متوقع.

أضاف المؤلف حلًا بديلًا لأحداث المؤشر لنقرات اللمس

في لوحة المعلومات المصدرية، كان بإمكان حركة بسيطة جدًا للإصبع أن تمنع Chromium من تشغيل onclick معالجات الأحداث. استبدل المؤلف معالجة النقر بـ pointerup بالإضافة إلى عتبة للحركة.

ذلك JavaScript خاص بالتطبيق. وينبغي لواجهات الويب الحديثة المصممة للمس أن تفضّل عناصر تحكم ملائمة للمؤشر واللمس بدلًا من التنفيذ العام لـ onclick السلاسل.

وضع الامتياز هو أكبر تنازل أمني

يشغّل المصدر حاوية الكشك باستخدام --privileged. فهذا يوفّر وصولًا واسعًا إلى الأجهزة ونواة المضيف، وهو أكثر تساهلًا بكثير من حاوية لوحة معلومات عادية.

إذا أعدت تنفيذ الإصدار، فاختبر أولًا ما إذا كان /dev/driتُعد عمليات تركيب , input-device وudev، إلى جانب الإمكانات محدودة النطاق، كافية. أبقِ لوحة المعلومات على شبكة LAN موثوقة.

يستخدم المصدر unless-stopped للاسترداد التلقائي

يستخدم كلٌّ من حاوية nginx وحاوية الكشك restart: unless-stopped السلوك بحيث تعود الشاشة بعد إعادة تشغيل ZimaOS. خزّن Dockerfile وتهيئة X.Org ونقطة الدخول ولوحة المعلومات ضمن /DATA التخزين.

يمكن لـ ZimaOS الحالي حزم هذا بصورة أكثر قابلية لإعادة الإنتاج باستخدام Compose

يدعم ZimaOS الحالي استيراد ملفات Docker Compose/YAML القياسية. وبدلًا من صيانة عدة ملفات طويلة docker run الأوامر، ويمكن للمستخدم المتقدم التعبير عن الخدمتين معًا، وسياسات إعادة التشغيل، والأجهزة، ووحدات التخزين، والشبكات في ملف Compose واحد خضع للمراجعة.

استخدم نموذج Compose الحالي في ZimaOS.

حاسوب مكتبي كبير مخصص يُستخدم إلى جانب كشك ZimaBoard 2 ومركز المنزل الذكي المتصلين دائمًا
يُبقي التصميم الأوسع للمؤلف ZimaBoard 2 متصلًا بالإنترنت على مدار الساعة، ولا يشغّل الحاسوب الرئيسي كثيف استهلاك الطاقة إلا لأحمال العمل الأثقل.

الأسئلة الشائعة حول كشك شاشة اللمس

هل يحتاج ZimaOS إلى تثبيت apt أو بيئة سطح مكتب على المضيف؟

لا. يُبقي المصدر عمدًا X.Org وOpenbox وMesa وChromium داخل Docker.

هل هذا وضع سطح المكتب الرسمي في ZimaOS؟

لا. هذا إصدار من المجتمع طلبت IceWhale الإذن بمشاركته مع ذكر المصدر.

لماذا تُعد حاوية الكشك عالية الخطورة مقارنةً بتطبيق عادي؟

يمنح المصدر الحاوية وضع الامتياز، إلى جانب وصول مباشر إلى الرسومات وأجهزة الإدخال، مما يقلل من عزل Docker.