•  अनतोरेह-प्रकाश

विंडोज़ को सहने योग्य बनाएं

विंडोज़ को लिनक्स की तरह महसूस कराने के लिए उपकरणों की एक सूची

जबसे मैं WSL के साथ विंडोज़ 10 पर स्विच किया गया मुझे लगा कि मैं सॉफ्टवेयर की एक सूची बनाऊंगा जिसका उपयोग मुझे विंडोज़ को अपने सामान्य लिनक्स वर्कफ़्लो के करीब लाने के लिए करना था। आइए यह स्पष्ट करें कि विंडोज यूआई बेकार है, यह अंदर फंस गया है90s और सब कुछ आपके माउस पॉइंटर से क्लिक और घसीटा जाना चाहिए। मुझे नहीं पता कि यह एक है संस्कृति चीज़ (विंडोज़ देवों को माउस को बहुत पसंद करना चाहिए), या के लिए जनसांख्यिकीय लक्ष्य ("उस चीज़ पर क्लिक करें!" व्याख्या करना आसान है), या के कारण सुरक्षा सर्वोत्तम अभ्यास (यदि हम उपयोगकर्ता को बहुत अधिक नियंत्रण देते हैं, तो मैलवेयर उसका शोषण करेगा) या बस विंडोज शेल तकनीकी ऋण के ढेर से बना है जो उन्नत उपयोगकर्ताओं के लिए कार्यक्षमता जोड़ना कठिन बनाता है। तथ्य यह है कि लिनक्स में साधारण चीजों को विंडोज़ में जटिल समाधान की आवश्यकता होती है।

वर्चुअल डेस्कटॉप

लिनक्स में हर विंडोज़ मैनेजर के पास वर्चुअल डेस्कटॉप का कोई न कोई रूप होता है, विंडोज़ ने हाल ही में W10 के साथ वर्चुअल डेस्कटॉप बनाया है। बात यह है कि लिखने के समय आप केवल हॉटकी के साथ बाएं और दाएं साइकिल चला सकते हैं, और डेस्कटॉप एक्स पर जाने के लिए हॉटकी नहीं हैं। यह है वीडी पुस्तकालय लेकिन मुझे ऐसा सॉफ़्टवेयर नहीं मिला जो इसका उपयोग करता हो, इसके बजाय केवल AHK[1] खराब कार्यान्वयन वाली स्क्रिप्ट जैसे "लूप जब तक हम सही वीडी पर नहीं होते"।

विंडोज़ बिल्ट-इन वर्चुअल डेस्कटॉप के लिए उचित शॉर्टकट की कमी ने मुझे तीसरे पक्ष के सॉफ़्टवेयर का उपयोग करने के लिए मजबूर किया, जिनमें से कई हैं, मैंने चुना डेक्सपॉट जैसा कि यह सभी चीजें करता है जिनकी मुझे आवश्यकता होगी और अधिक (मुझे बस के साथ खुशी होगीgo to X तथाmove window to X शॉर्टकट)। एकमात्र समस्या यह थी कि डेक्सपॉट पहले से ही बाध्य कुंजियों को बांधने में सक्षम नहीं है ... कुछ हद तक एएचके अन्य अनुप्रयोगों द्वारा उपयोग की जाने वाली चाबियों को ओवरराइड करने में सक्षम है, जबकि डेक्सपॉट नहीं करता है, मुझे लगता है कि यह एक अलग विंडोज़ एपीआई पर निर्भर करता है (या [डीएलएल])। वर्कअराउंड उन शॉर्टकट्स को रीमैप करना है जो मैं चाहता था (उदा।Win+1 ) एक मुफ्त शॉर्टकट के साथ जिसे डेक्सपॉट पर सेट किया जा सकता है (उदा।Win+Shift+F1)

कीबोर्ड मैपिंग

पॉवरटॉयज कुंजियों और शॉर्टकट को मैप करने की अनुमति देता है, जैसे कि मैं CapsLock->LeftControl और RightControl->LeftControl को मैप कर सकता हूं। और शॉर्टकट जैसेWin+hjkl तीरों को। बहुत बुराWin+l स्क्रीन लॉक करने के लिए एक विंडोज़ डिफ़ॉल्ट शॉर्टकट है और इसे रीमैप नहीं किया जा सकता है...एक रजिस्ट्री कुंजी शॉर्टकट को ओवरराइड करती है और इसे ठीक करती है...जब तक आप विंडोज़ अपडेट नहीं करते...इसलिए आपको प्रत्येक बूट पर फिक्स लागू करना होगा!

