إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

تنصيب البرامج بدون انترنت (انشاء ملف تنفيذي)

تقليص
هذا موضوع مثبت
X
X
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • [شرح] تنصيب البرامج بدون انترنت (انشاء ملف تنفيذي)

    السلام عليكم
    سحاول أن استعرض الأمر بصفة مرتبة و مبسطة تسهل على المبتدأ ان يخوض فيها | بسم الله

    ١ - المشكلة:
    - ليس من السهل ان تنصب برنامج على لينكس بدون انترنت لانها تتطلب اعتماديات و تختلف من جهاز لآخر
    ٢ - الحل:
    - سنقوم على إنشاء ملفات تنفذذية مثل exe على ويندوز لكل البرامج التي نريدها
    ٣ - ما هي المتطلبات؟:
    - أبنتو ١٢٫٠٤ قرص حي مع جهاز قادر على الاقلاع بها ثم العمل عليها
    - وجود اتصال انترنت في حالة احببنا أن ننشأ ملف تنصيب لبرنامج ما
    - البرنامج makeself (من هنا نزل حزمة لأبنتو ١٢٫٠٤ بالمعمارية التي تود اذا كنت تنوي تنصيبه يدويا بإستخدام dpkg)
    - سكريبت التنصيب المسمى installer (حمل نسخة مضغوطة منه بالمرفقات)
    - الأداة Zenity لإنشاء مربعات الحوار على gtk (موجودة افتراضيا مع أبنتو ١٢٫٠٤ القياسية)
    - قرص فلاش لنقل البرنامج إلى الجهاز الآخر (يمكنك ان تضعه على قرص جهازك الحالي)
    ٤ - ما هي الشروط؟:
    - أن يكون بطنك مملوء :*)
    - نظام أبنتو ١٢٫٠٤ نظيف سنقوم من خلاله بإنشاء البرنامج التنفيذي (في حالتنا هذه سنقلع من قرص حي)
    - أن يكون الجهاز الذي سينصب عليه البرنامج التنفيذي مستقبلا منصب ابنتو ١٢٫٠٤ قياسيا
    ٥ - دعنا نبدأ!! :
    - ادخل قرص حي أبنتو ١٢٫٠٤ و اقلع منه بجهاز مربوط بالنت
    - تنصيب makeself
    من النات بالامر:
    كود:
    sudo apt-get install makeself

    أو يدويا بالأمر:
    كود:
    sudo dpkg -i /patch/makeself*****.deb

    - مثلا نريد ان نعمل برنامج تنفيذي لـ Vlc , فالخطوة الأول ننشأ دليل بالاسم vlc بدليل المنزل بإستخدام الماوس أو الامر:
    كود:
    mkdir ~/vlc

    - ندخل الى الدليل vlc من خلال الطرفية بالامر:
    كود:
    cd ~/vlc

    - هذا الامر يقوم بجلب جميع روابط الاعتماديات و اسماءهم بالإضافة إلى مفتاح md5 لكل واحد و يضعهم في ملف اسمه vlc بالدليل vlc:
    كود:
    apt-get -qq --print-uris install vlc > vlc

    كما ترى انت لست في حاجة إلى sudo , يمكنك ان تلقي نظرة على الملف لتتأكد
    - سنقوم بالان بإستخدام اللغة awk للحصول على ملف جديد اسمه vlc.sh انطلاقا من الملف vlc يكون به روابط الحزم فقط دون الخرابيط الإضافية:
    كود:
    awk '{gsub("\x27", "", $0); print $1}' < vlc > vlc.sh

    يمكنك أن تلقي نظرة على الملف vlc.sh لترى روابط حزم deb فقط
    - الأن سنقوم بتنزيل جميع تلك الروابط التي بالملف vlc.sh بالامر wget في الدليل الذي نتموقع به حاليا vlc من خلال الأمر:
    كود:
    wget -i vlc.sh

    يمكنك ان ترى انه قد تشكل لديك العديد من الحزم بالدليل vlc و كل ما عليك الإنتظار حتى ينتهي
    - نحن نحتاج إلى قائمة مصادر apt و التي سنفكها لاحقا بالنظام المستقبل, نقوم بذلك الأمر:
    كود:
    sudo cp -r /var/lib/apt/lists ~/vlc

    انت ترى اننا نحتاج إلى sudo في هذه
    - الآن نضيف الى هذه الطبخة ملف installer بالماوس او بالأمر:
    كود:
    cp /patch/installer ~/vlc

    - الان يمكنك مطالعة السكريبت installer بأي محرر مثل nano او gedit ستلاحظ أنه صمم للبرنامج appname
    سنغير appname بـ vlc على مستتوى كامل الملف بالأمر:
    كود:
    sed -i 's/appname/vlc/gI' /patch/installer

    ملاحظة هامة: اذا كان اسم البرنامج يختلف عن ما هو لدى apt يجب عليك تعديل اسمه كما هو لدى apt بسطري التنصيب على مستوى السكريبت installer
    أي أن هذا السطر على مستوى سكريب installer
    كود:
    sudo apt-get -y --force-yes --no-download --ignore-missing install Vlc

    يصبح:
    كود:
    sudo apt-get -y --force-yes --no-download --ignore-missing install vlc

    لأن البرنامج Vlc عند apt إسمه vlc و ليس Vlc أو vlc-2.0.1
    أي ان الإسم يكون هو الاسم الذي طلبت به معتمدياته (يمكن أن يكون أكثر من واحد-حزمة لها معتمديات- فهذا صديقنا apt)
    - شيء أخر سنعدله بداخل السكريبت و هو مكان تنصيب البرنامج الذي هو Internet و سنغيره إلى Media , يدويا على مستوى السطر:
    كود:
    "<b>appname Installed</b>\nFind it in your applications menu under <i>Internet</i>"

    يصبح:
    كود:
    "<b>Vlc Installed</b>\nFind it in your applications menu under <i>Media</i>"

    او نقوم بذلك بالأمر:
    كود:
    sed -i 's/Internet/Media/gI' /patch/installer

    - الان نفعل خيار التنفيذ لسكريبت installer:
    بالماوس ننقر يمينا و نختار (خصائص-Properties) و من التبويب (التصاريح-permissions) نفعل الإختيار (السماح بإمكانية تنفيذ الملف كبرنامج-Allow exexuting file as program)
    أو نقوم بذلك من خلال الطرفية بالأمر:
    كود:
    chmod +x ~/vlc/installer

    - الأن نقوم بإنشاء البرنامج التنفيذي بالأمر:
    كود:
    sudo makeself --nox11 --bzip2 ~/vlc vlc.fzz "vlc RSS Reader" ./installer

    بعد الإنتهاء ستجد ملف تنفيذي بالمكان الذي نفذت منه هذا الامر إسمه vlc.fzz
    vlc.fzz يشبه ملف التنصيب exe على ويندوز و لكن للينكس يمكنك من تنصيب vlc بدون انترنت على أبنتو ١٢٫٠٤ المنصبة قياسيا
    انقر عليه فقط نقرتين و اضغط (تشغيل في الطرفية-Run in Terminal)
    و إتبع الخطوات

    - صورة على البساطة:
    اضغط على الصورة لعرض أكبر. 

