मुझे निम्नलिखित समस्या है: रास्पियन जेसी (संस्करण 4.4.26-v7 +) पर चलने वाले रास्पपी 3 बी का उपयोग करके मैं स्टार्टअप पर निष्पादित होने वाली एक स्व-लिखित अजगर स्क्रिप्ट के जीयूआई को पसंद करूंगा।
मुझे पता है कि यह सवाल इस वेबसाइट के साथ-साथ दूसरों पर भी पूछा गया है, लेकिन जैसा कि रास्पियन बदलता रहता है और मेरे लिए काम करने से पहले सुझाए गए समाधानों में से कोई भी (नीचे देखें), मैं फिर से पूछना चाहूंगा।
मेरी समझ से, मुझे XServer लोड करने और बाद में अपनी स्क्रिप्ट निष्पादित करने की आवश्यकता है। पूरे डेस्कटॉप को लोड करने के बजाय ऐसा होना चाहिए।
इसे प्राप्त करने का एक तरीका LXDE ऑटोस्टार्ट फ़ाइल ( इस उत्तर में उल्लिखित ) के माध्यम से माना जाता है । मैंने फ़ाइल के /etc/xdg/lxsession/LXDE-pi/autostart
साथ-साथ फ़ाइल को भी संपादित किया /etc/xdg/lxsession/LXDE/autostart
(पूर्व में मूल रूप से तीन पंक्तियों के बजाय चार पंक्तियाँ थीं जैसा कि पोस्ट में सुझाया गया है) - पंक्तियों को जोड़ते हुए @sudo python /full/path/to/file.py
और @openbox
, लेकिन मेरा पाई अभी भी डेस्कटॉप में बूट होता है और स्क्रिप्ट को स्वचालित रूप से निष्पादित नहीं करता है। नोट: मैंने केवल स्क्रिप्ट लाइन और स्क्रिप्ट लाइन को एक साथ या तो एक फाइल के लिए और दोनों फाइलों के लिए एक साथ खोलने की कोशिश की।
एक अन्य रणनीति में rc.local फ़ाइल शामिल है (जैसा कि आधिकारिक प्रलेखन में सुझाव दिया गया है )। हालाँकि, केवल जोड़ने से python /full/path/to/file.py &
काम नहीं चला (क्योंकि अभी भी मेरा GUI गायब था) और आगे जोड़ने में startx
मदद नहीं मिली क्योंकि मैं स्पष्ट रूप से अजगर स्क्रिप्ट के साथ startx को लिंक नहीं कर सका और पूर्व ने इसे शुरू होने के तुरंत बाद बंद कर दिया।
कुछ का सुझाव है , कि (इसके अतिरिक्त) .xinitrc का उपयोग किया जाना चाहिए। हालांकि, यह काम नहीं किया:
su -c python /full/path/to/file.py pi
और, अंतिम लेकिन कम से कम, किसी भी तरह से, यह init.d का उपयोग करने योग्य होना चाहिए - लेकिन मुझे इस पर अभी तक विवरण नहीं मिला है।
मैं वास्तव में सही दिशा की ओर किसी भी संकेत की सराहना करूंगा। मेरी गलती कहाँ है? Rc.local या .xinitrc में मेरी लाइन कैसी दिखनी चाहिए? या पिक्सेल में स्विच से संबंधित बड़े बदलाव हुए हैं और मुझे कुछ और करने की कोशिश करनी चाहिए?
कुछ अतिरिक्त जानकारी: स्क्रिप्ट को sudo अधिकारों की आवश्यकता है। यह पायथन 2.7 में लिखा गया है, जीयूआई टिंकर का उपयोग कर रहा है। जीयूआई स्क्रीन को पूरी तरह से भरता है, इसलिए पृष्ठभूमि अप्रासंगिक हैं। स्क्रिप्ट को हमेशा के लिए चलाने के लिए माना जाता है (या जब तक यह GUI के माध्यम से उपयोगकर्ता इनपुट द्वारा रोका नहीं जाता है) और वाईफाई और ईथरनेट जैसी सिस्टम सेवाओं का उपयोग करता है।
अधिक जानकारी: सभी स्थानीय रूप से हो रही है।
स्पष्टता: अब तक मैंने नेट की खोज में 8 घंटे से अधिक समय बिताए, विभिन्न प्रारंभिक बिंदुओं से ट्यूटोरियल आज़माया या उन्हें एक साथ मिलाया। मैं इस नतीजे पर पहुंचा, कि या तो मेरी स्क्रिप्ट (जो पिक्सेल में शुरू होने पर पूरी तरह से काम करती है) काम नहीं करती है, अगर वह नॉन-डेस्कटॉप वातावरण में चलती है (जिसमें मुझे संदेह है) या कि एक नए ट्यूटोरियल की जरूरत है, क्योंकि अक्टूबर 2016 में रास्पियन में बदलाव हुआ किसी भी पुराने ट्यूटोरियल को अप्रचलित कर दिया। इसके अलावा, चुनौती स्क्रिप्ट को शुरू करने या एक दूसरे से स्वतंत्र रूप से (या कुछ इसी तरह की) शुरू करने में नहीं है, लेकिन दोनों लिंक किए गए हैं ताकि स्क्रिप्ट एक्ससरवर द्वारा बनाए गए प्रदर्शन का उपयोग करेगी।