1 पॉइंट द्वारा GN⁺ 2024-01-01 | 1 टिप्पणियां | WhatsApp पर शेयर करें

SteamOS को कस्टम फोर्क करने का तरीका

  • SteamOS 3("Holo"), Valve Software के पोर्टेबल PC गेमिंग डिवाइस Steam Deck के लिए बनाया गया Arch-आधारित Linux distribution है.
  • SteamOS, नए read-only root file system को inactive partition पर डाउनलोड करके atomic updates करता है.
  • उपयोगकर्ता steamos-devmode चलाकर root file system को unlock कर सकते हैं, pacman database को साफ कर सकते हैं, और एक सामान्य package manager वाला काम करने वाला Linux distribution प्राप्त कर सकते हैं.

SteamOS सिस्टम संरचना

  • SteamOS सिस्टम 8 partitions से बना है, और EFI system partition में stage 1 bootloader और metadata files संग्रहीत रहते हैं.
  • दो A/B partition sets में stage 2 bootloader (GRUB), root file system, और /var partition शामिल होते हैं.
  • एक single home partition भी होता है जो डिस्क की बाकी जगह भरता है.

kernel patch करने का तरीका

  • Valve, SteamOS में काफी modified Linux kernel का उपयोग करता है.
  • kernel source, Valve के pacman mirror में मिल सकता है, और मौजूदा stable image का kernel source अभी online डाउनलोड किया जा सकता है.
  • source tarball का आकार 2.9 GiB है, क्योंकि इसमें पूरा Linux Git tree शामिल है.

root file system को repackage करना

  • root file system को modify करके उपयोगकर्ता की जरूरतों के मुताबिक उसे "repackage" करना संभव है.
  • root file system image, Steam Deck खरीदकर या SteamOS recovery image डाउनलोड करके प्राप्त की जा सकती है.
  • casync का उपयोग करके .castr repository से जरूरी image chunks डाउनलोड किए जा सकते हैं और उन्हें inactive root file system partition पर लिखा जा सकता है.

RAUC bundle बनाना

  • casync repository और blob index बनाने के बाद RAUC bundle बनाया जा सकता है.
  • RAUC, trust स्थापित करने के लिए X.509 certificates का उपयोग करता है, और नया certificate root file system में install करना होगा.
  • RAUC bundle में rootfs.img.raucb और rootfs.img.caibx फाइलें शामिल होनी चाहिए, और इन्हें web server पर upload करना होगा.

update server सेट करना

  • update server को एक JSON file प्रदान करनी होगी, जो image के manifest.json से मेल खाती हो.
  • Caddy configuration का उपयोग करके steamos-atomupd द्वारा QueryUrl और MetaUrl के लिए बनाई गई requests को live.json पर redirect किया जा सकता है.

GN⁺ की राय

  • custom OS का महत्व: यह लेख दिखाता है कि उपयोगकर्ता अपनी जरूरतों के मुताबिक operating system को कैसे customize कर सकते हैं. यह software developers के लिए tailored solutions देने में महत्वपूर्ण है.
  • सीखने की सामग्री के रूप में मूल्य: इस प्रक्रिया के जरिए शुरुआती software engineers, Linux distribution के काम करने के तरीके और उसे customize करने के तरीके सीख सकते हैं.
  • community contribution: इस तरह का knowledge sharing open source community में योगदान देता है, और दूसरे उपयोगकर्ताओं को ऐसे ही projects शुरू करने में मदद कर सकता है.

1 टिप्पणियां

 
GN⁺ 2024-01-01
Hacker News राय
  • सॉफ़्टवेयर/OS को उपयोगकर्ता की इच्छा के अनुसार कस्टमाइज़ करने की गहरी पड़ताल के प्रति उत्साह

    • अच्छा है कि Steam Deck में Tivoization (जब हार्डवेयर निर्माता केवल विशेष सॉफ़्टवेयर चलाने की अनुमति देता है) को लेकर चिंता नहीं है
    • लेख का सबसे दिलचस्प हिस्सा यह उल्लेख था कि Steam Deck, nixpkgs को सपोर्ट करता है (यह डिफ़ॉल्ट रूप से इंस्टॉल नहीं आता, लेकिन पूरे OS को fork किए बिना डिवाइस पर इंस्टॉल किया जा सकता है)
  • पोस्ट का बहुत विस्तार से और दिलचस्प मूल्यांकन

    • व्यक्तिगत रूप से मैं ऐसा काम नहीं करूंगा
    • Linux के साथ मेरा सबसे ज़्यादा काम RaspberryPi के दौर में था, और वह भी मुश्किल से 1%
    • लेखक को बधाई
  • Netscape meteor shower favicon के लिए पुरानी यादें व्यक्त कीं

  • unRaid NAS सर्वर के लिए GPU ऑर्डर किया है ताकि Docker image के ज़रिए Steam Headless लागू किया जा सके

    • Windows laptop पर Moonlight client इस्तेमाल करने की योजना है
    • क्योंकि NAS ज़्यादातर समय idle रहता है, इसलिए यह नया desktop hardware खरीदने से बेहतर लगता है
    • Nvidia कार्ड की power setting को idle पर बनाए रखना ज़रूरी है (शायद nvidia-persistenced कॉल करके संभव हो)
  • SteamOS पर आधारित distributions पहले से मौजूद हैं

    • ChimeraOS PC और controller-आधारित उपयोग के लिए उपयुक्त है, और Steam Deck add-ons सहित पूरी तरह काम करता है
  • A/B upgrades पर राय

    • live distribution इस्तेमाल करना या partition में पुराने version का recovery system इंस्टॉल करना शायद अधिक सरल हो सकता है
    • लेखक ने Arch Linux पर हाल ही में शिफ्ट होने का अनुभव साझा किया और कहा कि वह Valve से अधिक Arch पर भरोसा करता है
    • Arch की package quality, main repository के तेज़ updates, और उपयोगी AUR packages वे कारण हैं जिनकी वजह से वह NixOS से शिफ्ट हुआ
  • Linux के साथ अनुभव बढ़ाने के लिए gaming handheld (Legion Go) इस्तेमाल करने का अनुभव साझा किया

    • Linux सीमित compatibility और लगातार tweaking की ज़रूरत वाला लगता था, इसलिए इससे बचता रहा
    • immutable file system और इस बात को लेकर जिज्ञासा कि पारंपरिक Linux software को root permission कितनी आसानी से दे देता है
    • NixOS इस्तेमाल करने का अनुभव साझा किया: अलग-अलग components को आसानी से आज़मा सकते हैं और न चाहें तो पूरी तरह हटा सकते हैं
    • Jovian community, Valve के SteamOS tarball को GitHub पर tagged commits के रूप में फिर से बनाती है, ताकि Valve कर्मचारियों की तरह source को explore किया जा सके
    • Jovian के ज़रिए NixOS पर SteamOS की अपनी copy इंस्टॉल की जा सकती है
  • bazzite.gg पर AMD hardware में 120hz VRR support और HDR support alpha testing का अनुभव साझा किया

  • यह जानना दिलचस्प लगा कि SteamOS, Arch Linux पर आधारित है

  • अगर Linux PC पर SteamOS चलाने में रुचि है, तो HoloISO की सिफारिश की