लांचर

पॉवरटॉयज द्वारा प्रदान किया गया ऐप लॉन्चर इसके बजाय काफी सुविधापूर्ण है, KRunner की तुलना में अधिक मेमोरी का उपयोग नहीं करता है और तेज और उत्तरदायी है। एकमात्र शिकायत यह है कि समय-समय पर यह फोकस खो देता है, लेकिन विंडोज़ बीमार (विकृत में) के साथ यह एक समस्या है कि किसी भी समय किस विंडो पर ध्यान केंद्रित किया जाना चाहिए।

खपरैल का छत

मैंने लिनक्स पर बोलबाला से केडीई में स्विच किया, इसलिए मैं एक टाइल वाले विंडोज़ प्रेमी के रूप में ज्यादा नहीं था। Powertoys में FancyZones है जो कि विंडो द्वारा प्रदान की जाने वाली मूलभूत विंडोज़ स्नैप्स पर थोड़ा सुधार है, जैसा कि यह आपको देता है अंतराल तथा लेआउट. फिर भी यह अभी भी सबसे महत्वपूर्ण चीज की कमी है जो टाइलिंग को उपयोगी बनाती है, वह है नियमों मेल खाने वाली विंडो पर लागू करने के लिए, लेकिन इसके लिए वर्चुअल डेस्कटॉप के लिए भी समर्थन की आवश्यकता होगी... और हम पहले ही उनकी वर्तमान स्थिति का उल्लेख कर चुके हैं। तुलना में KWin आपको बहुत ही जटिल परिभाषाओं के साथ विंडोज़ का मिलान करने की अनुमति देता है। FancyZones पूरे सत्र में विंडोज़ की स्थिति को संरक्षित करके नियमों के मुद्दे के आसपास काम करता है, लेकिन मैंने यह जांच नहीं की है कि यह विभिन्न वर्चुअल डेस्कटॉप के साथ कितनी अच्छी तरह काम करता है।

खिड़कियाँ खींचना

विंडोज़ को केवल टाइटलबार से खींचा जा सकता है, और एक अतिरिक्त उपयोगिता शॉर्टकट संयोजन के साथ उन्हें स्थानांतरित करने के लिए उपयोग करने की आवश्यकता है।

सिस्टम मॉनिटर

केडीई के साथ आपके पास सिस्टम जानकारी प्रदर्शित करने के लिए प्लाज्मा विजेट हैं, हालांकि प्लाज्मा विजेट बहुत अधिक मेमोरी का उपभोग करते हैं इसलिए मैंने उनका इतना उपयोग नहीं किया। विंडोज़ के साथ इसके लिए कोई अंतर्निहित उपयोगिता नहीं है, कुछ उपयोगिताओं की कोशिश करने के बाद मैं बस गया ट्रैफिक मॉनिटर जो नेटवर्क, सीपीयू, मेमोरी देता है, और अभी हाल ही में GPU और temps जोड़े गए थे। परिणाम टास्कबार के भीतर प्रदर्शित एक अच्छा लो-प्रोफाइल आयत है:

विंडोज़ के लिए बोनस बिंदु यह है कि मेरा यूपीएस पहचाना जाता है और ट्रे क्षेत्र में दिखाया जाता है, इसलिए अतिरिक्त कॉन्फ़िगरेशन की आवश्यकता नहीं होती है, जबकि लिनक्स में काष्ठफल वहां चालकों की समस्या.

सिस्टम सेवाएं