الإسم:	‏لقطة الشاشة 2012-04-29 في 11‎.29‎.19 ص.png 
مشاهدات:	1 
الحجم:	696.9 كيلوبايت 
الهوية:	852240
    ملاحظة:
    /patch/
    هو المسار لذلك الملف أو المجلد فإذا كان موجود بالدليل الحالي احذف /patch/ أي أمر مثل:
    كود:
    sed -i 's/appname/vlc/gI' /patch/installer

    يصبح هكذا إن كان ملف installer بالدليل vlc و انت تتموقع بهذا الدليل:
    كود:
    sed -i 's/appname/vlc/gI' installer
    المصدر:
    http://wiki.bodhilinux.com/doku.php?..._-_howto_build
    الملفات المرفقة
    التعديل الأخير تم بواسطة فرحات بكاري; الساعة 29-04-2012, 01:52 PM.
    Simplification is not simplicity, I chose the Simplicity

    أنت مبتدىء و لم تجد ضالتك => إبحث بمحرك المجتمع , أيضا يمكنك الإطلاع على المكتبة
    لا إله إلا الله محمد رسول الله

  • #2
    اشاطرك الراي في ضرورة تسهيل العمل على من يفتقر للخبرة، لكن اعتقد ان السكريبت غير عملي في كل الظروف

    جرب العمل عليه بعد تحديث نظامك وتغيير بعض المستودعات واعطني رايك.

    في حالات اخرى انصح باتباع احدى الطريقتين هنا : الاولى + الثانية
    وتوجد طرق كثيرة رسومية ونصية . واعتقد ان هذه الخاصية اصبحت متوفرة ان لم اكن مخطئا في برنامج software-center ان ربطنا الامر فاوبنتو

    وهذه مراجع أخرى مفيدة : الاول + الثاني + الثالث + الرابع + الخامس

    توجد الكثير من المواضيع كذلك هنا في المجتمع ، بعضها قديم وبعضها جديد ، ربما يساعد انشاء موضوع في الموسوعة على الاحاطة بجميع الحالات
    او على ربما يكون هناك سكريبت يسهم هذا العمل على اعجوبة او سبيلي

    تعليق


    • #3
      لكن اعتقد ان السكريبت غير عملي في كل الظروف
      و لكن عملي في شروط
      يمكنك أن ترى عدد البرامج الذي تم عمله لتوزيعة bodhilinux بهذا السكريبت
      جرب العمل عليه بعد تحديث نظامك
      لم أجرب و لكن أعطيك رأيي
      لا تقم يتحديث النظام فأنت مستخدم لا تملك أنترنت
      يمكنك فقط تحديث النظام بعد مدة كبيرة و تشكيل تحديث تنفيذي تسميه sp1.fzz مثلا
      و أي برنامج تنفيذي تبنيه عليه يصبح اعتمادية له يمكنك ذلك من خلال:
      كود:
       sudo apt-get update
      و
      كود:
      apt-get -qq --print-uris install upgrade > sp1
      أو
      كود:
      apt-get -qq --print-uris install dist-upgrade > sp1
      و لا تنسى السكريبت
      انظر هذا تحديث معمول بهذا السكريبت
      وتغيير بعض المستودعات
      لم أجرب و لكن أعطيك رأيي
      ضعها أين المشكل !!
      توجد الكثير من المواضيع كذلك هنا في المجتمع
      الهدف هو تنصيب البرامج مثل ويندوز و ليس نقل الحزم
      واعتقد ان هذه الخاصية اصبحت متوفرة ان لم اكن مخطئا في برنامج software-center ان ربطنا الامر فاوبنتو
      لا يوجد شيء, بل أصبح ممل مثل mac app store (لا يعطيك إمكانية التنصيب إذا كنت غير متصل)
      التعديل الأخير تم بواسطة فرحات بكاري; الساعة 29-04-2012, 04:01 PM.
      Simplification is not simplicity, I chose the Simplicity

      أنت مبتدىء و لم تجد ضالتك => إبحث بمحرك المجتمع , أيضا يمكنك الإطلاع على المكتبة
      لا إله إلا الله محمد رسول الله

      تعليق


      • #4
        ملاحظة:

        - تحتاج إلى اضافة مصدر universe لبرنامج vlc من خلال فتح (مركز برمجيات أبنتو-ubuntu software center) و كتابة vlc ثم الضغط على الزر (استخدم هذا المصدر-use this source)
        - هناك مشكل أنه عليك نسخ المجلد /var/lib/apt/list/ يدويا إلى النظام المستقبل, يمكنكم التفكير في معالجة هذا الامر ,سأحاول توفير حل قريبا إن أمكن لأن الأمر يتطلب منك وقت متواصل و العمل على نظام من قرص حي لهذا يصيبك الملل
        Simplification is not simplicity, I chose the Simplicity

        أنت مبتدىء و لم تجد ضالتك => إبحث بمحرك المجتمع , أيضا يمكنك الإطلاع على المكتبة
        لا إله إلا الله محمد رسول الله

        تعليق


        • #5
          موضوع زاخر وجميل جدا

          ولاثراء الموضوع : appimagekit التي تستخدم في portable linux apps

          الطريقه سهله وبسيطه جدا وتعتمد علي تطبيقتين فقط

          ربما تجربها وبعدها تعطينا شرحا تفصيليا عنها


          تعليق


          • #6
            أخطاء تم تصحيحها

            المشاركة الأصلية بواسطة فرحات بكاري مشاهدة المشاركة

            - الأن نقوم بإنشاء البرنامج التنفيذي بالأمر:
            كود:
            sudo makeself --nox11 --bzip2 ~/vlc vlc.fzz "vlc RSS Reader" ./installer

            يمكنك ان تعبر مكان اللون الأزرق التعبير الذي تريد مثل "VideoLAN"

            المشاركة الأصلية بواسطة فرحات بكاري مشاهدة المشاركة
            - هناك مشكل أنه عليك نسخ المجلد /var/lib/apt/list/ يدويا إلى النظام المستقبل, يمكنكم التفكير في معالجة هذا الامر ,سأحاول توفير حل قريبا إن أمكن لأن الأمر يتطلب منك وقت متواصل و العمل على نظام من قرص حي لهذا يصيبك الملل
            أعتذر هنا فكان من المفروض أن أقول نسخ الملف etc/apt/sources.list , تم حل المشكلة هكذا (جاري التأكد) قريبا سأذكر ما الذي يجب القيام به٫
            Simplification is not simplicity, I chose the Simplicity

            أنت مبتدىء و لم تجد ضالتك => إبحث بمحرك المجتمع , أيضا يمكنك الإطلاع على المكتبة
            لا إله إلا الله محمد رسول الله

            تعليق


            • #7
              الحل:
              ما يجب القيام به:
              ١- تحتاج إلى اضافة مصدر البرامج/الحزم التي تريدها (ابحث في المجتمع عن كيفية اضافة المصادر) ثم عمل sudo apt-get update قبل الخوض في هذه العملية
              ٢- تحتاج إلى اضافة الملف sources.list بالدليل vlc قبل إنشاء الحزمة بـ makeself بالماوس أو يدويا:
              كود:
              cp /etc/apt/sources.list ~/vlc
              ٣- عليك تحميل سكريبت installer المعدل (بالمرفقات) فهو ينسخ ملف sources.list وقت التنصيب مكان القديم و يعمل نسخ احتياطي لهذا الاخير و يسترده بعد الإكتمال أو الإلغاء

              إضافة:
              - تحدث هذه المشكل لانه لم يتم سرد هذا في التوثيق
              - السكريبت الحالي لبودهي لينكس تم فيه عمل متغيرات و دوال لتفاذي التكرار و هذا ما يجعل التعديل سهل على الرغم من أنه أربعة اسطر!!
              فيكفيك أن تعدل الإسم في بداية السكريبت بدل إستخدام sed

              ملاحظة:
              المشاركة الأصلية بواسطة فرحات بكاري مشاهدة المشاركة
              كود:
              apt-get -qq --print-uris install upgrade > sp1
              أو
              كود:
              apt-get -qq --print-uris install dist-upgrade > sp1
              أحذف ما هو بالأحمر

              هذا ليس موضوع للمبتدأئين!!
              هذا فيديو يوضح الأمر و لقد اضفت له تعليقين لانه قديم
              + أنا آسف بخوص الصوت (يمكنك أن تضه كتم)
              الملفات المرفقة
              Simplification is not simplicity, I chose the Simplicity

              أنت مبتدىء و لم تجد ضالتك => إبحث بمحرك المجتمع , أيضا يمكنك الإطلاع على المكتبة
              لا إله إلا الله محمد رسول الله

              تعليق


              • #8
                غريبة ...... لم يرحب أي عضو بعودة أخينا فرحات

                عودا حميدا يا رجل ..أين كنت ؟؟

                تعليق


                • #9
                  كيفية التعامل مع الملفات التنفيذية المنتجة:

                  - إعطاء إمكانية التنفيذ
                  كود:
                   sudo chmod 577 ./vlc.fzz
                  - التنصيب
                  كود:
                   ./vlc.fzz
                  - تفحص محتوى الأرشيف و مطابقة md5
                  كود:
                   ./vlc.fzz --check
                  - الإستعلام عن ملومات
                  كود:
                   ./vlc.fzz --info
                  - رؤية كامل قائمة ملفات المضمنة
                  كود:
                   ./vlc.fzz --list
                  - فك الضغط في المجلد الحالي بدون التنصيب
                  كود:
                   ./vlc.fzz --keep --noexec
                  - وضع التصحيح (نفعي جدا)
                  كود:
                   ./vlc.fzz -debug
                  - إستعراض خيارات غير مذكورة هنا
                  كود:
                   ./vlc.fzz --help
                  المصدر:
                  http://wiki.bodhilinux.com/doku.php?..._cli_arguments
                  Simplification is not simplicity, I chose the Simplicity

                  أنت مبتدىء و لم تجد ضالتك => إبحث بمحرك المجتمع , أيضا يمكنك الإطلاع على المكتبة
                  لا إله إلا الله محمد رسول الله

                  تعليق


                  • #10
                    10/10

                    ممتاز ،،
                    الحمد لله على سلامتك ،
                    (لَا تَحْسَبَنَّ الَّذِينَ يَفْرَحُونَ بِمَا أَتَوا وَّيُحِبُّونَ أَن يُحْمَدُوا بِمَا لَمْ يَفْعَلُوا فَلَا تَحْسَبَنَّهُم بِمَفَازَةٍ مِّنَ الْعَذَابِ وَلَهُمْ عَذَابٌ أَلِيمٌ)
                    آل عمران 188
                    قال رسول الله صلى الله عليه و سلم :
                    {لا يشكر الله من لا يشكر الناس}
                    {من كان يؤمن بالله واليوم الآخر،فليقل خيراً أو ليصمت}

                    جميع المساهمات الحاملة لهذا التوقيع تخضع لرخصة وقف
                    أسأل الله العظيم رب العرش العظيم أن يحسن من حال أمتي

                    تعليق


                    • #11
                      نفس الفيديو على اليوتوب

                      Simplification is not simplicity, I chose the Simplicity

                      أنت مبتدىء و لم تجد ضالتك => إبحث بمحرك المجتمع , أيضا يمكنك الإطلاع على المكتبة
                      لا إله إلا الله محمد رسول الله

                      تعليق


                      • #12
                        الآن أصبح لا مجال للتراجع أمام المبتدئين فقد تم اضافة التعليقات التوضيحية لكل شيء (يوتوب)
                        Simplification is not simplicity, I chose the Simplicity

                        أنت مبتدىء و لم تجد ضالتك => إبحث بمحرك المجتمع , أيضا يمكنك الإطلاع على المكتبة
                        لا إله إلا الله محمد رسول الله

                        تعليق


                        • #13
                          مشكوووووووووووور

                          تعليق

                          يعمل...
                          X