जब यह लिनक्स कर्नेल में आया तो कई लोगों को सिस्टमड पसंद नहीं आया .. विंडोज के साथ मैंने इसे मिस करना शुरू कर दिया .. विंडोज सर्विसेज वास्तव में उपयोगकर्ताओं की ओर उन्मुख कुछ नहीं है सिस्टम डी की तरह। विंडोज़ में है कार्य अनुसूचक जैसी दिखने वाली चीजों से निपटने के लिएone-shotयूनिट फाइलें, लेकिन फिर से इसका इंटरफ़ेस (या इसकी कमी) भयानक है। हम भाग्यशाली हैं कि हमें विंडोज़ में कस्टम डेमॉन की आवश्यकता नहीं है, क्योंकि हमारे द्वारा उपयोग किए जाने वाले अधिकांश विंडोज़ एप्लिकेशन केवल हैं शुरु होते वक्त चलाएं तर्क की तरह, और अधिक उन्नत विन्यास की आवश्यकता नहीं है। वास्तव में, औजारों के कूड़े के अलावा ( विलाप ) विंडोज़ को एक आधुनिक वातावरण की तरह काम करने के लिए, तब केवल अन्य देशी विंडोज़ अनुप्रयोगों का उपयोग किया जाता है जो ब्राउज़र हैं ( फ़ायर्फ़ॉक्स ) चूंकि डब्लूएसएल के भीतर ब्राउज़र जीपीयू त्वरण खराब है (अच्छी तरह से देशी लिनक्स पर भी ...) और वीडियो प्लेयर ( एमपीवी ..और निश्चित रूप से खेल ...

संकुल

मुझे पसंद नहीं है chocolatey चूंकि इसके लिए व्यवस्थापकीय विशेषाधिकारों की आवश्यकता होती है, इसलिए मैं हमेशा स्कूप पैकेज के लिए सबसे पहले देखता हूं क्योंकि वे उपयोगकर्ता फ़ोल्डर में स्थापित होते हैं, जो अधिक सुविधाजनक और अधिक सुसंगत है, और बैकअप को सरल करता है।

डब्ल्यूएसएल/जी

मुझे हाल ही में विंडोज़ पर स्विच करने के लिए प्रेरित किया गया था डब्ल्यूएसएलजी अपडेट करें। जिसके साथ संकलित मेसा ड्राइवरों की आवश्यकता हैd3d12 के लिए बैकएंड समर्थनopengl . Windows एक समुदाय पूर्वावलोकन ubuntu परत प्रदान करता है, लेकिन मैंने इसे चुना आर्क लाइनक्स चूँकि पहले से ही AUR पैकेज था d3d12 . के साथ मेसा . चूंकि WSL वर्तमान में systemd का समर्थन नहीं करता है, इसलिए मैंने उपयोग करना समाप्त कर दिया पर्यवेक्षक कुछ सेवाओं का प्रबंधन करने के लिए। यह सुनिश्चित करने के लिए कि पर्यवेक्षक सक्रिय है, शेल प्रोफ़ाइल में एक लॉक फ़ाइल के लिए एक चेक है जिसे बनाया जाना चाहिएtmpfs यदि पर्यवेक्षक पहले शुरू किया गया है।

WSL केवल समर्थन करता हैext4 फाइल सिस्टम, अन्य फाइल सिस्टम का उपयोग करने के लिए, आपको विभाजन (या डिस्क) को सीधे WSL VM के अंदर माउंट करना होगा। हालाँकि उन्हें मैन्युअल रूप से माउंट करना होगा प्रशासक के रूप मेंखिड़कियों से। इसे स्वचालित करने के लिए हम टास्क शेड्यूलर का उपयोग कर सकते हैं जो कार्यों को चलाकर यूएसी प्रॉम्प्ट को बायपास करने की अनुमति देता है उच्चतम विशेषाधिकार के साथ . हम एक wsl चला सकते हैं--mount हमारे वांछित डिस्क / विभाजन को माउंट करने के लिए कमांड और फिर लिनक्स के भीतर से फाइल सिस्टम को माउंट करें। क्योंकि मेरा/home/ घुड़सवार में रहता हैbtrfs फाइल सिस्टम मुझे इसे स्वचालित रूप से माउंट करना है, इसलिए हम उपयोग करते हैं/etc/fstab हमारे विभाजन को मैप करने के लिए (द्वाराLABEL ) प्रति/home . क्योंकि हम निक्स का उपयोग करते हैंnix-env हमें अपने निक्स स्टोर को माउंट करने के लिए बाध्य करने की आवश्यकता है/nix प्रत्येक wsl स्टार्टअप पर, और क्योंकि/tmp चालू नहीं हैtmpfs हमें एक ओवरले माउंट बनाना है जो माउंट करता हैtmpfs मौजूदा के ऊपर/tmp निर्देशिका, महत्वपूर्ण फाइलों को संरक्षित करने के लिए, विशेष रूप से X11 फाइलें, जिन्हें X सर्वर से बात करने की आवश्यकता होती है।

ये माउंट एक स्क्रिप्ट के साथ निष्पादित होते हैं, जिसे चलाया जाना चाहिए उपरांत हमने लिनक्स के अंदर डिस्क को माउंट किया है। हमें एक कार्य की आवश्यकता है जो माउंट कार्य पूरा होने के बाद चलता है, और क्योंकि WSL विभिन्न विंडोज़ उपयोगकर्ताओं के लिए अलग-अलग VMs का उपयोग करता है, इसलिए स्क्रिप्ट को उच्चतम विशेषाधिकारों के साथ नहीं चलाया जाना चाहिए (अन्यथा यह व्यवस्थापक VM पर माउंट होगा)।

यह सुनिश्चित करने के लिए कि WSLg काम करता है, हमें यह सुनिश्चित करना होगा कि XDG क्रम डीआईआर सेट है, क्योंकि यह अलग है और (डिफ़ॉल्ट रूप से) पर स्थित है/mnt/wlsg/runtime-dir . इस तरह से वेलैंड लुक के तहत खिड़कियां दिखती हैं, आप देख सकते हैं कि चूंकि वेलैंड विंडो सजावट को कंपोजिटर या एप्लिकेशन द्वारा खींचा जा सकता है, वे आपके जीटीके/क्यूटी थीमिंग की कॉन्फ़िगरेशन रखते हैं, इसलिए आप एक देशी लिनक्स थीम लुकिंग विंडो के साथ समाप्त होते हैं एक विंडोज़ शेल के अंदर...जो पहली बार में थोड़ा विचलित करने वाला है।

टर्मिनल एमुलेटर

लिनक्स पर मैं उपयोग कर रहा था किट्टी , चूंकि यह GPU त्वरण के साथ नए टर्मिनल एमुलेटर में से एक था[2]और कुछ हद तक स्थिर डेमॉन मोड जो एक ही उदाहरण के साथ कई विंडो की अनुमति देता है। हालाँकि, विंडोज़ पर, मैंने कुछ विंडोज़ आधारित टर्मिनलों जैसे कि विंडोज़ टर्मिनल, फ्लुएंट टर्मिनल, wsltty, कॉनमू के साथ डब किया, लेकिन अंततः मैंने स्विच कर लिया वेज़टर्म . अधिक हालिया टर्मिनल होने के बावजूद इसमें वे सभी सुविधाएँ हैं जो आप एक टर्मिनल एमुलेटर से चाहते हैं:

विंडोज़ के साथ मैंने अपने वर्कफ़्लो को भी थोड़ा संशोधित किया है कि मुझे डेमॉन मोड वाले टर्मिनल की आवश्यकता नहीं है जो ड्रॉपडाउन टर्मिनल का उपयोग करके कई अलग-अलग विंडो का समर्थन करता है। वीज़टर्म बनाने के लिए ड्रॉप डाउन कई ड्रॉप-डाउन AHK स्क्रिप्ट की कोशिश करने के बाद, आखिरकार मुझे मिल गया एक जिसने काफी अच्छा काम किया। हालांकि एक बेहतर विकल्प होगा विंडोज़-टर्मिनल-भूकंप, लेकिन मुझे डेक्सपॉट द्वारा प्रबंधित वर्चुअल डेस्कटॉप के साथ दुर्व्यवहार करने में समस्या हुई है, जबकि मिटी-क्वेक-कंसोल डेक्सपॉट वर्चुअल डेस्कटॉप के साथ संगत प्रतीत होता है। सबसे अधिक संभावना है कि जब अंतर्निहित विंडोज वर्चुअल डेस्कटॉप अनुभव में सुधार होगा, तो मैं विंडोज़-टर्मिनल-क्वेक पर स्विच करूंगा। WezTerm भी क्रॉस-प्लेटफ़ॉर्म है जिसका अर्थ है, मैं इसे एक देशी linux स्थापना के साथ उपयोग करना जारी रख सकता हूँ। यह विंडोज + डब्ल्यूएसएल स्विच के लिए वास्तव में भाग्यशाली खोज रहा है, क्योंकि किट्टी अभी तक विंडोज का समर्थन नहीं करता है, और अन्य टर्मिनल विकल्पों में कुछ काफी बड़ी झुंझलाहट थी मैं के साथ समझौता नहीं कर सका.

[1]ऑटोहॉटकी
[2]मुझे टर्मिनल में फिर से GPU त्वरण की आवश्यकता क्यों है?

पोस्ट टैग: